| 12-10 | 63 | | Paris - Tours Elite (1.Pro) | 211.0km |
| 11-10 | 52 | | Tour de Vendée (1.1) | 202.0km |
| 28-09 | 96 | | Paris-Chauny (1.1) | 188.0km |
| 21-09 | 79 | | Grand Prix d'Isbergues - Pas de Calais (1.1) | 201.0km |
| 31-08 | 59 | | Grand Prix de Plouay (1.2) | 186.0km |
| | | Tour du Limousin (2.1) |
| 20 | | Klassement |
| 14 | | Berg |
| 22-08 | 11 | 20 | Stage 4Bonneval - Limoges (164.0km) | 164.0km |
| 21-08 | 11 | 20 | Stage 3Saint-Jal - Masseret (182.0km) | 182.0km |
| 20-08 | 24 | 23 | Stage 2Thiviers - Grèzes (174.0km) | 174.0km |
| 19-08 | 41 | 42 | Stage 1Panazol - La Courtine (184.0km) | 184.0km |
| 17-08 | 3 | | La Polynormande (1.1) | 168.0km |
| | | Tour de l'Ain (2.1) |
| 10 | | Klassement |
| 13 | | Punten |
| 15 | | Berg |
| 08-08 | 9 | 10 | Stage 3Plateau d'Hauteville - Belley (130.0km) | 130.0km |
| 07-08 | 16 | 13 | Stage 2Saint-Vulbas - Lélex Monts-Jura (153.0km) | 153.0km |
| 06-08 | 8 | 8 | Stage 1Feillens - Lagnieu (163.0km) | 163.0km |
| | | Tour Alsace (2.2) |
| 3 | | Klassement |
| 6 | | Punten |
| 7 | | Berg |
| 03-08 | 4 | 3 | Stage 5Ribeauville - Champ du Feu (135.0km) | 135.0km |
| 02-08 | 36 | 4 | Stage 4Ferrette - Altkirch (133.0km) | 133.0km |
| 01-08 | 4 | 4 | Stage 3Velleminfroy - La Planche des Belles Filles (141.0km) | 141.0km |
| 31-07 | 65 | 72 | Stage 2Rust (Europapark) - Selestat (168.0km) | 168.0km |
| 30-07 | 28 | 72 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| 29-06 | DNF | | National Road Championships - France (CN) | 231.0km |
| 22-06 | DNS | | Andorra MoraBanc Clàssica (1.1) | 138.0km |
| | | La Route d'Occitanie - CIC (2.1) |
| 19 | | Klassement |
| 35 | | Punten |
| 21-06 | 12 | 19 | Stage 4Saint-Gaudens - Saint-Girons (128.0km) | 128.0km |
| 20-06 | 20 | 20 | Stage 3Pujaudran - Luz-Ardiden (173.0km) | 173.0km |
| 19-06 | 60 | | Stage 2Gignac - Carmaux (195.0km) | 195.0km |
| 18-06 | 37 | 37 | Stage 1Saint-Affrique - Roquefortf (10.0km) | 10.0km |
| | | Boucles de la Mayenne (2.Pro) |
| 37 | | Klassement |
| 39 | | Punten |
| 01-06 | 46 | 37 | Stage 3Javron-les-Chapelles - Laval (163.0km) | 163.0km |
| 31-05 | 15 | 39 | Stage 2Sainte-Suzanne - Bais (210.0km) | 210.0km |
| 30-05 | 35 | 67 | Stage 1Saint-Berthevin - Juvigné (166.0km) | 166.0km |
| 29-05 | 104 | 104 | PrologueLaval - Laval (5.0km) | 5.0km |
| 26-05 | 34 | | Mercan'Tour Classic Alpes-Maritimes (1.1) | 152.0km |
| 11-05 | DNF | | Tro-Bro Léon (1.Pro) | 203.0km |
| 10-05 | 18 | | Grand Prix du Morbihan (1.Pro) | 196.0km |
| 09-05 | 18 | | Tour du Finistère Pays de Quimper (1.1) | 168.0km |
| 08-05 | 33 | | Boucles de l'Aulne - Châteaulin (1.1) | 183.0km |
| 20-04 | 19 | | Tour du Doubs (1.1) | 196.0km |
| 19-04 | DNF | | Tour du Jura Cycliste (1.1) | 176.0km |
| 18-04 | 18 | | Classic Grand Besançon Doubs (1.1) | 168.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 11 | | Klassement |
| 24 | | Punten |
| 11-04 | 13 | 11 | Stage 4Sillé-le-Guillaume - Le Mans (186.0km) | 186.0km |
| 10-04 | 11 | 12 | Stage 3Tiercé - Hambers (165.0km) | 165.0km |
| 09-04 | 23 | 30 | Stage 2La Bernardière - Beaupréau (158.0km) | 158.0km |
| 08-04 | 43 | 43 | Stage 1Machecoul-Saint-Même - La Baule-Escoublac (208.0km) | 208.0km |
| 04-04 | 67 | | La Route Adélie de Vitré (1.1) | 174.0km |
| 02-04 | 54 | | Paris - Camembert (1.1) | 199.0km |
| 30-03 | 36 | | La Roue Tourangelle (1.1) | 197.0km |
| 02-03 | 92 | | Faun Drome Classic (1.Pro) | 189.0km |
| 01-03 | 119 | | Faun-Ardèche Classic (1.Pro) | 165.0km |
| | | Etoile de Bessèges - Tour du Gard (2.1) |
| 07-02 | DNS | | Stage 3Bessèges - Bessèges (136.0km) | 136.0km |
| 06-02 | 144 | 142 | Stage 2Domessargues - Marguerittes (165.0km) | 165.0km |
| 05-02 | 118 | 118 | Stage 1Bellegarde - Bellegarde (159.0km) | 159.0km |
| 02-02 | 120 | | Grand Prix Cycliste de Marseille La Marseillaise (1.1) | 164.0km |