| 10-11 | 14 | | Tour de France Prudential Singapore Criterium (CRTP) | |
| 02-11 | 28 | | Tour de France Saitama Criterium (CRTP) | |
| 06-10 | 10 | | Paris - Tours Elite (1.Pro) | 213.0km |
| 01-10 | 72 | | Binche - Chimay - Binche / Mémorial Frank Vandenbroucke (1.1) | 198.0km |
| | | Skoda Tour de Luxembourg (2.Pro) |
| 22-09 | DNF | | Stage 5Mersch - Luxembourg (176.0km) | 176.0km |
| 21-09 | 82 | 74 | Stage 4Differdange - Differdange (15.0km) | 15.0km |
| 20-09 | 78 | 73 | Stage 3Rosport - Diekirch (201.0km) | 201.0km |
| 19-09 | 14 | 70 | Stage 2Junglinster - Schifflange (155.0km) | 155.0km |
| 18-09 | 75 | 75 | Stage 1Luxembourg - Luxembourg (156.0km) | 156.0km |
| 15-09 | 85 | | Grand Prix d'Isbergues - Pas de Calais (1.1) | 198.0km |
| 08-09 | 104 | | GP de Fourmies / La Voix du Nord (1.Pro) | 197.0km |
| | | Lidl Deutschland Tour (2.Pro) |
| 24-08 | DNF | | Stage 3Schwäbisch Gmünd - Villingen-Schwenningen (212.0km) | 212.0km |
| 23-08 | 71 | 63 | Stage 2Heilbronn - Schwäbisch Gmünd (173.0km) | 173.0km |
| 22-08 | 27 | 26 | Stage 1Schweinfurt - Heilbronn (177.0km) | 177.0km |
| 21-08 | 29 | 29 | PrologueSchweinfurt - Schweinfurt (2.0km) | 2.0km |
| 18-08 | 1 | | Criterium d'Avermes Portes de l'Allier (CRTP) | 90.0km |
| 15-08 | DNF | | Tour of Leuven - Memorial Jef Scherens (1.1) | 191.0km |
| | | Tour de France (2.UWT) |
| 106 | | Klassement |
| 5 | | Punten |
| 21-07 | 108 | 106 | Stage 21Monaco - Nice (33.0km) | 33.0km |
| 20-07 | 65 | 106 | Stage 20Nice - Col de la Couillole (132.0km) | 132.0km |
| 19-07 | 110 | 112 | Stage 19Embrun - Isola 2000 (144.0km) | 144.0km |
| 18-07 | 134 | 114 | Stage 18Gap - Barcelonnette (179.0km) | 179.0km |
| 17-07 | 132 | 107 | Stage 17Saint-Paul-Trois-Châteaux - Superdévoluy (177.0km) | 177.0km |
| 16-07 | 22 | 103 | Stage 16Gruissan - Nîmes (188.0km) | 188.0km |
| 14-07 | 115 | 107 | Stage 15Loudenvielle-Le Louron - Plateau de Beille (197.0km) | 197.0km |
| 13-07 | 105 | 105 | Stage 14Pau - Saint-Lary-Soulan (Pla d'Adet) (151.0km) | 151.0km |
| 12-07 | 22 | 104 | Stage 13Agen - Pau (165.0km) | 165.0km |
| 11-07 | 17 | 117 | Stage 12Aurillac - Villeneuve-sur-Lot (203.0km) | 203.0km |
| 10-07 | 146 | 122 | Stage 11Évaux-les-Bains - Le Lioran (211.0km) | 211.0km |
| 09-07 | 20 | 111 | Stage 10Orléans - Saint-Amand-Montrond (187.0km) | 187.0km |
| 07-07 | 1 | 113 | Stage 9Troyes - Troyes (199.0km) | 199.0km |
| 06-07 | 7 | 134 | Stage 8Semur-en-Auxois - Colombey-les-Deux-Églises (183.0km) | 183.0km |
| 05-07 | 148 | 136 | Stage 7Nuits-Saint-Georges - Gevrey-Chambertin (25.0km) | 25.0km |
| 04-07 | 18 | 136 | Stage 6Mâcon - Dijon (163.0km) | 163.0km |
| 03-07 | 14 | 137 | Stage 5Saint-Jean-de-Maurienne - Saint-Vulbas (177.0km) | 177.0km |
| 02-07 | 136 | 138 | Stage 4Pinerolo - Valloire (139.0km) | 139.0km |
| 01-07 | 12 | 116 | Stage 3Piacenza - Torino (230.0km) | 230.0km |
| 30-06 | 116 | 122 | Stage 2Cesenatico - Bologna (199.0km) | 199.0km |
| 29-06 | 110 | 110 | Stage 1Florence - Rimini (206.0km) | 206.0km |
| 23-06 | 4 | | National Road Championships - France (CN) | 240.0km |
| | | Baloise Belgium Tour (2.Pro) |
| 87 | | Klassement |
| 16-06 | 100 | 87 | Stage 5Brussel - Brussel (185.0km) | 185.0km |
| 15-06 | 111 | 87 | Stage 4Durbuy - Durbuy (177.0km) | 177.0km |
| 14-06 | 75 | 53 | Stage 3Turnhout - Scherpenheuvel-Zichem (188.0km) | 188.0km |
| 13-06 | 40 | 72 | Stage 2Merelbeke - Knokke-Heist (184.0km) | 184.0km |
| 12-06 | 72 | 72 | Stage 1Beringen - Beringen (12.0km) | 12.0km |
| | | 4 Jours de Dunkerque (2.Pro) |
| 12 | | Klassement |
| 19-05 | 30 | 12 | Stage 6Loon-Plage - Dunkerque (176.0km) | 176.0km |
| 18-05 | 15 | 11 | Stage 5Arques - Cassel (179.0km) | 179.0km |
| 17-05 | 19 | 22 | Stage 4Mazingarbe - Pont-à-Marcq (171.0km) | 171.0km |
| 16-05 | 34 | 33 | Stage 3Saint-Laurent-Blangy - Bouchain (165.0km) | 165.0km |
| 15-05 | 61 | 40 | Stage 2Wimereux - Abbeville (184.0km) | 184.0km |
| 14-05 | 27 | 27 | Stage 1Dunkerque - Le Touquet-Paris-Plage (173.0km) | 173.0km |
| 09-05 | 73 | | Circuit de Wallonie (1.1) | 190.0km |
| 05-05 | 21 | | Tro-Bro Léon (1.Pro) | 203.0km |
| 10-04 | 16 | | De Brabantse Pijl (1.Pro) | 195.0km |
| 07-04 | 54 | | Paris-Roubaix (1.UWT) | 260.0km |
| 03-04 | 80 | | Scheldeprijs (1.Pro) | 205.0km |
| 27-03 | DNF | | Dwars door Vlaanderen (1.UWT) | 188.0km |
| 24-03 | 37 | | Gent-Wevelgem in Flanders Fields (1.UWT) | 253.0km |
| 20-03 | 112 | | Classic Brugge-De Panne (1.UWT) | 198.0km |
| 15-03 | 13 | | Bredene Koksijde Classic (1.Pro) | 202.0km |
| 14-03 | 18 | | Grand Prix de Denain - Porte du Hainaut (1.Pro) | 196.0km |
| | | Paris-Nice (2.UWT) |
| 09-03 | DNF | | Stage 7Nice - La Madone d'Utelle (104.0km) | 104.0km |
| 08-03 | 121 | 95 | Stage 6Sisteron - La Colle-sur-Loup (198.0km) | 198.0km |
| 07-03 | 12 | 92 | Stage 5Saint-Sauveur-de-Montagut - Sisteron (193.0km) | 193.0km |
| 06-03 | 118 | 99 | Stage 4Châlon-sur-Saône - Mont Brouilly (183.0km) | 183.0km |
| 05-03 | 13 | 66 | Stage 3Auxerre - Auxerre (26.0km) | 26.0km |
| 04-03 | 20 | 78 | Stage 2Thoiry - Montargis (177.0km) | 177.0km |
| 03-03 | 78 | 78 | Stage 1Les Mureaux - Les Mureaux (157.0km) | 157.0km |
| 27-02 | 17 | | Le Samyn (1.1) | 202.0km |
| 25-02 | 32 | | Kuurne-Brussel-Kuurne (1.Pro) | 196.0km |