| 07-10 | 8 | | 90° Il Piccolo Lombardia (1.2U) | 174.0km |
| 28-09 | 17 | | UCI World Championship Innsbruck U23 (CM) | 186.0km |
| 24-09 | 8 | | UCI World Championship Innsbruck TT U23 (CM) | 28.0km |
| 16-09 | 58 | | Coppa Bernocchi (1.1) | 194.0km |
| 12-08 | DNF | | 43° Gran Premio Sportivi di Poggiana-43° Trofeo Bonin Costruzioni-8° Gran Premio Pasta Zara (1.2U) | |
| | | Tour Alsace (2.2) |
| 73 | | Standings |
| 05-08 | 85 | 73 | Stage 5Riedisheim - Dannemarie | 145.0km |
| 04-08 | 62 | 77 | Stage 4Ribeauville - Lac Blanc | 165.0km |
| 03-08 | 94 | 89 | Stage 3Vesoul - La Planche des Belles Filles | 143.0km |
| 02-08 | 76 | 39 | Stage 2Champ du Feu - Selestat | 147.0km |
| 01-08 | 40 | 40 | Stage 1Sausheim - Sausheim | 4.0km |
| | | Giro Ciclistico della Valle d'Aosta Mont Blanc (2.2U) |
| 36 | | Standings |
| 12 | | Points |
| 20 | | Mountain |
| 15-07 | 22 | 36 | Stage 4Valtournenche - Breuil-Cervinia | 109.0km |
| 14-07 | 51 | 43 | Stage 3Antagnod - Antagnod | 160.0km |
| 13-07 | 4 | 43 | Stage 2Tavagnasco - Quassolo | 148.0km |
| 12-07 | 63 | 55 | Stage 1Rhêmes-Saint-Georges - Rhêmes-Notre-Dame | 162.0km |
| 11-07 | 2 | 2 | PrologueSaint-Gervais Mont-Blanc - Saint Nicolas de Veroce | 7.0km |
| | | Le Tour de Savoie Mont Blanc (2.2) |
| 22-06 | DNS | | Stage 2Modane - Valloire | 92.0km |
| 21-06 | 60 | 60 | Stage 1Saint-Michel-de-Maurienne - Bonneval | 150.0km |
| | | Baby Giro (2.2U) |
| 16-06 | 91 | 30 | Stage 9aConegliano - Valdobbiadene | 72.0km |
| 16-06 | 4 | 27 | Stage 9bSan Pietro di Feletto - San Pietro di Feletto | 22.0km |
| 15-06 | 85 | 31 | Stage 8Levico Terme - Asiago | 157.0km |
| 14-06 | 17 | 26 | Stage 7Schio - Pian Delle Fugazze | 136.0km |
| 13-06 | 74 | 27 | Stage 6Dimaro - Pergine Valsugana | 120.0km |
| 12-06 | 22 | 20 | Stage 5Darfo Boario Terme - Malga Folgarida di Dimaro | 127.0km |
| 11-06 | 27 | 21 | Stage 4Mornico Al Serio - Passo Manivia | 127.0km |
| 10-06 | 137 | 16 | Stage 3Rio Saliceto - Mornico Al Serio | 164.0km |
| 09-06 | 37 | 16 | Stage 2Nonantola - Sestola | 138.0km |
| 08-06 | 81 | 81 | Stage 1Riccione - Forlì | 137.0km |
| 07-06 | 28 | 28 | PrologueForlì - Forlì | 4.0km |
| 03-06 | 19 | | 47^ Coppa della Pace - 44° Trofeo F.lli Anelli (1.2) | |
| 02-06 | 2 | | 63° Trofeo Alcide Degasperi (1.2) | |
| 13-05 | 19 | | Gran Premio Industrie del Marmo (1.2U) | |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 27 | | Standings |
| 39 | | Points |
| 01-05 | 10 | 27 | Stage 7Saint-Pôtan - Dinan | 145.0km |
| 30-04 | 57 | 37 | Stage 6Plancoët - Dol-de-Bretagne | 151.0km |
| 29-04 | 45 | 43 | Stage 5Colpo - Plancoët | 155.0km |
| 28-04 | 35 | 47 | Stage 4Clohars-Carnoët - Grand Champ | 162.0km |
| 27-04 | 35 | 54 | Stage 3Baden - Clohars-Carnoët | 181.0km |
| 26-04 | 64 | 75 | Stage 2Louisfert - Plougoumelen | 180.0km |
| 25-04 | 79 | 82 | Stage 1Chateaubriant - Louisfert | 159.0km |
| 22-04 | DNF | | Giro dell'Appennino (1.1) | 194.0km |
| 03-04 | 1 | | 57° G.P. Palio del Recioto (1.2U) | |
| 01-04 | 31 | | 70° Trofeo Piva (1.2U) | |
| 18-03 | 68 | | 103^ Popolarissima (1.2) | |
| 10-02 | 5 | | National Road Championships - South Africa U23 (CN) | |
| 07-02 | 1 | | National Road Championships - South Africa TT U23 (CN) | |