| 1 | Kris KosterPlace 1 · Unattached | — | Unattached | 15:48.76 PR |
| 2 | Brody CraggPlace 2 · Unattached | — | Unattached | 16:43.45 |
| 3 | Tim KellnerPlace 3 · Grade 10 · Rockford | 10 | Rockford | 17:03.41 |
| 4 | Kevin SiekPlace 4 · Unattached | — | Unattached | 17:06.39 |
| 5 | Taylor MrozinskiPlace 5 · Grade 11 · Rockford | 11 | Rockford | 17:15.75 |
| 6 | Connor G. JohnsonPlace 6 · Grade 12 · Rockford | 12 | Rockford | 17:18.87 PR |
| 7 | Tyler PoelPlace 7 · Grade 10 · GR Christian | 10 | GR Christian | 17:22.66 |
| 8 | Stephen HoffmanPlace 8 · Grade 12 · East Grand Rapids | 12 | East Grand Rapids | 17:24.21 |
| 9 | Corey GorgasPlace 9 · Grade 8 · Saugatuck | 8 | Saugatuck | 17:30.76 PR |
| 10 | Phillip PolkowskiPlace 10 · Grade 11 · Rockford | 11 | Rockford | 17:33.27 |
| 11 | Hans LeismanPlace 11 · Grade 12 · GR Christian | 12 | GR Christian | 17:42.05 |
| 12 | Ryan Van OrmanPlace 12 · Grade 10 · GR Christian | 10 | GR Christian | 17:47.78 |
| 13 | Andrew StembaughPlace 13 · Grade 12 · Rockford | 12 | Rockford | 17:49.15 |
| 14 | Keegan SeifertPlace 14 · Grade 9 · Saugatuck | 9 | Saugatuck | 17:52.62 |
| 15 | Rick BauerPlace 15 · Unattached | — | Unattached | 17:55.55 |
| 16 | Jacob VanderRoestPlace 16 · Unattached | — | Unattached | 17:57.37 |
| 16 | Jacob VanderRoestPlace 16 · Grade 10 · SaugatuckUnofficial | 10 | Saugatuck | 17:57.37 |
| 17 | Jim SpringerPlace 17 · Unattached | — | Unattached | 18:00.73 |
| 18 | Josh SchutzenhoferPlace 18 · Grade 10 · Saugatuck | 10 | Saugatuck | 18:04.41 |
| 19 | Sam TerpstraPlace 19 · Grade 9 · GR Christian | 9 | GR Christian | 18:06.04 |
| 20 | Patrick DayPlace 20 · Grade 9 · Rockford | 9 | Rockford | 18:09.68 |
| 21 | Matthew WinklePlace 21 · Grade 9 · GR Christian | 9 | GR Christian | 18:10.76 |
| 22 | Daniel MacalkaPlace 22 · Unattached | — | Unattached | 18:13.01 |
| 23 | Oliver BrittPlace 23 · Grade 10 · Holland Black River | 10 | Holland Black River | 18:16.53 PR |
| 24 | William VanDykenPlace 24 · Grade 12 · GR Christian | 12 | GR Christian | 18:17.24 |
| 25 | Jonathan YepezPlace 25 · Grade 9 · East Grand Rapids | 9 | East Grand Rapids | 18:17.60 |
| 26 | Matthew BlankerPlace 26 · Grade 10 · GR Christian | 10 | GR Christian | 18:20.62 |
| 27 | Evan DubeyPlace 27 · Grade 9 · Rockford | 9 | Rockford | 18:27.01 |
| 28 | Kameron BetzPlace 28 · Grade 9 · GR Christian | 9 | GR Christian | 18:30.18 |
| 29 | Noah CarpenterPlace 29 · Unattached | — | Unattached | 18:30.88 |
| 30 | Aidan JonesPlace 30 · Grade 8 · Holland Black River | 8 | Holland Black River | 18:36.79 PR |
| 31 | Micah VanderkooiPlace 31 · Grade 7 · Grand Rapids South Christian | 7 | Grand Rapids South Christian | 18:37.48 PR |
| 32 | James NykampPlace 32 · Grade 10 · GR South Christian | 10 | GR South Christian | 18:37.76 |
| 33 | Timothy NelsonPlace 33 · Grade 9 · GR Christian | 9 | GR Christian | 18:40.16 |
| 34 | Eric TerHaarPlace 34 · Grade 10 · Zeeland West | 10 | Zeeland West | 18:41.25 |
| 35 | Jack TheutPlace 35 · Grade 10 · East Grand Rapids | 10 | East Grand Rapids | 18:41.56 |
| 36 | Maccoy KauffmanPlace 36 · Grade 11 · Rockford | 11 | Rockford | 18:44.89 |
| 37 | Reece DiGiovannaPlace 37 · Grade 11 · GR Catholic Central | 11 | GR Catholic Central | 18:48.83 PR |
| 38 | Josue VasquezPlace 38 · Unattached | — | Unattached | 18:50.00 |
| 39 | Isaac LangelandPlace 39 · Grade 10 · Holland Black River | 10 | Holland Black River | 18:51.67 |
| 40 | Connor DenBleykerPlace 40 · Grade 9 · Holland Black River | 9 | Holland Black River | 18:53.62 |
| 41 | Grant NelsonPlace 41 · Grade 11 · Zeeland West | 11 | Zeeland West | 18:53.89 |
| 42 | Sam GuikemaPlace 42 · Grade 11 · GR South Christian | 11 | GR South Christian | 18:55.08 |
| 43 | Charlie KornoeljePlace 43 · Grade 10 · GR Christian | 10 | GR Christian | 18:55.40 |
| 44 | Sam LewisPlace 44 · Grade 12 · Rockford | 12 | Rockford | 19:00.22 |
| 45 | Ethan MorrissonPlace 45 · Grade 10 · Rockford | 10 | Rockford | 19:01.56 |
| 46 | Zach HoekstraPlace 46 · Grade 9 · Grandville Calvin Christian | 9 | Grandville Calvin Christian | 19:04.70 |
| 47 | Taylor EdgecombPlace 47 · Grade 11 · Rockford | 11 | Rockford | 19:05.67 |
| 48 | David BylPlace 48 · Grade 11 · GR Christian | 11 | GR Christian | 19:07.91 |
| 49 | Thomas PaveyPlace 49 · Grade 11 · GR Catholic Central | 11 | GR Catholic Central | 19:08.27 PR |
| 50 | Dakota RiemersmaPlace 50 · Grade 7 · Allendale | 7 | Allendale | 19:08.77 PR |
| 51 | Dane SegardPlace 51 · Grade 9 · Rockford | 9 | Rockford | 19:10.40 |
| 52 | Sam SharnasPlace 52 · Grade 8 · Holland Black River | 8 | Holland Black River | 19:15.33 PR |
| 53 | Will MerchunPlace 53 · Grade 9 · Rockford | 9 | Rockford | 19:15.93 |
| 54 | Jack MerchunPlace 54 · Grade 9 · Rockford | 9 | Rockford | 19:16.39 |
| 55 | Zachary VernumPlace 55 · Grade 12 · GR Catholic Central | 12 | GR Catholic Central | 19:17.92 PR |
| 56 | Ayden BolthousePlace 56 · Grade 10 · Spring Lake | 10 | Spring Lake | 19:19.16 |
| 57 | Noah BrininstoolPlace 57 · Unattached | — | Unattached | 19:19.49 |
| 58 | Nick HeelanPlace 58 · Grade 10 · Saugatuck | 10 | Saugatuck | 19:24.57 |
| 59 | Christian PostPlace 59 · Grade 10 · Saugatuck | 10 | Saugatuck | 19:25.37 |
| 60 | Will ZornPlace 60 · Grade 12 · Zeeland West | 12 | Zeeland West | 19:25.99 PR |
| 61 | Corbin BlinkPlace 61 · Grade 9 · Saugatuck | 9 | Saugatuck | 19:27.25 |
| 62 | Alex SearlPlace 62 · Grade 10 · Rockford | 10 | Rockford | 19:28.18 |
| 63 | Logan HenningPlace 63 · Grade 9 · Holland Black River | 9 | Holland Black River | 19:29.88 |
| 64 | Benjamin SmartPlace 64 · Grade 12 · Zeeland West | 12 | Zeeland West | 19:31.32 |
| 65 | Ryder HelmsPlace 65 · Unattached | — | Unattached | 19:31.64 |
| 66 | Connor WardPlace 66 · Grade 9 · Spring Lake | 9 | Spring Lake | 19:32.43 PR |
| 67 | Tommy AndrewPlace 67 · Grade 10 · Holland Black River | 10 | Holland Black River | 19:33.03 PR |
| 68 | Jacob MurrayPlace 68 · Grade 9 · GR Christian | 9 | GR Christian | 19:33.54 |
| 69 | Will BrownPlace 69 · Grade 9 · Spring Lake | 9 | Spring Lake | 19:34.11 |
| 70 | Elliott ShoemakerPlace 70 · Unattached | — | Unattached | 19:34.60 |
| 71 | Corey ShaferPlace 71 · Grade 12 · GR Catholic Central | 12 | GR Catholic Central | 19:35.57 |
| 72 | Alexander BascomPlace 72 · Grade 12 · Holland Black River | 12 | Holland Black River | 19:37.79 |
| 73 | Dillon LuymesPlace 73 · Grade 11 · GR Christian | 11 | GR Christian | 19:39.88 |
| 74 | Richard KettelPlace 74 · Coaches | — | Coaches | 19:42.90 |
| 75 | Sean BoysenPlace 75 · Grade 11 · Holland Black River | 11 | Holland Black River | 19:46.82 |
| 76 | Kevin BrownPlace 76 · Grade 11 · GR Catholic Central | 11 | GR Catholic Central | 19:47.16 |
| 77 | Logan JaglowskiPlace 77 · Grade 9 · GR Catholic Central | 9 | GR Catholic Central | 19:48.88 |
| 78 | Chris WalstraPlace 78 · Grade 12 · GR South Christian | 12 | GR South Christian | 19:49.82 PR |
| 79 | Ethan SchreurPlace 79 · Grade 10 · Zeeland West | 10 | Zeeland West | 19:52.21 |
| 80 | River FocoPlace 80 · Grade 9 · Zeeland West | 9 | Zeeland West | 19:52.91 |
| 81 | Eric SanderPlace 81 · Grade 12 · GR Catholic Central | 12 | GR Catholic Central | 19:55.52 PR |
| 82 | Austin VeelePlace 82 · Grade 11 · Zeeland West | 11 | Zeeland West | 19:56.95 |
| 83 | Josh OlrichPlace 83 · Grade 12 · Spring Lake | 12 | Spring Lake | 19:57.25 PR |
| 84 | Ethan WoltersPlace 84 · Grade 9 · Zeeland West | 9 | Zeeland West | 19:59.39 |
| 85 | Jamie HartgesPlace 85 · Coaches | — | Coaches | 20:03.19 |
| 86 | Isaak KrantzPlace 86 · Grade 9 · GR Catholic Central | 9 | GR Catholic Central | 20:03.58 |
| 87 | Austin KanisPlace 87 · Grade 10 · GR Christian | 10 | GR Christian | 20:03.90 |
| 88 | Bryce SawyerPlace 88 · Unattached | — | Unattached | 20:07.05 |
| 89 | Henry AustinPlace 89 · Grade 8 · Allendale | 8 | Allendale | 20:09.35 PR |
| 90 | Charlie CramptonPlace 90 · Grade 11 · GR Catholic Central | 11 | GR Catholic Central | 20:09.71 |
| 91 | Cody VongprachanhPlace 91 · Grade 12 · Zeeland West | 12 | Zeeland West | 20:10.06 PR |
| 92 | Keegan MacGeorgePlace 92 · Unattached | — | Unattached | 20:10.86 |
| 93 | Corey SteinPlace 93 · Unattached | — | Unattached | 20:12.83 |
| 94 | Aaron ZuverinkPlace 94 · Grade 11 · GR South Christian | 11 | GR South Christian | 20:13.21 |
| 95 | Keegan BussellPlace 95 · Grade 12 · GR Catholic Central | 12 | GR Catholic Central | 20:13.58 PR |
| 96 | Michael PattersonPlace 96 · Grade 9 · GR Christian | 9 | GR Christian | 20:14.40 |
| 97 | Sebastian LangenbachPlace 97 · Grade 9 · GR Catholic Central | 9 | GR Catholic Central | 20:14.90 |
| 98 | Nick LauingerPlace 98 · Grade 9 · Spring Lake | 9 | Spring Lake | 20:17.51 |
| 99 | Eric LastfogelPlace 99 · Grade 9 · GR Catholic Central | 9 | GR Catholic Central | 20:23.59 |
| 100 | Zach HamlinPlace 100 · Unattached | — | Unattached | 20:26.27 |
| 101 | Hunter FocoPlace 101 · Unattached | — | Unattached | 20:26.58 |
| 102 | David TuttlePlace 102 · Grade 11 · GR South Christian | 11 | GR South Christian | 20:26.88 |
| 103 | Qori NelsonPlace 103 · Grade 9 · Grandville Calvin Christian | 9 | Grandville Calvin Christian | 20:32.12 |
| 104 | Sam BraakPlace 104 · Unattached | — | Unattached | 20:35.98 |
| 105 | Evan LounsburyPlace 105 · Grade 10 · Spring Lake | 10 | Spring Lake | 20:39.85 |
| 106 | Joseph HamiltonPlace 106 · Grade 10 · GR Catholic Central | 10 | GR Catholic Central | 20:40.12 PR |
| 107 | Alex OsterbaanPlace 107 · Grade 11 · GR Christian | 11 | GR Christian | 20:43.60 |
| 108 | Matt CassarPlace 108 · Grade 11 · Spring Lake | 11 | Spring Lake | 20:47.67 |
| 109 | Benjamin MunozPlace 109 · Unattached | — | Unattached | 20:48.20 |
| 110 | Henry KauffmanPlace 110 · Grade 9 · Rockford | 9 | Rockford | 20:48.57 |
| 111 | Jon ScheidererPlace 111 · Grade 9 · Saugatuck | 9 | Saugatuck | 20:49.05 PR |
| 112 | David VasquezPlace 112 · Grade 9 · Grandville Calvin Christian | 9 | Grandville Calvin Christian | 20:50.32 |
| 113 | James KleinPlace 113 · Grade 9 · GR Catholic Central | 9 | GR Catholic Central | 20:51.09 |
| 114 | Ringo JoonPlace 114 · Unattached | — | Unattached | 20:53.76 |
| 115 | Danny FroumisPlace 115 · Grade 9 · Rockford | 9 | Rockford | 20:54.45 PR |
| 116 | Robby JansenPlace 116 · Grade 9 · GR Christian | 9 | GR Christian | 20:57.75 |
| 117 | Michael SepulvedaPlace 117 · Grade 12 · Grand River Prep | 12 | Grand River Prep | 21:02.38 |
| 118 | Sam ZylstraPlace 118 · Grade 9 · Holland Black River | 9 | Holland Black River | 21:04.83 |
| 119 | Zach SumeyPlace 119 · Grade 12 · GR Christian | 12 | GR Christian | 21:09.51 |
| 120 | Jared VandenboschPlace 120 · Grade 12 · Zeeland West | 12 | Zeeland West | 21:11.01 |
| 121 | Jacob DoerrPlace 121 · Grade 12 · Spring Lake | 12 | Spring Lake | 21:11.36 |
| 122 | Johnny DPlace 122 · Michiana Timing | — | Michiana Timing | 21:12.03 |
| 123 | Morrison HatlenPlace 123 · Grade 11 · Holland Black River | 11 | Holland Black River | 21:12.95 PR |
| 124 | Caleb SwenorPlace 124 · Grade 9 · Spring Lake | 9 | Spring Lake | 21:19.14 |
| 125 | Chris JenkinsPlace 125 · Grade 8 · Calvin Christian | 8 | Calvin Christian | 21:35.08 PR |
| 126 | Alex RuterPlace 126 · Grade 11 · Spring Lake | 11 | Spring Lake | 21:38.33 |
| 127 | Colt SeeleyPlace 127 · Grade 12 · Allendale | 12 | Allendale | 21:38.59 |
| 128 | Sammy McNeillPlace 128 · Grade 10 · Grand River Prep | 10 | Grand River Prep | 21:40.81 |
| 129 | Kees VanLierePlace 129 · Grade 11 · GR Christian | 11 | GR Christian | 21:42.48 |
| 130 | Hayden BarkerPlace 130 · Grade 6 · Allendale | 6 | Allendale | 21:44.10 PR |
| 131 | Micah DeMassPlace 131 · Unattached | — | Unattached | 21:50.75 |
| 132 | Christian StapertPlace 132 · Grade 10 · GR Christian | 10 | GR Christian | 21:52.06 |
| 133 | Jeremy BosPlace 133 · Unattached | — | Unattached | 21:52.86 |
| 134 | Josiah StifflerPlace 134 · Grade 9 · Spring Lake | 9 | Spring Lake | 21:57.57 PR |
| 135 | Will BakranPlace 135 · Grade 8 · Allendale | 8 | Allendale | 22:05.60 PR |
| 136 | Kevin AardemaPlace 136 · Unattached | — | Unattached | 22:08.16 |
| 137 | Maxwell McQuearyPlace 137 · Grade 10 · Saugatuck | 10 | Saugatuck | 22:10.14 |
| 138 | Quinn AllchinPlace 138 · Grade 8 · East Grand Rapids | 8 | East Grand Rapids | 22:16.99 PR |
| 139 | Kenny OverbeyPlace 139 · Grade 11 · Zeeland West | 11 | Zeeland West | 22:18.75 PR |
| 140 | Isaac LiangPlace 140 · Grade 9 · GR Christian | 9 | GR Christian | 22:25.48 PR |
| 141 | Peter JacksonPlace 141 · Unattached | — | Unattached | 22:28.58 |
| 142 | Saiko Jawo-SmallaPlace 142 · Grade 12 · Zeeland West | 12 | Zeeland West | 22:30.07 |
| 143 | Zach TimmerPlace 143 · Grade 10 · Allendale | 10 | Allendale | 22:50.60 |
| 144 | Josh PullenPlace 144 · Grade 7 · East Grand Rapids | 7 | East Grand Rapids | 22:51.67 PR |
| 145 | Nick WestendorpPlace 145 · Grade 10 · Grand River Prep | 10 | Grand River Prep | 22:59.53 |
| 146 | Casen ArmstrongPlace 146 · Unattached | — | Unattached | 23:03.13 |
| 147 | Osvaldo MayorgaPlace 147 · Unattached | — | Unattached | 23:06.82 |
| 148 | Caleb RidderingPlace 148 · Grade 8 · Calvin Christian | 8 | Calvin Christian | 23:07.47 PR |
| 149 | Troy MeekhofPlace 149 · Grade 11 · Grandville Calvin Christian | 11 | Grandville Calvin Christian | 23:09.90 PR |
| 150 | Nic DeweyPlace 150 · Grade 10 · Allendale | 10 | Allendale | 23:10.49 |
| 151 | Jeremy FabrisPlace 151 · Unattached | — | Unattached | 23:10.82 |
| 152 | Berkeley GarvetinkPlace 152 · Unattached | — | Unattached | 23:13.64 |
| 153 | Micah FernandoPlace 153 · Grade 9 · Grand River Prep | 9 | Grand River Prep | 23:14.36 |
| 154 | AJ CarrellPlace 154 · Grade 10 · Allendale | 10 | Allendale | 23:18.28 |
| 155 | Ajilan PotterPlace 155 · Grade 11 · Grand River Prep | 11 | Grand River Prep | 23:24.25 |
| 156 | Peter CuazPlace 156 · Grade 6 · GR FIRE | 6 | GR FIRE | 23:24.50 PR |
| 157 | Daniel MylesPlace 157 · Grade 9 · GR West Catholic | 9 | GR West Catholic | 23:27.30 |
| 158 | Jacob BryantPlace 158 · Grade 10 · Spring Lake | 10 | Spring Lake | 23:27.61 PR |
| 159 | Joe NaganPlace 159 · Unattached | — | Unattached | 23:30.65 |
| 160 | Nathan WalkerPlace 160 · Grade 10 · Grand River Prep | 10 | Grand River Prep | 23:54.23 |
| 161 | Jacob HeyboerPlace 161 · Grade 7 · Calvin Christian | 7 | Calvin Christian | 24:00.46 PR |
| 162 | Thomas Vander WoudePlace 162 · Grade 11 · GR Christian | 11 | GR Christian | 24:03.70 |
| 163 | Hendrick NykampPlace 163 · Grade 6 · Grand Rapids South Christian | 6 | Grand Rapids South Christian | 24:04.04 PR |
| 164 | Brendan MylesPlace 164 · Grade 11 · GR West Catholic | 11 | GR West Catholic | 24:10.86 PR |
| 165 | Rasaan GrandersonPlace 165 · Grade 9 · GR Christian | 9 | GR Christian | 24:21.77 |
| 166 | Nick StormerPlace 166 · Grade 10 · Saugatuck | 10 | Saugatuck | 24:49.93 |
| 167 | George SipesPlace 167 · Unattached | — | Unattached | 25:09.31 |
| 168 | Jack WebsterPlace 168 · Unattached | — | Unattached | 25:10.47 |
| 169 | Liam KuhlmannPlace 169 · Unattached | — | Unattached | 25:11.77 |
| 170 | Lance FedewaPlace 170 · Unattached | — | Unattached | 25:20.14 |
| 171 | Thomas MeyerPlace 171 · Grade 6 · Allendale | 6 | Allendale | 25:25.97 PR |
| 172 | Sean McCarthyPlace 172 · Grade 9 · GR Christian | 9 | GR Christian | 25:31.17 |
| 173 | Andrew ZoncaPlace 173 · Grade 9 · Spring Lake | 9 | Spring Lake | 26:26.35 |
| 174 | Diego UlloaPlace 174 · Grade 10 · Grand River Prep | 10 | Grand River Prep | 26:47.24 |
| 175 | Misael Martinez VasquezPlace 175 · Grade 9 · Grandville Calvin Christian | 9 | Grandville Calvin Christian | 27:48.62 |
| 176 | Bartt KuhlmannPlace 176 · Unattached | — | Unattached | 27:48.90 |
| 177 | Zack BandstraPlace 177 · Grade 10 · Spring Lake | 10 | Spring Lake | 31:56.14 |
| 178 | Kameron KuizerPlace 178 · Unattached | — | Unattached | 31:56.39 |
| 179 | Connor DenningPlace 179 · Unattached | — | Unattached | 31:56.63 |