| 24-09 | 27 | | UCI World Championship Yorkshire TT U23 (CM) | 30.0km |
| 15-09 | 73 | | Coppa Bernocchi (1.1) | |
| 14-09 | 48 | | Coppa Agostoni - Giro delle Brianze (1.1) | 195.0km |
| | | Giro della Regione Friuli Venezia Giulia (2.2) |
| 06-09 | DNF | | Stage 3Pordenone - Gorizia (177.0km) | 177.0km |
| 05-09 | 26 | 14 | Stage 2Gemona del Friuli - Lignano (160.0km) | 160.0km |
| 04-09 | | 17 | Stage 1Torreano di Martignacco - Torreano di Martignacco (16.0km) | 16.0km |
| 16-08 | 6 | | Gp Capodarco Comunita Di Capodarco (1.2U) | |
| 08-08 | 19 | | UEC Road European Championships TT U23 (CC) | |
| | | Tour Alsace (2.2) |
| 54 | | Klassement |
| 04-08 | 58 | 54 | Stage 5Ottmarsheim - Dannemarie (158.0km) | 158.0km |
| 03-08 | 50 | 55 | Stage 4Ribeauville - Lac Blanc (161.0km) | 161.0km |
| 02-08 | 80 | 79 | Stage 3Vesoul - La Planche des Belles Filles (143.0km) | 143.0km |
| 01-08 | 38 | 14 | Stage 2Selestat - Selestat (153.0km) | 153.0km |
| 31-07 | | 14 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| 29-06 | 24 | | National Road Championships - Italy U23 (CN) | |
| 26-06 | 1 | | National Road Championships - Italy TT U23 (CN) | |
| | | Baby Giro (2.2U) |
| 37 | | Klassement |
| 45 | | Punten |
| 17 | | Berg |
| 23-06 | 43 | 37 | Stage 9Agordo - Passo Fedaia (35.0km) | 35.0km |
| 22-06 | 4 | 36 | Stage 8Rosà - Falcade (134.0km) | 134.0km |
| 21-06 | 79 | 52 | Stage 7Dimaro Folgarida - Levico Terme (153.0km) | 153.0km |
| 20-06 | 39 | 52 | Stage 6Aprica - Aprica (94.0km) | 94.0km |
| 19-06 | 66 | 60 | Stage 5Sorbolo - Passo Maniva (155.0km) | 155.0km |
| 17-06 | 59 | 58 | Stage 4Buonconvento - Vetta Amiata (163.0km) | 163.0km |
| 16-06 | 92 | 78 | Stage 3Sesto Fiorentino - Gaiole in Chianti (145.0km) | 145.0km |
| 15-06 | 31 | 10 | Stage 2Bagno di Romagna - Pescia (174.0km) | 174.0km |
| 14-06 | 57 | 10 | Stage 1Riccione - Santa Sofia (143.0km) | 143.0km |
| 13-06 | 10 | 10 | PrologueRiccione - Riccione (3.0km) | 3.0km |
| 09-06 | 1 | | 48^ Coppa della Pace - 45° Trofeo F.lli Anelli (1.2) | |
| 12-05 | 36 | | Gran Premio Industrie del Marmo (1.2U) | |
| 05-05 | 94 | | Circuito del Porto - Trofeo Arvedi (1.2) | |
| 28-04 | 64 | | Giro dell'Appennino (1.1) | 198.0km |
| 23-04 | 1 | | 58° G.P. Palio del Recioto - Trofeo C&F Resinatura Blocchi (1.2U) | |
| 22-04 | 3 | | Giro del Belvedere (1.2U) | |
| 13-04 | 69 | | Ronde van Vlaanderen Beloften (1.NCUP) | |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 84 | | Klassement |
| 22 | | Punten |
| 31-03 | 92 | 84 | Stage 5Fiorano Modenese - Sassuolo (153.0km) | 153.0km |
| 30-03 | 65 | 89 | Stage 4Crevalcore - Crevalcore (171.0km) | 171.0km |
| 29-03 | 6 | 90 | Stage 3Forlì - Forlì (166.0km) | 166.0km |
| 28-03 | 110 | 114 | Stage 2Riccione - Sogliano al Rubicone (140.0km) | 140.0km |
| 27-03 | 18 | 138 | Stage 1bGatteo a Mare - Gatteo (13.0km) | 13.0km |
| 27-03 | 50 | 21 | Stage 1aGatteo - Gatteo (97.0km) | 97.0km |
| 10-03 | 34 | | GP Industria & Artigianato (1.HC) | 199.0km |
| | | Tour du Rwanda (2.1) |
| 03-03 | DNF | | Stage 8Kigali - Kigali (66.0km) | 66.0km |
| 02-03 | 42 | 42 | Stage 7Nyamata - Kigali (84.0km) | 84.0km |
| 01-03 | 59 | 43 | Stage 6Musanze - Nyamata (120.0km) | 120.0km |
| 28-02 | 38 | 36 | Stage 5Karongi - Musanze (138.0km) | 138.0km |
| 27-02 | 41 | 43 | Stage 4Rubavu - Karongi (103.0km) | 103.0km |
| 26-02 | 48 | 47 | Stage 3Huye - Rubavu (213.0km) | 213.0km |
| 25-02 | 23 | 39 | Stage 2Kigali - Huye (120.0km) | 120.0km |
| 24-02 | 48 | 49 | Stage 1Kigali - Kigali (112.0km) | 112.0km |
| 17-02 | 3 | | Trofeo Laigueglia (1.HC) | 203.0km |