| Place | Bib | Name | Sex | Age | Club | Time | Pace |
|---|---|---|---|---|---|---|---|
| 1 | 454 | Ethan Fadden | M | 16 | Sentinel Striders | 17:08 | 5:31 |
| 2 | 323 | Marco Bussone | M | 16 | New England Elite Track Club A | 17:31 | 5:39 |
| 3 | 322 | Dylan Brenn | M | 15 | New England Elite Track Club A | 17:35 | 5:40 |
| 4 | 457 | Noah Vanhorn | M | 14 | Sentinel Striders | 17:54 | 5:46 |
| 5 | 146 | Matthew Giardina | M | 15 | Nashua PAL Striders B | 17:59 | 5:48 |
| 6 | 145 | Micah Dunsmoor | M | 15 | Nashua PAL Striders B | 18:04 | 5:49 |
| 7 | 327 | Brock James | M | 15 | New England Elite Track Club A | 18:12 | 5:52 |
| 8 | 453 | Matthew Donahue | M | 16 | Sentinel Striders | 18:18 | 5:54 |
| 9 | 398 | Gareth Vos | M | 15 | Riptide Running Cape Cod | 18:20 | 5:54 |
| 10 | 289 | Spencer Paine | M | 14 | New Canaan Blazers | 18:20 | 5:54 |
| 11 | 397 | William Crowell Jr | M | 15 | Riptide Running Cape Cod | 18:28 | 5:57 |
| 12 | 324 | James Cognata | M | 16 | New England Elite Track Club A | 18:36 | 6:00 |
| 13 | 150 | Connor Theodore | M | 16 | Nashua PAL Striders A | 18:40 | 6:01 |
| 14 | 144 | Nathan Beauregard | M | 16 | Nashua PAL Striders A | 18:47 | 6:03 |
| 15 | 326 | Jake Haley | M | 16 | New England Elite Track Club A | 18:56 | 6:06 |
| 16 | 148 | Armand Prescott | M | 16 | Nashua PAL Striders A | 19:11 | 6:11 |
| 17 | 287 | Ryan Boulanger | M | 15 | New Canaan Blazers | 19:15 | 6:12 |
| 18 | 147 | Garrett Griego | M | 16 | Nashua PAL Striders A | 19:28 | 6:16 |
| 19 | 396 | Tanner Agurkis | M | 16 | Riptide Running Cape Cod | 19:50 | 6:23 |
| 20 | 149 | Kai Sewhuk-Thomas | M | 15 | Nashua PAL Striders A | 19:58 | 6:26 |
| 21 | 329 | Nathan Mikulsky | M | 15 | New England Elite Track Club A | 20:54 | 6:44 |
| 22 | 328 | Ray Kwiatek | M | 15 | New England Elite Track Club B | 21:32 | 6:56 |