| 29-12 | 13 | | UCI Cyclo-cross World Cup - Besançon (CDM) | |
| 22-12 | 25 | | UCI Cyclo-cross World Cup - Zonhoven (CDM) | |
| 21-12 | 29 | | UCI Cyclo-cross World Cup - Hulst (CDM) | |
| 01-12 | 13 | | UCI Cyclo-cross World Cup - Dublin (CDM) | |
| 24-11 | 3 | | Coupe de France de Cyclo-Cross #6 - Troyes (C2) | |
| 23-11 | 8 | | Coupe de France de Cyclo-Cross #5 - Troyes (C2) | |
| 21-09 | 62 | | SUPER 8 Classic (1.Pro) | 197.0km |
| 18-09 | 20 | | Grand Prix de Wallonie (1.Pro) | 202.0km |
| 15-09 | DNF | | Grand Prix Cycliste de Montréal (1.UWT) | 209.0km |
| 13-09 | 26 | | Grand Prix Cycliste de Québec (1.UWT) | 201.0km |
| 08-09 | 121 | | GP de Fourmies / La Voix du Nord (1.Pro) | 197.0km |
| 28-08 | DNF | | Muur Classic Geraardsbergen (1.1) | 180.0km |
| 25-08 | 9 | | Bretagne Classic - Ouest-France (1.UWT) | 259.0km |
| | | Tour du Limousin (2.1) |
| 6 | | Klassement |
| 16-08 | 14 | 6 | Stage 4Oradour-sur-Glane - Limoges (161.0km) | 161.0km |
| 15-08 | 3 | 8 | Stage 3Mansac - Argentat (189.0km) | 189.0km |
| 14-08 | 6 | 11 | Stage 2 Saint-Aulaye-Puymangou - Terrasson-Lavilledieu (193.0km) | 193.0km |
| 13-08 | 5 | 9 | Stage 1Boisseuil - Auzances (174.0km) | 174.0km |
| 11-08 | 17 | | La Polynormande (1.1) | 168.0km |
| | | Ethias-Tour de Wallonie (2.Pro) |
| 20 | | Klassement |
| 27 | | Punten |
| 26-07 | 12 | 20 | Stage 5Mouscron - Thuin (192.0km) | 192.0km |
| 25-07 | 16 | 25 | Stage 4Verviers - Herve (190.0km) | 190.0km |
| 24-07 | 31 | 26 | Stage 3Arlon - La Roche-en-Ardenne (192.0km) | 192.0km |
| 23-07 | 9 | 19 | Stage 2Saint-Ghislain - Ouffet (188.0km) | 188.0km |
| 22-07 | 32 | 33 | Stage 1Tournai - Fleurus (178.0km) | 178.0km |
| | | Tour de l'Ain (2.1) |
| 24 | | Punten |
| 15-07 | 44 | | Stage 3Lagnieu - L'Île Chambod (153.0km) | 153.0km |
| 14-07 | 42 | 41 | Stage 2Saint-Vulbas - Lélex Monts-Jura (145.0km) | 145.0km |
| 13-07 | 12 | 13 | Stage 1Laiz - Bourg-en-Bresse (132.0km) | 132.0km |
| 23-06 | 20 | | National Road Championships - France (CN) | 240.0km |
| | | Critérium du Dauphiné (2.UWT) |
| 71 | | Klassement |
| 15 | | Punten |
| 09-06 | 83 | 71 | Stage 8Thônes - Plateau des Glières (152.0km) | 152.0km |
| 08-06 | 70 | 77 | Stage 7Albertville - Samoëns (145.0km) | 145.0km |
| 07-06 | 79 | 94 | Stage 6Hauterives - Le Collet d'Allevard (173.0km) | 173.0km |
| 06-06 | | 118 | Stage 5Amplepuis - Saint-Priest (200.0km) | 200.0km |
| 05-06 | 143 | 119 | Stage 4Saint-Germain-Laval - Neulise (34.0km) | 34.0km |
| 04-06 | 88 | 105 | Stage 3 Celles-sur-Durolle - Les Estables (181.0km) | 181.0km |
| 03-06 | 139 | 111 | Stage 2Gannat - Col de la Loge (142.0km) | 142.0km |
| 02-06 | 4 | 7 | Stage 1Saint-Pourçain-sur-Sioule - Saint-Pourçain-sur-Sioule (174.0km) | 174.0km |
| | | Boucles de la Mayenne - Crédit Mutuel (2.Pro) |
| 18 | | Klassement |
| 22 | | Punten |
| 26-05 | 9 | 18 | Stage 3Quelaines-Saint-Gault - Laval (169.0km) | 169.0km |
| 25-05 | 12 | 18 | Stage 2Le Ham - Villaines-la-Juhel (208.0km) | 208.0km |
| 23-05 | 26 | 26 | PrologueLaval - Laval (5.0km) | 5.0km |
| 19-05 | 84 | | Antwerp Port Epic / Sels Trophy (1.1) | 190.0km |
| 12-05 | 24 | | Boucles de l'Aulne - Châteaulin (1.1) | 181.0km |
| 11-05 | 7 | | Tour du Finistère (1.1) | 199.0km |
| 05-05 | 2 | | Tro-Bro Léon (1.Pro) | 203.0km |
| 04-05 | 4 | | Grand Prix du Morbihan (1.Pro) | 196.0km |
| | | Tour de Romandie (2.UWT) |
| 75 | | Klassement |
| 21 | | Punten |
| 28-04 | 7 | 75 | Stage 5Vernier - Vernier (150.0km) | 150.0km |
| 27-04 | 117 | 87 | Stage 4Bains de Saillon - Leysin (151.0km) | 151.0km |
| 26-04 | 109 | 70 | Stage 3Oron - Oron (15.0km) | 15.0km |
| 25-04 | 82 | 68 | Stage 2Freiburg - Salvan (171.0km) | 171.0km |
| 24-04 | 8 | 14 | Stage 1Château-d'Œx - Freiburg (165.0km) | 165.0km |
| 23-04 | 19 | 19 | ProloguePayerne - Payerne (2.0km) | 2.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 5 | | Klassement |
| 9 | | Punten |
| 05-04 | 3 | 5 | Stage 4Marolles-les-Braults - Le Mans (174.0km) | 174.0km |
| 04-04 | 10 | 16 | Stage 3Segré-en-Anjou Bleu - Château-Gontier (159.0km) | 159.0km |
| 03-04 | 19 | 19 | Stage 2Chateaubriant - Saumur (162.0km) | 162.0km |
| 02-04 | 40 | 43 | Stage 1Fontenay-le-Comte - Saint-Jean-de-Monts (210.0km) | 210.0km |
| 29-03 | 19 | | La Route Adélie de Vitré (1.1) | |
| 27-03 | 2 | | Paris - Camembert (1.1) | 205.0km |
| 24-03 | 5 | | La Roue Tourangelle (1.1) | 200.0km |
| 17-03 | 37 | | Cholet Agglo Tour (1.1) | 205.0km |
| 16-03 | 18 | | Classic Loire Atlantique (1.1) | 182.0km |
| | | Tirreno-Adriatico (2.UWT) |
| 67 | | Klassement |
| 40 | | Punten |
| 10-03 | 9 | 67 | Stage 7San Benedetto del Tronto - San Benedetto del Tronto (154.0km) | 154.0km |
| 09-03 | 54 | 72 | Stage 6Sassoferrato - Cagli (180.0km) | 180.0km |
| 08-03 | 109 | 105 | Stage 5Torricella Sicura - Valle Castellana (146.0km) | 146.0km |
| 07-03 | 107 | 106 | Stage 4Arrone - Giulianova (207.0km) | 207.0km |
| 06-03 | 113 | 115 | Stage 3Volterra - Gualdo Tadino (220.0km) | 220.0km |
| 05-03 | 51 | 131 | Stage 2Camaiore - Follonica (198.0km) | 198.0km |
| 04-03 | 163 | 163 | Stage 1Lido di Camaiore - Lido di Camaiore (10.0km) | 10.0km |
| 02-03 | 42 | | Strade Bianche (1.UWT) | 215.0km |
| 25-02 | 15 | | Faun Drome Classic (1.1) | 189.0km |
| 24-02 | 53 | | Faun-Ardèche Classic (1.Pro) | 169.0km |
| 18-02 | 35 | | X²O Badkamers Trofee (GC) | |
| 10-02 | 37 | | Telenet Superprestige Cyclocross (GC) | |
| 04-02 | 16 | | UCI Cyclo-cross World Championships Tabor (CM) | |
| 28-01 | 8 | | UCI Cyclo-cross World Cup - Hoogerheide (CDM) | |
| 27-01 | 14 | | X²O Badkamers Trofee Flandriencross - Hamme (C1) | |
| 21-01 | 10 | | UCI Cyclo-cross World Cup - Benidorm (CDM) | |
| 14-01 | 1 | | French National Championships CX (CN) | |
| 07-01 | 25 | | UCI Cyclo-cross World Cup - Zonhoven (CDM) | |
| 06-01 | 12 | | Hexia Cyclocross Gullegem (C2) | |