1 | 46 | Potterville,
MI - Team Time (1st 5) 1:25:57.5 | Spread (1st 5) 1:38.8 |
| 3, 4, 6, 7, 26, (40), (44) |
| Norman Emineth, Tyler Larson, Kyle Hardy, Sam Traver, Andrew Karttunen, (Alec Badgley), (Matt Miller) |
| 16:45.7, 16:49.7, 16:56.8, 17:00.8, 18:24.5, (18:51.6), (18:55.2) |
2 | 59 | Saugatuck,
MI - Team Time (1st 5) 1:26:29.3 | Spread (1st 5) 2:27.6 |
| 1, 2, 10, 19, 27, (36), (38) |
| Sean Kelly, Zach Kerr, Clayton Springer, Galib Braschler, Michael Granzotto, (Thomas Timmerman), (Sam Freestone) |
| 16:00.3, 16:24.9, 17:32.2, 18:04.0, 18:27.9, (18:46.0), (18:46.4) |
3 | 75 | Holland Black River,
MI - Team Time (1st 5) 1:28:32.2 | Spread (1st 5) 1:27.0 |
| 5, 9, 17, 20, 24, (29), (50) |
| Cameron Jones, Tyler Spencley, Joseph Britt, Ruben Rodriguez, Connor Stubbs, (Michael Young), (David Olgers) |
| 16:52.4, 17:18.8, 17:56.5, 18:05.1, 18:19.4, (18:29.6), (19:24.8) |
4 | 139 | St Philip Catholic Central,
MI - Team Time (1st 5) 1:31:57.6 | Spread (1st 5) 1:37.2 |
| 11, 17, 25, 41, 45, (49), (57) |
| Caleb Andrews, Nicholas Newton, Jay Luoma, John Sweeney, Daniel Riggs, (Tyler Searls), (Ethan Rutherford) |
| 17:34.7, 17:56.5, 18:22.0, 18:52.5, 19:11.9, (19:15.3), (19:48.4) |
5 | 145 | Ravenna,
MI - Team Time (1st 5) 1:32:36.3 | Spread (1st 5) 1:58.9 |
| 15, 21, 23, 31, 55, (65), (72) |
| Harry Greer, Jake Grimm, Neal Wilds, Alex Ciecielski, Tim Patterson, (Bob Lawrence), (Chris Boonstra) |
| 17:48.1, 18:08.0, 18:19.3, 18:33.9, 19:47.0, (20:39.9), (20:52.1) |
6 | 147 | Hudsonville Freedom Christian (Closed),
MI - Team Time (1st 5) 1:32:26.5 | Spread (1st 5) 1:24.6 |
| 14, 22, 28, 37, 46, (52), (59) |
| Alex Schmidt, Ryan Marquardt, Nathan Chanski, Joshua Slottke, Tommy Brown, (Vince Modert), (Gabe Nymeyer) |
| 17:47.9, 18:11.6, 18:28.4, 18:46.1, 19:12.5, (19:28.2), (19:51.5) |
7 | 233 | Bellevue,
MI - Team Time (1st 5) 1:37:58.8 | Spread (1st 5) 4:44.6 |
| 12, 35, 51, 58, 77 |
| Tony Fuller, Brad Sanders, Chase Maxson, A.J. Solovey, Mike Solovey |
| 17:36.2, 18:45.6, 19:27.2, 19:49.0, 22:20.8 |
8 | 241 | Muskegon Western Mich. Christian,
MI - Team Time (1st 5) 1:36:58.8 | Spread (1st 5) 1:27.5 |
| 33, 39, 48, 60, 61, (66), (67) |
| Lucas Crandle, Jason Jackson, Brian Brook, Nate Taylor, Gideon Hanes, (Jacob Kempster), (Andrew Vriesman) |
| 18:43.1, 18:48.0, 19:13.0, 20:04.1, 20:10.6, (20:40.0), (20:40.3) |
9 | 271 | Gobles,
MI - Team Time (1st 5) 1:45:15.2 | Spread (1st 5) 7:32.5 |
| 13, 16, 70, 84, 88 |
| Chase Gardiner, Andrew Grossmann, Larry Van Welden, Chris Baker, Keegan Roder |
| 17:37.0, 17:50.7, 20:48.0, 23:50.0, 25:09.5 |
| 271 | Lansing Christian,
MI - Team Time (1st 5) 1:42:43.8 | Spread (1st 5) 4:42.6 |
| 32, 34, 42, 81, 82, (83), (89) |
| Trace Henderson, A.J. Rakestraw, Paul Childress, Jason Bergeron, Julian Gonzalez, (Alex Bergeron), (Jake Woodland) |
| 18:37.0, 18:44.9, 18:54.3, 23:08.0, 23:19.6, (23:21.0), (26:35.8) |
11 | 272 | GR Covenant Christian,
MI - Team Time (1st 5) 1:38:54.4 | Spread (1st 5) 1:41.7 |
| 43, 47, 56, 62, 64, (68), (69) |
| Andrew Peterson, Jake Start, Justin Looyenga, Alex Overbeek, Chad Jessup, (Brandon Kaptein), (Joshua Spriensma) |
| 18:55.0, 19:12.9, 19:47.8, 20:22.0, 20:36.7, (20:40.7), (20:44.5) |
12 | 280 | Dansville,
MI - Team Time (1st 5) 1:41:07.9 | Spread (1st 5) 4:41.5 |
| 8, 54, 71, 73, 74 |
| Daniel Pepper, Brandon Gochis, Ethan Myer, Michael Belt, Dayton Yanz |
| 17:09.3, 19:43.0, 20:48.8, 21:36.0, 21:50.8 |
13 | 300 | Portland St. Patrick,
MI - Team Time (1st 5) 1:43:30.0 | Spread (1st 5) 4:36.6 |
| 29, 53, 63, 75, 80, (86) |
| Ryan Wilcox, Josh Schneider, Mike Kreiner, Ben Lawless, Noah Pung, (Devin Ryan) |
| 18:29.6, 19:30.2, 20:30.9, 21:53.1, 23:06.2, (24:29.2) |
14 | 405 | GR Wellspring Prep,
MI - Team Time (1st 5) 1:55:27.3 | Spread (1st 5) 2:45.3 |
| 76, 78, 79, 85, 87 |
| Joseph Hidalgo, Lucas Cersosimo, Andrew VanderMeer, Lucas Raskey, Jarus Carter |
| 21:56.0, 22:26.0, 22:29.0, 23:55.0, 24:41.3 |