| 12-10 | 21 | | Trofeo Tessile & Moda - Valdengo Oropa (1.1) | 170.0km |
| 09-10 | 67 | | Gran Piemonte (1.Pro) | 179.0km |
| 14-09 | 24 | | Trofeo Matteotti (1.1) | 195.0km |
| 13-09 | DNF | | Memorial Marco Pantani (1.1) | 195.0km |
| 11-09 | 62 | | Gran Premio città di Peccioli - Coppa Sabatini (1.Pro) | 197.0km |
| 07-09 | DNF | | GP Industria & Artigianato (1.Pro) | 196.0km |
| | | Tour du Limousin (2.1) |
| 40 | | Klassement |
| 21 | | Jongeren |
| 22-08 | 34 | 40 | Stage 4Bonneval - Limoges (164.0km) | 164.0km |
| 21-08 | 86 | 43 | Stage 3Saint-Jal - Masseret (182.0km) | 182.0km |
| 20-08 | 40 | 43 | Stage 2Thiviers - Grèzes (174.0km) | 174.0km |
| 19-08 | 66 | 67 | Stage 1Panazol - La Courtine (184.0km) | 184.0km |
| 17-08 | 44 | | La Polynormande (1.1) | 168.0km |
| 27-07 | 112 | | Vuelta a Castilla y Leon (1.1) | 201.0km |
| 25-07 | 83 | | Prueba Villafranca - Ordiziako Klasika (1.1) | 168.0km |
| 21-07 | 41 | | Clásica Terres de l´Ebre (1.1) | 186.0km |
| | | Sibiu Cycling Tour (2.1) |
| 90 | | Klassement |
| 21 | | Berg |
| 06-07 | 43 | 90 | Stage 4Sibiu - Sibiu (3.0km) | 3.0km |
| 05-07 | 95 | 93 | Stage 3Sibiu - Paltinis (164.0km) | 164.0km |
| 04-07 | 76 | 93 | Stage 2Sibiu - Balea Lac (203.0km) | 203.0km |
| 03-07 | 117 | 117 | Stage 1Sibiu - Sibiu (215.0km) | 215.0km |
| 29-06 | 52 | | National Road Championships - Italy (CN) | 223.0km |
| 22-06 | DNS | | Andorra MoraBanc Clàssica (1.1) | 138.0km |
| | | La Route d'Occitanie - CIC (2.1) |
| 68 | | Klassement |
| 41 | | Punten |
| 29 | | Jongeren |
| 21-06 | 54 | 68 | Stage 4Saint-Gaudens - Saint-Girons (128.0km) | 128.0km |
| 20-06 | 71 | 71 | Stage 3Pujaudran - Luz-Ardiden (173.0km) | 173.0km |
| 19-06 | 13 | | Stage 2Gignac - Carmaux (195.0km) | 195.0km |
| 18-06 | 115 | 115 | Stage 1Saint-Affrique - Roquefortf (10.0km) | 10.0km |
| 11-05 | 72 | | Tro-Bro Léon (1.Pro) | 203.0km |
| 10-05 | 20 | | Grand Prix du Morbihan (1.Pro) | 196.0km |
| 09-05 | 22 | | Tour du Finistère Pays de Quimper (1.1) | 168.0km |
| 08-05 | DNF | | Boucles de l'Aulne - Châteaulin (1.1) | 183.0km |
| 20-04 | DNF | | Amstel Gold Race (1.UWT) | 255.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 11-04 | DNF | | Stage 4Sillé-le-Guillaume - Le Mans (186.0km) | 186.0km |
| 10-04 | 21 | 23 | Stage 3Tiercé - Hambers (165.0km) | 165.0km |
| 09-04 | 7 | 22 | Stage 2La Bernardière - Beaupréau (158.0km) | 158.0km |
| 08-04 | 42 | 42 | Stage 1Machecoul-Saint-Même - La Baule-Escoublac (208.0km) | 208.0km |
| 05-04 | DNF | | Volta NXT Classic (1.1) | 192.0km |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 40 | | Klassement |
| 29-03 | 12 | 40 | Stage 5Brisighella - Forlì (132.0km) | 132.0km |
| 28-03 | 62 | 47 | Stage 4Brisighella - Brisighella (150.0km) | 150.0km |
| 27-03 | 75 | 44 | Stage 3Riccione - Cesena (142.0km) | 142.0km |
| 26-03 | 49 | 48 | Stage 2Riccione - Sogliano al Rubicone (163.0km) | 163.0km |
| 25-03 | 65 | 65 | Stage 1Ferrara - Bondeno (174.0km) | 174.0km |
| 19-03 | 55 | | Milano - Torino (1.Pro) | 174.0km |
| 05-03 | 31 | | Trofeo Laigueglia (1.Pro) | 190.0km |
| 02-03 | 55 | | Faun Drome Classic (1.Pro) | 189.0km |
| 01-03 | 52 | | Faun-Ardèche Classic (1.Pro) | 165.0km |
| | | Tour des Alpes-Maritimes (2.1) |
| 43 | | Klassement |
| 11 | | Punten |
| 3 | | Berg |
| 18 | | Jongeren |
| 23-02 | 28 | 43 | Stage 2Villefranche-sur-Mer - Vence (131.0km) | 131.0km |
| 22-02 | 70 | 57 | Stage 1Contes - Gourdon (162.0km) | 162.0km |
| 21-02 | 88 | | Classic Var (1.1) | 165.0km |