| Race Pos | Name | Race | Start Group | RaceNo | Cat | Age | Start Time | Finish Time | Time | Ave (Km/h) |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Cameron Holtrop | 22 km | G | G2274 | JB | 18 (M) | 09:10:00 | 10:03:00 | 0:53:00 | 24.91 |
| 2 | Marco Matthysen | 22 km | G | G2086 | JB | 15 (M) | 09:10:00 | 10:04:12 | 0:54:12 | 24.35 |
| 3 | Dreyer Botma | 22 km | G | G2190 | JB | 16 (M) | 09:10:00 | 10:04:13 | 0:54:13 | 24.35 |
| 5 | Jean-Marc de Beer | 22 km | H | H2633 | JB | 15 (M) | 09:20:00 | 10:14:37 | 0:54:37 | 24.17 |
| 15 | Christiaan Ellis | 22 km | G | G2205 | JB | 15 (M) | 09:10:00 | 10:14:00 | 1:04:00 | 20.63 |
| 97 | Luc de Marillac | 22 km | G | G2207 | JB | 15 (M) | 09:10:00 | 10:31:21 | 1:21:21 | 16.23 |
| 128 | Kyle Hamman | 22 km | G | G2100 | JB | 15 (M) | 09:10:00 | 10:33:58 | 1:23:58 | 15.72 |
| 151 | Josh Green | 22 km | G | G2095 | JB | 18 (M) | 09:10:00 | 10:36:40 | 1:26:40 | 15.23 |
| 154 | Jack van der Merwe | 22 km | H | H2533 | JB | 16 (M) | 09:20:00 | 10:47:03 | 1:27:03 | 15.16 |
| 251 | Johannes Nicolaas smit Smit | 22 km | G | G2127 | JB | 15 (M) | 09:10:00 | 10:48:39 | 1:38:39 | 13.38 |
| 2 | Theodore Van Wyk | 50 km | A | A232 | JB | 18 (M) | 08:30:00 | 10:20:29 | 1:50:29 | 27.15 |
| 3 | Aidan Penfold | 50 km | A | A130 | JB | 16 (M) | 08:30:00 | 10:21:00 | 1:51:00 | 27.03 |
| 8 | Justin Vosloo | 50 km | A | A17 | JB | 16 (M) | 08:30:00 | 10:25:23 | 1:55:23 | 26.00 |
| 18 | Jared Staley | 50 km | B | B526 | JB | 18 (M) | 08:40:00 | 10:39:13 | 1:59:13 | 25.16 |
| 39 | Tristan Link | 50 km | A | A132 | JB | 16 (M) | 08:30:00 | 10:37:43 | 2:07:43 | 23.49 |
| 43 | Cobus Marais | 50 km | A | A129 | JB | 15 (M) | 08:30:00 | 10:39:33 | 2:09:33 | 23.16 |
| 45 | Daniel Geldenhuys | 50 km | A | A131 | JB | 16 (M) | 08:30:00 | 10:39:37 | 2:09:37 | 23.15 |
| 409 | Elijah Davids | 22 km | H | G2157 | JB | 16 (M) | 09:20:00 | 11:29:50 | 2:09:50 | 10.17 |
| 79 | Yanre Meyer | 50 km | A | A124 | JB | 17 (M) | 08:30:00 | 10:47:41 | 2:17:41 | 21.79 |
| 81 | Weylin Volschenk | 50 km | D | D1113 | JB | 15 (M) | 08:55:00 | 11:12:48 | 2:17:48 | 21.77 |
| 87 | Matthew Turner | 50 km | A | A234 | JB | 18 (M) | 08:30:00 | 10:49:08 | 2:19:08 | 21.56 |
| 93 | Kabe Gordon | 50 km | A | A233 | JB | 16 (M) | 08:30:00 | 10:50:47 | 2:20:47 | 21.31 |
| 109 | Rewalton Daniels | 50 km | D | D1100 | JB | 18 (M) | 08:55:00 | 11:18:29 | 2:23:29 | 20.91 |
| 150 | Ayyoob Khan | 50 km | A | A237 | JB | 16 (M) | 08:30:00 | 11:01:01 | 2:31:01 | 19.87 |
| 171 | johmar loubser | 50 km | C | C701 | JB | 15 (M) | 08:50:00 | 11:24:05 | 2:34:05 | 19.47 |
| 254 | Werner Badenhorst | 50 km | A | A128 | JB | 15 (M) | 08:30:00 | 11:12:53 | 2:42:53 | 18.42 |
| 260 | Ruan Gildenhuys | 50 km | C | C787 | JB | 16 (M) | 08:50:00 | 11:33:11 | 2:43:11 | 18.38 |
| 285 | Jacob Engelsen | 50 km | D | A123 | JB | 15 (M) | 08:55:00 | 11:41:39 | 2:46:39 | 18.00 |
| 331 | Jesse Sher | 50 km | B | B413 | JB | 16 (M) | 08:40:00 | 11:30:43 | 2:50:43 | 17.57 |
| 341 | Jayduren Vermeulen | 50 km | D | D1102 | JB | 17 (M) | 08:55:00 | 11:46:15 | 2:51:15 | 17.52 |
| 364 | Mauritz Acker | 50 km | C | C699 | JB | 16 (M) | 08:50:00 | 11:43:53 | 2:53:53 | 17.25 |
| 395 | Joshua Rainer | 50 km | A | A16 | JB | 15 (M) | 08:30:00 | 11:27:41 | 2:57:41 | 16.88 |
| 459 | Thomas Vermaak Vermaak | 50 km | A | A133 | JB | 16 (M) | 08:30:00 | 11:38:24 | 3:08:24 | 15.92 |
| 525 | Paul Atherton | 50 km | D | D934 | JB | 16 (M) | 08:55:00 | 12:13:36 | 3:18:36 | 15.11 |
| 589 | Stephan Heyns | 50 km | C | C738 | JB | 18 (M) | 08:50:00 | 12:25:07 | 3:35:07 | 13.95 |
| 602 | Benito Williams | 50 km | C | C606 | JB | 17 (M) | 08:50:00 | 12:26:57 | 3:36:57 | 13.83 |