1 | 57 | Kalamazoo Christian, MI - Team Time (1st 5) 1:30:59.7 | Spread (1st 5) 1:30.6 |
| 3, 5, 6, 19, 24, (34), (65) |
| Kyle Miedema, Isaac Bos, Anders Bogard, Sam Offringa, Nathan Koetje, (Josh Bouma), (Logan Holewa) |
| 17:36.6, 17:46.2, 17:51.3, 18:38.4, 19:07.2, (19:49.1), (21:26.7) |
2 | 66 | Gobles, MI - Team Time (1st 5) 1:32:13.7 | Spread (1st 5) 42.1 |
| 8, 8, 12, 16, 22, (29), (43) |
| Justin Chilla, Josh Paladi, Mickey Kohlert, Nile Devers, Ross Thorpe, (Trenton Litchfield), (Cesar Martinez) |
| 18:11.8, 18:11.8, 18:21.9, 18:34.3, 18:53.9, (19:17.4), (20:05.2) |
3 | 107 | Mendon, MI - Team Time (1st 5) 1:33:58.8 | Spread (1st 5) 3:13.5 |
| 2, 10, 18, 26, 51, (71) |
| Charlie Newburry, Dakota Ames, Colin Steinberger, Jacob Dudley, Troy Raschke, (Dahntae Bailey) |
| 17:20.8, 18:16.2, 18:38.0, 19:09.5, 20:34.3, (22:06.8) |
4 | 120 | St Philip Catholic Central, MI - Team Time (1st 5) 1:34:39.0 | Spread (1st 5) 3:56.3 |
| 1, 4, 15, 38, 62, (68), (78) |
| Hunter Finnila, Ben Rutherford, Diego Campos, Spencer Saint, Henry Saint, (Jacob Thome), (Joey Janofski) |
| 17:18.2, 17:44.4, 18:27.1, 19:54.8, 21:14.5, (21:50.0), (23:14.9) |
5 | 132 | Lawrence, MI - Team Time (1st 5) 1:36:14.1 | Spread (1st 5) 1:50.7 |
| 7, 11, 33, 39, 42, (70) |
| Isaiah Beiter, Alan Macyauski, Trever Norg, Mauricio Mancera, Brandon Lopez, (Clay Beal) |
| 18:10.3, 18:17.8, 19:47.5, 19:57.5, 20:01.0, (22:05.9) |
6 | 152 | Athens, MI - Team Time (1st 5) 1:37:11.7 | Spread (1st 5) 2:06.9 |
| 13, 25, 30, 35, 49, (52), (56) |
| Job Hall, Riley Howard, Damon Knowles, Ben Korn, Carter Waybrant, (Gage Hadley), (Luke Jerome) |
| 18:22.7, 19:08.6, 19:20.2, 19:50.6, 20:29.6, (20:35.2), (20:51.2) |
7 | 153 | Marcellus, MI - Team Time (1st 5) 1:37:13.3 | Spread (1st 5) 1:07.9 |
| 20, 27, 31, 35, 40, (45), (72) |
| Wyatt Haas, Alex Austin, Connor Hartline, Andrew Pachay, Zach Shelton, (Kyle McKenzie), (Jaxon Vantilburg) |
| 18:50.5, 19:13.1, 19:20.7, 19:50.6, 19:58.4, (20:08.9), (22:06.9) |
8 | 209 | Colon, MI - Team Time (1st 5) 1:40:19.2 | Spread (1st 5) 1:54.5 |
| 23, 28, 48, 53, 57, (59), (74) |
| Austin Stoll, Joshua West, Isaiah Fellers, Ryan Bower, Kodey Dovey, (Andrew Stoll), (Michael Barkman) |
| 19:00.0, 19:16.4, 20:27.4, 20:40.9, 20:54.5, (21:08.0), (22:34.7) |
9 | 224 | Eau Claire, MI - Team Time (1st 5) 1:41:15.2 | Spread (1st 5) 2:41.8 |
| 21, 41, 46, 50, 66, (75), (80) |
| Rigoberto Andres, David Mandujano, Cristian Banda, Adam Blankenship, Anthony Perkins, (Jonathon Capula), (Nathan Borr) |
| 18:53.3, 19:59.9, 20:16.9, 20:30.0, 21:35.1, (22:36.4), (32:37.6) |
10 | 230 | Kalamazoo Hackett, MI - Team Time (1st 5) 1:45:48.2 | Spread (1st 5) 8:07.4 |
| 17, 32, 44, 58, 79 |
| Alex Leonard, Michael Sirotti, Andrew MacKay, Gabe Bresnahan, Michael Thompson |
| 18:35.3, 19:21.5, 20:06.1, 21:02.6, 26:42.7 |
11 | 243 | Cassopolis Ross Beatty, MI - Team Time (1st 5) 1:42:51.2 | Spread (1st 5) 4:08.1 |
| 14, 47, 54, 55, 73, (76), (77) |
| Robert Ward, Aidan Ward, A. J. Evans, William Westphal, Ben Gillesby, (Galen Stahl), (Andrew Rininger) |
| 18:23.5, 20:21.0, 20:46.8, 20:48.3, 22:31.6, (23:08.6), (23:10.0) |
12 | 285 | White Pigeon, MI - Team Time (1st 5) 1:44:57.6 | Spread (1st 5) 1:33.0 |
| 37, 60, 61, 63, 64, (67), (69) |
| Evan Atherton, Paul Schelstraete, Luke Schelstraete, Kobe Yoder, Chris Bontrager, (Yzack Hagen), (Blaine Shafer) |
| 19:53.4, 21:09.0, 21:10.8, 21:18.0, 21:26.4, (21:49.4), (21:55.2) |