|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4/11/2018 | | 1.NE | | | | 1 | | The Tshwane Capital Classic | | 0 | |
| 13/10/2018 | | 1.NE | | | | 2 | | Bestmed Satellite Classic | | 0 | |
| 22/07/2018 | | 1.NE | | | | 1 | | trapNET 360 (Centurion, Pretoria) | | 0 | |
| 14/07/2018 | | 2.NE | | | | 1 | | Bestmed Jock Classic | | 0 | |
| 14/07/2018 | | 2.NEs | | | | 1 | | Bestmed Jock Classic, Stage 3: Sabie - Nelspruit | | 0 | |
| 14/07/2018 | | 2.NEs | | | | leader | | Bestmed Jock Classic, Stage 2: White River - Sabie | | 0 | |
| 14/07/2018 | | 2.NEs | | | | 2 | | Bestmed Jock Classic, Stage 2: White River - Sabie | | 0 | |
| 14/07/2018 | | 2.NEs | | | | leader | | Bestmed Jock Classic, Stage 1: Nelspruit - White River | | 0 | |
| 14/07/2018 | | 2.NEs | | | | 1 | | Bestmed Jock Classic, Stage 1: Nelspruit - White River | | 0 | |
| 9/06/2018 | | 2.NE | | | | 1 | | Kremetart Cycle Race | | 0 | |
| 6/05/2018 | | 1.NE | | | | 9 | | 100 Cycle Challenge | | 0 | |
| 29/04/2018 | | 1.NE | | | | 5 | | aQuelle Tour Durban | | 0 | |
| 2/04/2018 | | 1.NE | | | | 1 | | Vulintaba Extreme road race (Newcastle) | | 0 | |
| 8/03/2018 | | 2.NEs | | | | 9 | | Tour of Good Hope, Stage 4: Paarl - Paarl | | 0 | |
| 7/03/2018 | | 2.NEs | | | | 4 | | Tour of Good Hope, Stage 3: Paarl - Paarl | | 0 | |
| 6/03/2018 | | 2.NEs | | | | 3 | | Tour of Good Hope, Stage 2: Paarl I.T.T. | | 0 | |
| 5/03/2018 | | 2.NEs | | | | 6 | | Tour of Good Hope, Stage 1: Paarl - Paarl | | 0 | |
| 24/02/2018 | | 1.NE | | | | 1 | | Berge en Dale (Krugersdorp) | | 0 | |
| 18/02/2018 | | 1.NE | | | | 1 | | Ride for Sight (Boksburg) | | 0 | |
| 10/02/2018 | | NC2 | | | | 1 | | National Championships South Africa (Oudtshoorn) R.R. | | 40 | |
| 28/01/2018 | | 1.NE | | | | 4 | | Fast One Cycle Race | | 0 | |