| 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 | | Klassement |
| 05-08 | 85 | 73 | Stage 5Riedisheim - Dannemarie (145.0km) | 145.0km |
| 04-08 | 62 | 77 | Stage 4Ribeauville - Lac Blanc (165.0km) | 165.0km |
| 03-08 | 94 | 89 | Stage 3Vesoul - La Planche des Belles Filles (143.0km) | 143.0km |
| 02-08 | 76 | 39 | Stage 2Champ du Feu - Selestat (147.0km) | 147.0km |
| 01-08 | 40 | 40 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| | | Giro Ciclistico della Valle d'Aosta Mont Blanc (2.2U) |
| 36 | | Klassement |
| 12 | | Punten |
| 20 | | Berg |
| 15-07 | 22 | 36 | Stage 4Valtournenche - Breuil-Cervinia (109.0km) | 109.0km |
| 14-07 | 51 | 43 | Stage 3Antagnod - Antagnod (160.0km) | 160.0km |
| 13-07 | 4 | 43 | Stage 2Tavagnasco - Quassolo (148.0km) | 148.0km |
| 12-07 | 63 | 55 | Stage 1Rhêmes-Saint-Georges - Rhêmes-Notre-Dame (162.0km) | 162.0km |
| 11-07 | 2 | 2 | PrologueSaint-Gervais Mont-Blanc - Saint Nicolas de Veroce (7.0km) | 7.0km |
| | | Le Tour de Savoie Mont Blanc (2.2) |
| 22-06 | DNS | | Stage 2Modane - Valloire (92.0km) | 92.0km |
| 21-06 | 60 | 60 | Stage 1Saint-Michel-de-Maurienne - Bonneval (150.0km) | 150.0km |
| | | Baby Giro (2.2U) |
| 16-06 | 91 | 30 | Stage 9aConegliano - Valdobbiadene (72.0km) | 72.0km |
| 16-06 | 4 | 27 | Stage 9bSan Pietro di Feletto - San Pietro di Feletto (22.0km) | 22.0km |
| 15-06 | 85 | 31 | Stage 8Levico Terme - Asiago (157.0km) | 157.0km |
| 14-06 | 17 | 26 | Stage 7Schio - Pian Delle Fugazze (136.0km) | 136.0km |
| 13-06 | 74 | 27 | Stage 6Dimaro - Pergine Valsugana (120.0km) | 120.0km |
| 12-06 | 22 | 20 | Stage 5Darfo Boario Terme - Malga Folgarida di Dimaro (127.0km) | 127.0km |
| 11-06 | 27 | 21 | Stage 4Mornico Al Serio - Passo Manivia (127.0km) | 127.0km |
| 10-06 | 137 | 16 | Stage 3Rio Saliceto - Mornico Al Serio (164.0km) | 164.0km |
| 09-06 | 37 | 16 | Stage 2Nonantola - Sestola (138.0km) | 138.0km |
| 08-06 | 81 | 81 | Stage 1Riccione - Forlì (137.0km) | 137.0km |
| 07-06 | 28 | 28 | PrologueForlì - Forlì (4.0km) | 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 | | Klassement |
| 39 | | Punten |
| 01-05 | 10 | 27 | Stage 7Saint-Pôtan - Dinan (145.0km) | 145.0km |
| 30-04 | 57 | 37 | Stage 6Plancoët - Dol-de-Bretagne (151.0km) | 151.0km |
| 29-04 | 45 | 43 | Stage 5Colpo - Plancoët (155.0km) | 155.0km |
| 28-04 | 35 | 47 | Stage 4Clohars-Carnoët - Grand Champ (162.0km) | 162.0km |
| 27-04 | 35 | 54 | Stage 3Baden - Clohars-Carnoët (181.0km) | 181.0km |
| 26-04 | 64 | 75 | Stage 2Louisfert - Plougoumelen (180.0km) | 180.0km |
| 25-04 | 79 | 82 | Stage 1Chateaubriant - Louisfert (159.0km) | 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) | |