| | | Tour of Taihu Lake (2.1) |
| 28 | | Klassement |
| 14-10 | 51 | 28 | Stage 8Wuxing - Changxing (137.0km) | 137.0km |
| 13-10 | 35 | 29 | Stage 7Wujiang - Wujiang (116.0km) | 116.0km |
| 12-10 | 43 | 29 | Stage 6Nantong - Haimen (146.0km) | 146.0km |
| 11-10 | 56 | 28 | Stage 5Jiangnan - Jiangnan (98.0km) | 98.0km |
| 10-10 | 54 | 27 | Stage 4Jinhu - Jinhu (88.0km) | 88.0km |
| 09-10 | 23 | 27 | Stage 3Jurong Chishanhu - Maoshan (130.0km) | 130.0km |
| 08-10 | 33 | 44 | Stage 2Wuxi - Binhu (85.0km) | 85.0km |
| 07-10 | 45 | 45 | Stage 1Wuxi - Wuxi (5.0km) | 5.0km |
| 23-09 | 19 | | Tour du Gévaudan Occitanie (1.2) | |
| 20-09 | 39 | | Coppa Sabatini - Gran Premio città di Peccioli (1.1) | |
| 19-09 | 56 | | Giro della Toscana - Memorial Alfredo Martini (1.1) | |
| 15-09 | DNF | | Coppa Agostoni (1.1) | 191.0km |
| 09-09 | 38 | | Tour du Doubs (1.1) | |
| | | Tour du Limousin (2.1) |
| 24 | | Klassement |
| 18-08 | 52 | 24 | Stage 4Bellac - Limoges (163.0km) | 163.0km |
| 17-08 | 44 | 25 | Stage 3Egletons - Uzerche (190.0km) | 190.0km |
| 16-08 | 22 | 23 | Stage 2Rouffiac - Coteau de Grèzes (176.0km) | 176.0km |
| 15-08 | 62 | 62 | Stage 1Saint-Just-le-Martel - Bonnat (172.0km) | 172.0km |
| | | Vuelta a Burgos (2.HC) |
| 42 | | Klassement |
| 13 | | Berg |
| 11-08 | 63 | 42 | Stage 5Salas de los Infantes - Lagunas de Neila (120.0km) | 120.0km |
| 10-08 | 49 | 35 | Stage 4Monasterio de San Pedro Cardeña - Ciudad Romana de Clunia (165.0km) | 165.0km |
| 09-08 | 38 | 36 | Stage 3Valle de Sedano - Espinosa de los Monteros (149.0km) | 149.0km |
| 08-08 | 40 | 55 | Stage 2Belorado - Castrojeriz (163.0km) | 163.0km |
| 07-08 | 55 | 55 | Stage 1Burgos - Burgos (151.0km) | 151.0km |
| 05-08 | 55 | | La Poly Normande (1.1) | |
| 31-07 | 13 | | Circuito de Getxo Memorial Ricardo Otxoa (1.1) | |
| 25-07 | 49 | | Prueba Villafranca-Ordiziako Klasika (1.1) | |
| 01-07 | 53 | | National Road Championships - France (CN) | 253.0km |
| 24-06 | 50 | | Paris-Chauny (classique) (1.2) | |
| | | Boucles de la Mayenne (2.1) |
| 37 | | Klassement |
| 03-06 | 53 | 37 | Stage 3Congrier - Laval (184.0km) | 184.0km |
| 02-06 | 40 | 39 | Stage 2Saint-Aignan-de-Couptrain - Pré-en-Pail-Saint-Samson (172.0km) | 172.0km |
| 01-06 | 49 | 67 | Stage 1Saint-Berthevin - Gorron (176.0km) | 176.0km |
| 31-05 | 99 | 99 | PrologueLaval - Laval (4.0km) | 4.0km |
| 27-05 | 41 | | Boucles de l Aulne - Chateaulin (1.1) | |
| 26-05 | 40 | | Grand Prix de Plumelec-Morbihan (1.1) | |
| | | Vuelta Aragon (2.1) |
| 38 | | Klassement |
| 13-05 | 41 | 38 | Stage 3Sabiñánigo - Cerler (130.0km) | 130.0km |
| 12-05 | 67 | 31 | Stage 2Huesca - Zaragoza (170.0km) | 170.0km |
| 11-05 | 29 | 29 | Stage 1Teruel - Caspe (184.0km) | 184.0km |
| | | Rhône-Alpes Isère Tour (2.2) |
| 15 | | Klassement |
| 39 | | Punten |
| 12 | | Berg |
| 06-05 | 44 | 15 | Stage 4Bourgoin-Jallieu - Charvieu-Chavagneux (171.0km) | 171.0km |
| 05-05 | 32 | 16 | Stage 3Vaulx-Milieu - Saint-Maurice-l'Exil (171.0km) | 171.0km |
| 04-05 | 56 | 19 | Stage 2Aéroport de Lyon-Saint Exupéry - Saint-Laurent-de-Mure (142.0km) | 142.0km |
| 03-05 | 51 | 51 | Stage 1Charvieu-Chavagneux - Châteauvilain (143.0km) | 143.0km |
| 22-04 | DNS | | Giro dell'Appennino (1.1) | 194.0km |
| 18-04 | DNF | | La Flèche Wallonne (1.UWT) | 198.0km |
| 14-04 | DNF | | Tour du Finistère (1.1) | 190.0km |
| 10-04 | 59 | | Paris-Camembert (1.1) | 196.0km |
| | | Circuit Cycliste Sarthe-Pays de la Loire (2.1) |
| 34 | | Klassement |
| 06-04 | 46 | 34 | Stage 4Brûlon - Sablé-sur-Sarthe (183.0km) | 183.0km |
| 05-04 | 34 | 35 | Stage 3Abbaye de l'Epau - Pré-en-Pail-Saint-Samson (199.0km) | 199.0km |
| 04-04 | 79 | 77 | Stage 2Riaillé - Ancenis (183.0km) | 183.0km |
| 03-04 | 48 | 48 | Stage 1Abbaye de l'Epau - Baugé-en-Anjou (193.0km) | 193.0km |
| 30-03 | 73 | | Route Adélie de Vitré (1.1) | |
| 24-03 | DNF | | Classic Loire Atlantique (1.1) | |
| 25-02 | DNF | | Royal Bernard Drome Classic (1.1) | |
| 24-02 | DNF | | Classic de l'Ardèche Rhône Crussol (1.1) | |
| | | 50ème Tour Cycliste International du Haut Var Matin (2.1) |
| 64 | | Klassement |
| 18-02 | 46 | 64 | Stage 2Vidauban - Flayosc (188.0km) | 188.0km |
| 17-02 | 75 | 75 | Stage 1Le Cannet des Maures - Fayence (169.0km) | 169.0km |
| | | 3ème Tour Cycliste International La Provence (2.1) |
| 47 | | Klassement |
| 16 | | Berg |
| 11-02 | 61 | 47 | Stage 3Aix-en-Provence - Marseille (167.0km) | 167.0km |
| 10-02 | 50 | 48 | Stage 2La Ciotat - Gemenos (153.0km) | 153.0km |
| 09-02 | 62 | 73 | Stage 1Aubagne - Istres (184.0km) | 184.0km |
| 08-02 | 78 | 78 | PrologueLe Castellet - Le Castellet (5.0km) | 5.0km |
| 28-01 | 57 | | Grand Prix Cycliste la Marseillaise (1.1) | 145.0km |