| | | La Mi-Août en Bretagne (2.2) |
| 12-08 | DNF | | Stage 2Pont Scor - Cléguer | 165.0km |
| 11-08 | 17 | 17 | Stage 1Plouëc-du-Trieux - Pontrieux | 171.0km |
| | | Kreiz Breizh Elites (2.2) |
| 26 | | Standings |
| 25-07 | 39 | 26 | Stage 4Carhaix - Rostrenen | 169.0km |
| 24-07 | 49 | 21 | Stage 3Plouguernével - Ploërdut | 102.0km |
| 24-07 | 20 | 23 | Stage 2Cleden-Poher - Carhaix | 96.0km |
| 23-07 | 23 | 23 | Stage 1Calanhel - Plouray | 174.0km |
| | | Boucles de la Mayenne (2.2) |
| 31 | | Standings |
| 19-06 | 53 | 31 | Stage 3Renazé - Laval | 172.0km |
| 18-06 | 63 | 30 | Stage 2Saint-Denis-du-Maine - Évron | 84.0km |
| 17-06 | 71 | 31 | Stage 1Saint-Berthevin - Sainte-Suzanne | 180.0km |
| 16-06 | 35 | 35 | PrologueLaval - Laval | 4.0km |
| 12-06 | 8 | | Val d'Ille U Classic 35 (1.2) | 185.0km |
| 29-05 | 52 | | Boucles de l'Aulne (1.1) | |
| | | Circuit de Lorraine Professionnel (2.1) |
| 14 | | Standings |
| 22-05 | 19 | 14 | Stage 5Metz - Hayange | 149.0km |
| 21-05 | 20 | 15 | Stage 4Baccarat - Rehlingen-Siersburg | 175.0km |
| 20-05 | 14 | 15 | Stage 3Château-Salins - Saint-Dié-des-Vosges | 206.0km |
| 19-05 | 6 | 17 | Stage 2Briey - Commercy | 168.0km |
| 18-05 | 39 | 40 | Stage 1Amnéville - Longwy | 166.0km |
| | | Tour de Picardie (2.1) |
| 16 | | Standings |
| 2 | | Mountain |
| 15-05 | 43 | 16 | Stage 3Charly-sur-Marne - Péronne | 189.0km |
| 14-05 | 28 | 16 | Stage 2Villers-Saint-Paul - Château-Thierry | 166.0km |
| 13-05 | 22 | 23 | Stage 1Abbeville - La Neuville-en-Hez | 162.0km |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 10 | | Standings |
| 01-05 | 31 | 10 | Stage 7Hémonstoir - Loudéac | 151.0km |
| 30-04 | 26 | 9 | Stage 6Morlaix - Plaintel | 155.0km |
| 29-04 | 15 | 7 | Stage 5Fouesnant - Morlaix | 175.0km |
| 28-04 | 54 | 9 | Stage 4Saint Avé - Fouesnant | 158.0km |
| 27-04 | 3 | 8 | Stage 3Guérande - Saint Avé | 151.0km |
| 26-04 | 29 | 37 | Stage 2Rennes - Guérande | 193.0km |
| 25-04 | 50 | 56 | Stage 1Argentré du Plessis - Argentré du Plessis | 150.0km |
| 14-04 | 51 | | GP de Denain Porte du Hainaut (1.1) | 199.0km |
| 10-04 | 101 | | Paris-Roubaix (HIS) | 259.0km |
| 03-04 | 42 | | Flèche d'Emeraude - Saint Malo (1.1) | 182.0km |
| | | Tour de Normandie (2.2) |
| 7 | | Standings |
| 27-03 | 49 | 7 | Stage 7Bagnoles de l'Orne - Caen | 143.0km |
| 26-03 | 3 | 7 | Stage 6Gouville-sur-Mer - Bagnoles de l'Orne | 172.0km |
| 25-03 | 33 | 32 | Stage 5Domfront - Agon-Coutainville | 168.0km |
| 24-03 | 38 | 38 | Stage 4Elbeuf - Flers | 188.0km |
| 23-03 | 30 | 41 | Stage 3Grand-Couronne - Elbeuf | 72.0km |
| 23-03 | 34 | 43 | Stage 2Forges-les-Eaux - Grand-Couronne | 84.0km |
| 22-03 | 44 | 101 | Stage 1Colombelles - Forges-les-Eaux | 198.0km |
| 21-03 | 105 | 105 | PrologueMondeville - Mondeville | 4.0km |
| 19-03 | 39 | | Classic Loire Atlantique (1.1) | 184.0km |
| 13-03 | 82 | | Paris-Troyes (1.2) | 172.0km |
| 06-03 | 35 | | Grand Prix de la Ville de Lillers Souvenir Bruno Comini (1.2) | 171.0km |
| | | Etoile de Bessèges (2.1) |
| 62 | | Standings |
| 06-02 | 78 | 62 | Stage 5Gagnières - Bessèges | 145.0km |
| 05-02 | 64 | 64 | Stage 4Alès - Alès | 152.0km |
| 04-02 | 74 | 83 | Stage 3Saint-Victor-la-Coste - Laudun-l'Ardoise | 152.0km |
| 03-02 | 51 | 92 | Stage 2Nîmes - Saint-Ambroix | 149.0km |
| 02-02 | 91 | 92 | Stage 1Beaucaire - Bellegarde | 153.0km |
| 09-01 | 43 | | French National Championships CX (CN) | |