| 22-09 | 67 | | UCI World Championship Limburg U23 (CM) | 161.0km |
| 17-09 | 36 | | UCI World Championship Limburg TT U23 (CM) | 36.0km |
| | | Vuelta Ciclista a León (2.2) |
| 21 | | Standings |
| 11-08 | 12 | 21 | Stage 5Laguna de Negrillos - León | 118.0km |
| 10-08 | 19 | 23 | Stage 4Sabero - Villamanin | 182.0km |
| 09-08 | 25 | 31 | Stage 3Val de San Lorenzo - Riello | 161.0km |
| 08-08 | 37 | 37 | Stage 2Camponaraya - Labaña | 155.0km |
| 07-08 | 107 | 108 | Stage 1Rio Pinos - Sahagún | 169.0km |
| | | Tour Alsace (2.2) |
| 15 | | Standings |
| 29-07 | 18 | 15 | Stage 5Ribeauville - Ballon d'Alsace | 156.0km |
| 28-07 | 69 | 13 | Stage 4bCernay - Cernay | 17.0km |
| 28-07 | 2 | 12 | Stage 4aBollwiller - Le Markstein | 84.0km |
| 27-07 | 54 | 45 | Stage 3Beaucourt - Colmar | 161.0km |
| 26-07 | 27 | 42 | Stage 2Strasbourg - Bischoffsheim | 153.0km |
| 25-07 | 78 | 80 | Stage 1Weil-am-Rhein - Huningue | 147.0km |
| | | Giro Ciclistico della Valle d'Aosta Mont Blanc (2.2U) |
| 18 | | Standings |
| 22-07 | 23 | 18 | Stage 6Châtel - Col de Bessachaux | 12.0km |
| 21-07 | 7 | 18 | Stage 5Aigle - Châtel | 142.0km |
| 20-07 | 24 | 26 | Stage 4Antey-Saint-André - Antey-Saint-André | 166.0km |
| 19-07 | 42 | 30 | Stage 3Quincinetto - Tavagnasco | 138.0km |
| 18-07 | 28 | 29 | Stage 2Issogne - Champdepraz | 160.0km |
| 17-07 | 34 | 36 | Stage 1Arvier - Arvier | 133.0km |
| 16-07 | 64 | 64 | PrologueHône - Forte di Bard | 3.0km |
| 08-07 | 48 | | GP de Pont à Marcq - La Ronde Pévèloise (1.2) | |
| | | Tour des Pays de Savoie (2.2) |
| 6 | | Standings |
| 17-06 | 17 | 6 | Stage 3Bessans - Col du Mont Cenis | 133.0km |
| 16-06 | 3 | 4 | Stage 2Neydens - Bourg-Saint-Maurice | 159.0km |
| 15-06 | 18 | 19 | Stage 1Les Houches - Plateau de Solaison | 127.0km |
| 14-06 | 107 | 107 | PrologueChambéry - Chambéry | 3.0km |
| 04-03 | 9 | | National Road Championships - South Africa (CN) | |
| 01-03 | 7 | | National Road Championships - South Africa TT (CN) | |