| 21-09 | DNF | | Grand Prix de Denain - Porte du Hainaut (1.Pro) | |
| 19-09 | 109 | | Grand Prix d'Isbergues (1.1) | 199.0km |
| 18-09 | DNF | | Primus Classic (1.Pro) | 197.0km |
| 12-09 | 124 | | GP de Fourmies / La Voix du Nord (1.Pro) | 197.0km |
| 29-08 | DNF | | Bretagne Classic - Ouest-France (1.UWT) | 250.0km |
| | | Tour Poitou - Charentes (2.1) |
| 27-08 | DNF | | Stage 5Villefagnan - Poitiers (166.0km) | 166.0km |
| 26-08 | 37 | 72 | Stage 4Monts-sur-Guesnes - Loudun (23.0km) | 23.0km |
| 26-08 | 86 | 77 | Stage 3Moncontour - Loudun (109.0km) | 109.0km |
| 25-08 | 78 | 74 | Stage 2Parthenay - Ruffec (193.0km) | 193.0km |
| 24-08 | 91 | 91 | Stage 1Pons - Parthenay (198.0km) | 198.0km |
| 15-08 | 9 | | La Polynormande (1.1) | 168.0km |
| | | Arctic Race of Norway (2.Pro) |
| 69 | | Klassement |
| 18 | | Punten |
| 8 | | Berg |
| 08-08 | 78 | 69 | Stage 4Gratangen - Harstad (163.0km) | 163.0km |
| 07-08 | 55 | 67 | Stage 3Finnsnes - Målselv (184.0km) | 184.0km |
| 06-08 | 81 | 86 | Stage 2Nordkjosbotn - Kilpisjärvi (178.0km) | 178.0km |
| 05-08 | 92 | 92 | Stage 1Tromsø - Tromsø (143.0km) | 143.0km |
| | | Ethias Tour de Wallonie (2.Pro) |
| 80 | | Klassement |
| 3 | | Berg |
| 24-07 | 95 | 80 | Stage 5Dinant - Quaregnon (183.0km) | 183.0km |
| 23-07 | 92 | 73 | Stage 4Neufchâteau - Fleurus (206.0km) | 206.0km |
| 22-07 | 81 | 81 | Stage 3Plombières - Erezee (179.0km) | 179.0km |
| 21-07 | 127 | 103 | Stage 2Heusden-Zolder - Heusden-Zolder (120.0km) | 120.0km |
| 20-07 | 72 | 74 | Stage 1Genappe - Héron (185.0km) | 185.0km |
| 20-06 | 109 | | National Road Championships - France (CN) | 242.0km |
| 17-06 | 26 | | National Road Championships - France TT (CN) | 45.0km |
| | | Giro d'Italia (2.UWT) |
| 114 | | Klassement |
| 55 | | Punten |
| 55 | | Berg |
| 30-05 | 54 | 114 | Stage 21Senago - Milano (30.0km) | 30.0km |
| 29-05 | 75 | 114 | Stage 20Verbania - Alpe Motta (Valle Spluga) (164.0km) | 164.0km |
| 28-05 | 90 | 121 | Stage 19Abbiategrasso - Alpe di Mera (Valsesia) (176.0km) | 176.0km |
| 27-05 | 95 | 124 | Stage 18Rovereto - Stradella (231.0km) | 231.0km |
| 26-05 | 93 | 126 | Stage 17Canazei - Sega di Ala (193.0km) | 193.0km |
| 24-05 | 135 | 132 | Stage 16Sacile - Cortina d'Ampezzo (212.0km) | 212.0km |
| 23-05 | 118 | 126 | Stage 15Grado - Gorizia (147.0km) | 147.0km |
| 22-05 | 123 | 126 | Stage 14Cittadella - Monte Zoncolan (205.0km) | 205.0km |
| 21-05 | 113 | 128 | Stage 13Ravenna - Verona (198.0km) | 198.0km |
| 20-05 | 144 | 128 | Stage 12Siena - Bagno di Romagna (212.0km) | 212.0km |
| 19-05 | 116 | 129 | Stage 11Perugia - Montalcino (162.0km) | 162.0km |
| 17-05 | 117 | 128 | Stage 10L'Aquila - Foligno (139.0km) | 139.0km |
| 16-05 | 131 | 127 | Stage 9Castel di Sangro - Campo Felice (158.0km) | 158.0km |
| 15-05 | 8 | 120 | Stage 8Foggia - Guardia Sanframondi (170.0km) | 170.0km |
| 14-05 | 114 | 151 | Stage 7Notaresco - Termoli (181.0km) | 181.0km |
| 13-05 | 141 | 150 | Stage 6Grotte di Frasassi - Ascoli Piceno (160.0km) | 160.0km |
| 12-05 | 150 | 144 | Stage 5Modena - Cattolica (177.0km) | 177.0km |
| 11-05 | 146 | 135 | Stage 4Piacenza - Sestola (187.0km) | 187.0km |
| 10-05 | 117 | 117 | Stage 3Biella - Canale (190.0km) | 190.0km |
| 09-05 | 151 | 120 | Stage 2Stupinigi - Novara (179.0km) | 179.0km |
| 08-05 | 125 | 125 | Stage 1Torino - Torino (8.0km) | 8.0km |
| | | Tour de Romandie (2.UWT) |
| 01-05 | DNF | | Stage 4Sion - Thyon (161.0km) | 161.0km |
| 30-04 | 127 | 119 | Stage 3Estavayer-le-Lac - Estavayer-le-Lac (168.0km) | 168.0km |
| 29-04 | 108 | 115 | Stage 2La Neuveville - Saint-Imier (165.0km) | 165.0km |
| 28-04 | 109 | 112 | Stage 1Aigle - Martigny (168.0km) | 168.0km |
| 27-04 | 85 | 85 | PrologueOron - Oron (4.0km) | 4.0km |
| 04-04 | 54 | | La Roue Tourangelle (1.1) | 204.0km |
| 28-03 | 114 | | Cholet - Pays de la Loire (1.1) | 201.0km |
| 24-03 | 134 | | Oxyclean Classic Brugge-De Panne (1.UWT) | 203.0km |
| 20-03 | 136 | | Milano-Sanremo (1.UWT) | 299.0km |
| 17-03 | DNF | | Danilith Nokere Koerse (1.Pro) | 195.0km |
| 02-03 | 66 | | Le Samyn (1.1) | 205.0km |
| 27-02 | DNF | | Omloop Het Nieuwsblad Elite (1.UWT) | 200.0km |
| | | Etoile de Bessèges (2.1) |
| 42 | | Klassement |
| 12 | | Berg |
| 07-02 | 39 | 42 | Stage 5Alès - Alès (11.0km) | 11.0km |
| 06-02 | 66 | 50 | Stage 4Rousson - Saint-Siffret (152.0km) | 152.0km |
| 05-02 | 23 | 35 | Stage 3Bessèges - Bessèges (156.0km) | 156.0km |
| 04-02 | 37 | 45 | Stage 2Saint-Geniès - La Calmette (154.0km) | 154.0km |
| 03-02 | 64 | 64 | Stage 1Bellegarde - Bellegarde (141.0km) | 141.0km |