| 07-10 | 64 | | Coppa Citta' Di San Daniele (1.2) | 160.0km |
| 04-10 | DNF | | Il Lombardia Under 23 (1.2U) | 170.0km |
| 30-09 | DNF | | Ruota d'Oro - GP Festa del Perdono (1.2U) | 173.0km |
| 21-09 | DNF | | Giro della Romagna (1.1) | 197.0km |
| 10-08 | DNF | | Gran Premio Sportivi di Poggiana-Trofeo Bonin Costruzioni (1.2U) | |
| | | Giro Ciclistico della Valle d'Aosta - Mont Blanc (2.2U) |
| 51 | | Klassement |
| 20-07 | 58 | 51 | Stage 5Valtournenche - Breuil-Cervinia (119.0km) | 119.0km |
| 19-07 | 47 | 53 | Stage 4Saint-Pierre - Valsavarenche (160.0km) | 160.0km |
| 18-07 | 67 | 65 | Stage 3Pré-Saint-Didier - Colle del Gran San Bernardo (121.0km) | 121.0km |
| 16-07 | 53 | 53 | Stage 1Aosta - Aosta (85.0km) | 85.0km |
| 24-06 | DNF | | Giro dell'Appennino (1.1) | 198.0km |
| | | Giro d'Italia Next Gen (2.2U) |
| 106 | | Klassement |
| 22-06 | 44 | 106 | Stage 8Pinerolo - Pinerolo (127.0km) | 127.0km |
| 21-06 | 126 | 118 | Stage 7Bra - Prato Nevoso (163.0km) | 163.0km |
| 20-06 | 124 | 111 | Stage 6Ovada - Acqui Terme (154.0km) | 154.0km |
| 19-06 | 106 | 97 | Stage 5Fiorenzuola d'Arda - Gavi (153.0km) | 153.0km |
| 18-06 | 82 | 89 | Stage 4Manerbio - Salsomaggiore Terme (134.0km) | 134.0km |
| 17-06 | 86 | 95 | Stage 3Albese con Cassano - Passo del Maniva (144.0km) | 144.0km |
| 16-06 | 68 | 108 | Stage 2Rho - Cantù (146.0km) | 146.0km |
| 15-06 | 147 | 147 | Stage 1Rho - Rho (8.0km) | 8.0km |
| | | Alpes Isère Tour (2.2) |
| 01-06 | DNF | | Stage 5Saint-Joseph-de-Rivière - La Mure (181.0km) | 181.0km |
| 31-05 | 85 | 79 | Stage 4Primarette - Saint-Maurice-l'Exil (176.0km) | 176.0km |
| 30-05 | 64 | 69 | Stage 3Colombier-Saugnieu - Jons (159.0km) | 159.0km |
| 29-05 | 76 | 71 | Stage 2Dolomieu - Satolas-et-Bonce (153.0km) | 153.0km |
| 28-05 | 47 | 47 | Stage 1Charvieu-Chavagneux - Charvieu-Chavagneux (135.0km) | 135.0km |
| | | Ronde de l'Isard (2.2U) |
| 60 | | Klassement |
| 33 | | Jongeren |
| 25-05 | 65 | 60 | Stage 5Saubens - Saint-Girons (150.0km) | 150.0km |
| 24-05 | 63 | 60 | Stage 4Espéraza - Pla de Soulcem (124.0km) | 124.0km |
| 23-05 | 44 | 65 | Stage 3Aspet - Salies-du-Salat (142.0km) | 142.0km |
| 22-05 | 85 | 75 | Stage 2Luz-Saint-Sauveur - Cauterets-Cambasque (135.0km) | 135.0km |
| 21-05 | 62 | 62 | Stage 1Saint-Mont - Bagnères-de-Bigorre (149.0km) | 149.0km |
| 04-05 | DNS | | Lotto Famenne Ardenne Classic (1.1) | 186.0km |
| 03-05 | DNF | | Flèche Ardennaise (1.2) | 174.0km |
| | | Il Giro d'Abruzzo (2.1) |
| 18-04 | DNF | | Stage 4Corropoli - Isola del Gran Sasso (166.0km) | 166.0km |
| 17-04 | 56 | 84 | Stage 3San Demetrio ne' Vestini - Roccaraso (160.0km) | 160.0km |
| 16-04 | 98 | 99 | Stage 2Tocco da Casauria - Penne (138.0km) | 138.0km |
| 15-04 | 93 | 93 | Stage 1Scerni - Crecchio (151.0km) | 151.0km |
| 06-04 | DNF | | Trofeo Piva (1.2U) | |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 97 | | Klassement |
| 48 | | Jongeren |
| 29-03 | 97 | 97 | Stage 5Brisighella - Forlì (132.0km) | 132.0km |
| 28-03 | 89 | 121 | Stage 4Brisighella - Brisighella (150.0km) | 150.0km |
| 27-03 | 100 | 126 | Stage 3Riccione - Cesena (142.0km) | 142.0km |
| 26-03 | 142 | 145 | Stage 2Riccione - Sogliano al Rubicone (163.0km) | 163.0km |
| 25-03 | 63 | 63 | Stage 1Ferrara - Bondeno (174.0km) | 174.0km |