| 1 | Philip StahlPlace 1 · Grade 12 · Clayton | 12 | Clayton | 18:45.18 |
| 2 | Evan CasePlace 2 · Grade 9 · Bayless | 9 | Bayless | 19:36.29 |
| 3 | Calvin CurranPlace 3 · Grade 9 · St. John Vianney | 9 | St. John Vianney | 19:58.08 |
| 4 | Jacob KellarPlace 4 · Grade 10 · St. John Vianney | 10 | St. John Vianney | 20:05.58 |
| 5 | Tobias ZaidmanPlace 5 · Grade 9 · Clayton | 9 | Clayton | 20:19.75 |
| 6 | Nolan WorleyPlace 6 · Grade 10 · St. John Vianney | 10 | St. John Vianney | 20:21.22 |
| 7 | Liam MitchellPlace 7 · Grade 11 · Clayton | 11 | Clayton | 20:22.66 |
| 8 | Jackson CarterPlace 8 · Grade 10 · Clayton | 10 | Clayton | 20:23.48 |
| 9 | James LayPlace 9 · Grade 9 · Clayton | 9 | Clayton | 20:59.38 |
| 10 | Benjamin WilliamsPlace 10 · Grade 11 · Clayton | 11 | Clayton | 21:01.46 |
| 11 | Robert McDonoughPlace 11 · Grade 12 · Clayton | 12 | Clayton | 21:16.69 |
| 12 | Jacob BeckettPlace 12 · Grade 11 · Clayton | 11 | Clayton | 21:27.76 |
| 13 | Jack HansellPlace 13 · Grade 10 · Clayton | 10 | Clayton | 21:36.05 |
| 14 | Salvador PlanellsPlace 14 · Grade 11 · Clayton | 11 | Clayton | 21:38.15 |
| 15 | Jacob GrasserPlace 15 · Grade 11 · Clayton | 11 | Clayton | 21:50.30 |
| 16 | Stephen KonertPlace 16 · Grade 12 · Affton | 12 | Affton | 21:52.23 |
| 17 | John WolfPlace 17 · Grade 9 · St. John Vianney | 9 | St. John Vianney | 21:58.16 |
| 18 | Jeremiah WilliamsPlace 18 · Grade 11 · Hancock | 11 | Hancock | 22:03.35 |
| 19 | Jaelyn MujanovicPlace 19 · Grade 9 · Affton | 9 | Affton | 22:03.83 |
| 20 | Tyler PailthorpPlace 20 · Grade 10 · Clayton | 10 | Clayton | 22:09.55 |
| 21 | Timothy LumsdenPlace 21 · Grade 9 · St. John Vianney | 9 | St. John Vianney | 22:10.41 |
| 22 | Joseph McCroryPlace 22 · Grade 10 · Windsor (Imperial) | 10 | Windsor (Imperial) | 22:16.49 |
| 23 | Evan PozzoPlace 23 · Grade 10 · St. John Vianney | 10 | St. John Vianney | 22:24.54 |
| 24 | Joseph GallowayPlace 24 · Grade 11 · St. John Vianney | 11 | St. John Vianney | 22:31.76 |
| 25 | Thomas GustafsonPlace 25 · Grade 9 · Clayton | 9 | Clayton | 23:02.26 |
| 26 | Aiden PuricelliPlace 26 · Grade 11 · Clayton | 11 | Clayton | 23:16.26 |
| 27 | Lorencio StonePlace 27 · Grade 10 · Clayton | 10 | Clayton | 23:20.96 |
| 28 | Kristopher GruenPlace 28 · Grade 9 · Clayton | 9 | Clayton | 23:26.05 |
| 29 | James LenzePlace 29 · Grade 9 · Clayton | 9 | Clayton | 23:37.13 |
| 30 | Zachary WangPlace 30 · Grade 9 · Clayton | 9 | Clayton | 23:44.50 |
| 31 | Taayan KhuranaPlace 31 · Grade 9 · Clayton | 9 | Clayton | 23:45.01 |
| 32 | Joey LanfersieckPlace 32 · Grade 11 · Windsor (Imperial) | 11 | Windsor (Imperial) | 24:01.36 |
| 33 | Alex ValentinePlace 33 · Grade 11 · Affton | 11 | Affton | 24:12.08 |
| 34 | Cory JeffersPlace 34 · Grade 11 · Windsor (Imperial) | 11 | Windsor (Imperial) | 24:38.94 |
| 35 | Noah MontreyPlace 35 · Grade 9 · St. John Vianney | 9 | St. John Vianney | 24:48.29 |
| 36 | Mason SearsPlace 36 · Grade 9 · Valley Park | 9 | Valley Park | 24:52.12 |
| 37 | Andrew NowakPlace 37 · Grade 10 · Bishop DuBourg | 10 | Bishop DuBourg | 24:57.36 |
| 38 | Timothy GosserPlace 38 · Grade 9 · Bishop DuBourg | 9 | Bishop DuBourg | 25:12.01 |
| 39 | Niko KanagawaPlace 39 · Grade 11 · Clayton | 11 | Clayton | 25:19.68 |
| 40 | Eric OhlendorfPlace 40 · Grade 12 · St. John Vianney | 12 | St. John Vianney | 25:20.07 |
| 41 | Noah MastersPlace 41 · Grade 11 · Hancock | 11 | Hancock | 25:46.01 |
| 42 | Samuel WaltonPlace 42 · Grade 11 · North Technical | 11 | North Technical | 25:47.55 |
| 43 | Blake MorrisPlace 43 · Grade 9 · Bishop DuBourg | 9 | Bishop DuBourg | 25:47.97 |
| 44 | Christian HeumannPlace 44 · Grade 11 · St. John Vianney | 11 | St. John Vianney | 25:51.57 |
| 45 | Benjamin GrillPlace 45 · Grade 9 · Clayton | 9 | Clayton | 26:06.10 |
| 46 | Elijah GreenleaPlace 46 · Grade 10 · University City | 10 | University City | 26:17.19 |
| 47 | Matthew YostPlace 47 · Grade 10 · Affton | 10 | Affton | 26:18.67 |
| 48 | Jaylon FleckPlace 48 · Grade 12 · Cleveland NJROTC | 12 | Cleveland NJROTC | 26:33.35 |
| 49 | Rudy BatanPlace 49 · Grade 12 · Bishop DuBourg | 12 | Bishop DuBourg | 26:34.78 |
| 50 | Michael BosticPlace 50 · Grade 9 · University City | 9 | University City | 26:39.82 |
| 51 | Junyi SuPlace 51 · Grade 11 · Clayton | 11 | Clayton | 26:43.80 |
| 52 | Brandin RayfordPlace 52 · Grade 10 · North Technical | 10 | North Technical | 26:51.37 |
| 53 | Ryan LampePlace 53 · Grade 11 · Bishop DuBourg | 11 | Bishop DuBourg | 26:59.68 |
| 54 | Abdullahi JimalePlace 54 · Grade 10 · Gateway | 10 | Gateway | 27:41.62 |
| 55 | Josh BuckmanPlace 55 · Grade 9 · Valley Park | 9 | Valley Park | 27:54.96 |
| 56 | Adam WillettPlace 56 · Grade 12 · St. Mary's (St. Louis) | 12 | St. Mary's (St. Louis) | 27:57.41 |
| 57 | Chris UhrigPlace 57 · Grade 10 · Windsor (Imperial) | 10 | Windsor (Imperial) | 29:13.56 |
| 58 | Jake WeigelPlace 58 · Grade 11 · St. Mary's (St. Louis) | 11 | St. Mary's (St. Louis) | 29:32.02 |
| 59 | Jalyn TaylorPlace 59 · Grade 11 · Cleveland NJROTC | 11 | Cleveland NJROTC | 29:33.90 |
| 60 | Connor WilhelmPlace 60 · Grade 10 · Windsor (Imperial) | 10 | Windsor (Imperial) | 30:20.10 |
| 61 | Benjamin DixonPlace 61 · Grade 11 · Hancock | 11 | Hancock | 30:24.08 |
| 62 | Kyle LauerPlace 62 · Grade 10 · St. Mary's (St. Louis) | 10 | St. Mary's (St. Louis) | 30:31.29 |
| 63 | Jeremiah DeanPlace 63 · Grade 10 · Cleveland NJROTC | 10 | Cleveland NJROTC | 30:56.75 |
| 64 | John CavanaughPlace 64 · Grade 9 · St. John Vianney | 9 | St. John Vianney | 32:39.65 |