1 | 54 | Evart,
MI - Team Time (1st 5) 1:27:36.0 | Spread (1st 5) 1:50.7 |
| 3, 5, 6, 15, 25, (34), (36) |
| Josh Woods, Austin Hamilton, Nathan Woods, Alex Hamilton, Parker Henry, (Jacob Quist), (Tanner Ryan) |
| 16:51.6, 16:59.2, 17:11.7, 17:51.2, 18:42.3, (19:13.8), (19:17.7) |
2 | 65 | Holton,
MI - Team Time (1st 5) 1:28:06.1 | Spread (1st 5) 2:52.4 |
| 1, 2, 8, 23, 31, (41), (55) |
| Jacob Tanner, Kyler Korstanje, Kevin Slowik, Jasman Sidhu, Nathan Slowik, (Drew Trygstad), (Kyle Wildfong) |
| 16:19.2, 16:46.6, 17:14.0, 18:34.7, 19:11.6, (19:25.5), (20:20.4) |
3 | 84 | Hesperia,
MI - Team Time (1st 5) 1:30:32.4 | Spread (1st 5) 1:23.2 |
| 10, 11, 17, 20, 26, (27), (44) |
| Collin Nielsen, Kyle Venne, Zach Young, Jeremiah Hasty, Connor Baird, (Luke Kruppe), (Chris Stapel) |
| 17:29.2, 17:32.0, 18:06.8, 18:32.0, 18:52.4, (18:54.8), (19:44.3) |
4 | 95 | Walkerville,
MI - Team Time (1st 5) 1:30:11.1 | Spread (1st 5) 3:14.2 |
| 4, 7, 9, 22, 53, (66), (68) |
| Perrin Kirwin, Tyler Sheehy, Shane Achterhof, Dillon Brown, Alex Sheehy, (Diego Rivera), (Gabe Maynard Adams) |
| 16:57.9, 17:12.0, 17:15.0, 18:34.1, 20:12.1, (22:02.7), (22:09.7) |
5 | 104 | Muskegon Western Mich. Christian,
MI - Team Time (1st 5) 1:32:10.9 | Spread (1st 5) 1:10.6 |
| 12, 19, 21, 24, 28, (35), (43) |
| Eli Rotman, Jack Zuidema, Andrew Plaisier, Brandyn Gould, Kyle Morris, (Ben Garretson), (Caleb Croff) |
| 17:45.9, 18:16.1, 18:33.6, 18:38.8, 18:56.5, (19:15.4), (19:42.0) |
6 | 140 | Mason County Eastern,
MI - Team Time (1st 5) 1:34:00.4 | Spread (1st 5) 1:38.5 |
| 13, 18, 30, 37, 42, (45), (65) |
| Abe Shoup, Mason Calleson, Mason Saya, Daniel Knizacky, Preston Kelley, (Ben Cossette), (Joshua Manier) |
| 17:48.4, 18:13.3, 19:11.0, 19:20.8, 19:26.9, (19:49.3), (22:01.6) |
7 | 179 | White Cloud,
MI - Team Time (1st 5) 1:35:57.6 | Spread (1st 5) 2:41.3 |
| 14, 16, 40, 52, 57, (71), (74) |
| Adrian Rodriguez, Aramis La Clair, Jared Elder, Cameron Karnes, Conner Dakin, (Reginald Richmond), (Conner LaClair) |
| 17:51.0, 18:01.8, 19:24.1, 20:08.4, 20:32.3, (22:26.1), (23:02.6) |
8 | 189 | Muskegon Catholic Central,
MI - Team Time (1st 5) 1:37:04.3 | Spread (1st 5) 43.8 |
| 32, 33, 38, 39, 47, (51), (60) |
| Ryan Inglat, Jared Dugener, Andre' Watson, Jack DeLong, Seth Arends, (Cole Michelli), (Zhen Ziang) |
| 19:12.0, 19:12.4, 19:21.7, 19:22.4, 19:55.8, (20:06.1), (20:48.0) |
9 | 238 | Pentwater,
MI - Team Time (1st 5) 1:40:00.7 | Spread (1st 5) 1:30.0 |
| 29, 46, 50, 54, 59, (63), (73) |
| Max Stoneman, Seth Davila, Iain Stewart, Mitchell Smith, Jake Quinn, (Julien Nyberg), (Dean Bromley) |
| 19:10.1, 19:51.5, 20:02.3, 20:16.7, 20:40.1, (21:46.4), (22:47.6) |
10 | 301 | Tri-unity Christian,
MI - Team Time (1st 5) 1:46:00.2 | Spread (1st 5) 2:12.1 |
| 48, 57, 61, 67, 68, (70), (72) |
| Bennett Sinner, Zach Richards, Jarred Baeder, Jayce Kaman, Trevor Markoski, (Efrin Heath), (Cam Eerdmans) |
| 19:57.6, 20:32.3, 21:16.2, 22:04.4, 22:09.7, (22:16.8), (22:29.1) |
11 | 306 | Big Rapids Crossroads Academy,
MI - Team Time (1st 5) 1:47:25.2 | Spread (1st 5) 3:28.2 |
| 49, 56, 62, 64, 75, (76), (77) |
| Jaden Gallentine, Xander Wahl, Keegan McKinnon, Ethan Davis, Caleb Buys, (Sam Venema), (Casey Gabalis) |
| 19:59.0, 20:20.9, 21:45.5, 21:52.6, 23:27.2, (24:43.9), (30:13.0) |