| | | Tour de l'Avenir (2.2U) |
| 25-08 | DNF | | Etappe 6Châtillon-sur-Cluses - Val-d'Isère (149.0km) | 149.0km |
| 24-08 | 127 | 124 | Etappe 5Les Carroz – Flaine - Les Carroz – Flaine (11.0km) | 11.0km |
| 23-08 | 36 | 120 | Etappe 4Saint-Vallier - Semur-en-Auxois (151.0km) | 151.0km |
| 22-08 | 1 | 128 | Etappe 3Vierzon - Saint-Vallier (231.0km) | 231.0km |
| 21-08 | 5 | 135 | Etappe 2Nogent-le-Rotrou - Amboise (116.0km) | 116.0km |
| 20-08 | 140 | 140 | Etappe 1Ouistreham - Argentan (151.0km) | 151.0km |
| 28-06 | DNF | | National Road Championships - Italy U23 (CN) | |
| | | Giro d'Italia Next Gen (2.2U) |
| 19-06 | DNF | | Etappe 6Velletri - Subiaco (159.0km) | 159.0km |
| 18-06 | 112 | 117 | Etappe 5Bacoli - Bacoli (134.0km) | 134.0km |
| 17-06 | 123 | 126 | Etappe 4Matera - Corato (152.0km) | 152.0km |
| 16-06 | 136 | 133 | Etappe 3Sibari - Villa d'Agri (166.0km) | 166.0km |
| 15-06 | 28 | 34 | Etappe 2Tropea - Crotone (154.0km) | 154.0km |
| 14-06 | 44 | 45 | Etappe 1Reggio Calabria - Vibo Valentia (168.0km) | 168.0km |
| | | Volta a Portugal do Futuro (2.2U) |
| 45 | | Klassement |
| 6 | | Punten |
| 18 | | Berg |
| 23 | | Jongeren |
| 17-05 | 1 | 45 | Etappe 4Castro Daire - Espinho (133.0km) | 133.0km |
| 16-05 | 25 | 63 | Etappe 3Penela - São Pedro do Sul (156.0km) | 156.0km |
| 15-05 | 80 | 77 | Etappe 2Figueiró dos Vinhos - Castanheira de Pêra (142.0km) | 142.0km |
| 14-05 | 66 | 66 | Etappe 1Abrantes - Oleiros (145.0km) | 145.0km |
| 10-05 | 88 | | In Flanders Fields - In Ieper/Kattekoers (1.2U) | 186.0km |
| 25-04 | DNF | | Gran Premio della Liberazione (1.2U) | 138.0km |
| | | AlUla Tour (2.Pro) |
| 29-01 | DNF | | Etappe 3Winter Park - Bir Jaydah Mountain Wirkah (142.0km) | 142.0km |
| 28-01 | 21 | 64 | Etappe 2AlManshiyah Train Station - AlManshiyah Train Station (152.0km) | 152.0km |
| 27-01 | 83 | 83 | Etappe 1AlUla Camel Cup Track - AlUla Camel Cup Track (158.0km) | 158.0km |