| 02-11 | 17 | | Tour de France EFGH Singapore Criterium (CRTP) | |
| 11-10 | DNF | | Il Lombardia (1.UWT) | 238.0km |
| 07-10 | 34 | | Tre Valli Varesine (1.Pro) | 200.0km |
| 28-09 | 3 | | UCI World Championship Kigali (CM) | 267.0km |
| | | Škoda Tour de Luxembourg (2.Pro) |
| 6 | | Klassement |
| 3 | | Punten |
| 17 | | Berg |
| 3 | | Jongeren |
| 21-09 | 2 | 6 | Stage 5Mersch - Luxembourg (176.0km) | 176.0km |
| 20-09 | 3 | 12 | Stage 4Niederanven - Niederanven (26.0km) | 26.0km |
| 19-09 | 25 | 24 | Stage 3Mertert - Vianden (170.0km) | 170.0km |
| 18-09 | 29 | 15 | Stage 2Remich - Mamer (168.0km) | 168.0km |
| 17-09 | 16 | 16 | Stage 1Luxembourg - Luxembourg (152.0km) | 152.0km |
| 17-08 | 4 | | Profwielerronde Etten-Leur (CRTP) | |
| 09-08 | 1 | | Criterium Cycliste Professionnel Dun Le Palestel (CRTP) | |
| 08-08 | 2 | | Criterium Arc-en-Ciel Saint-Amand-Montrond (CRTP) | |
| 07-08 | 1 | | Criterium Professionnel Avermes Portes de l'Allier Mewa (CRTP) | |
| 06-08 | 2 | | Critérium International Marcoles en Chataigneraie souvenir Lucien Cantournet (CRTP) | |
| 31-07 | 1 | | Critérium International d'après Tour de France de Dijon (CRTP) | |
| 30-07 | 1 | | 41ème Critérium d'Après Tour de France de Lisieux (Cri) | |
| | | Tour de France (2.UWT) |
| 9 | | Klassement |
| 14 | | Punten |
| 11 | | Berg |
| 4 | | Jongeren |
| 1 | | stageClassificationCategories.Super-Combative |
| 27-07 | 146 | 9 | Stage 21Mantes-la-Ville - Paris (132.0km) | 132.0km |
| 26-07 | 28 | 9 | Stage 20Nantua - Pontarlier (184.0km) | 184.0km |
| 25-07 | 8 | 9 | Stage 19Albertville - La Plagne (93.0km) | 93.0km |
| 24-07 | 17 | 9 | Stage 18Vif - Courchevel Col de la Loze (171.0km) | 171.0km |
| 23-07 | 37 | 9 | Stage 17Bollène - Valence (160.0km) | 160.0km |
| 22-07 | 2 | 9 | Stage 16Montpellier - Mont Ventoux (171.0km) | 171.0km |
| 20-07 | 27 | 10 | Stage 15Muret - Carcassonne (169.0km) | 169.0km |
| 19-07 | 7 | 9 | Stage 14Pau - Luchon-Superbagnères (182.0km) | 182.0km |
| 18-07 | 26 | 11 | Stage 13Loudenvielle-Le Louron - Peyragudes (10.0km) | 10.0km |
| 17-07 | 25 | 11 | Stage 12Auch - Hautacam (180.0km) | 180.0km |
| 16-07 | 24 | 1 | Stage 11Toulouse - Toulouse (156.0km) | 156.0km |
| 14-07 | 3 | 1 | Stage 10Ennezat - Le Mont-Dore Puy de Sancy (165.0km) | 165.0km |
| 13-07 | 45 | 11 | Stage 9Chinon - Châteauroux (174.0km) | 174.0km |
| 12-07 | 28 | 11 | Stage 8Saint-Méen-le-Grand - Laval (171.0km) | 171.0km |
| 11-07 | 26 | 11 | Stage 7Saint-Malo - Mûr-de-Bretagne (197.0km) | 197.0km |
| 10-07 | 1 | 8 | Stage 6Bayeux - Vire-Normandie (201.0km) | 201.0km |
| 09-07 | 53 | 33 | Stage 5Caen - Caen (33.0km) | 33.0km |
| 08-07 | 45 | 35 | Stage 4Amiens - Rouen (174.0km) | 174.0km |
| 07-07 | 95 | 41 | Stage 3Valenciennes - Dunkerque (178.0km) | 178.0km |
| 06-07 | 52 | 42 | Stage 2Lauwin-Planque - Boulogne-sur-Mer (209.0km) | 209.0km |
| 05-07 | 64 | 66 | Stage 1Lille - Lille (184.0km) | 184.0km |
| | | Critérium du Dauphiné (2.UWT) |
| 37 | | Klassement |
| 45 | | Punten |
| 13 | | Berg |
| 9 | | Jongeren |
| 15-06 | 9 | 37 | Stage 8Val d'Arc - Plateau du Mont-Cenis (133.0km) | 133.0km |
| 14-06 | 34 | 56 | Stage 7Grand-Algueblanche - Valmeinier (131.0km) | 131.0km |
| 13-06 | 34 | 105 | Stage 6Valserhône - Combloux (126.0km) | 126.0km |
| 12-06 | 105 | 125 | Stage 5Saint-Priest - Mâcon (183.0km) | 183.0km |
| 11-06 | 106 | 132 | Stage 4Charmes-sur-Rhône - Saint-Peray (17.0km) | 17.0km |
| 10-06 | 145 | 134 | Stage 3Brioude - Charantonnay (207.0km) | 207.0km |
| 09-06 | 132 | 129 | Stage 2Prémilhat - Issoire (204.0km) | 204.0km |
| 08-06 | 132 | 132 | Stage 1Domerat - Montlucon (195.0km) | 195.0km |
| 27-04 | 3 | | Liège-Bastogne-Liège (1.UWT) | 252.0km |
| 23-04 | 5 | | La Flèche Wallonne (1.UWT) | 205.0km |
| 20-04 | 10 | | Amstel Gold Race (1.UWT) | 255.0km |
| | | Itzulia Basque Country (2.UWT) |
| 30 | | Klassement |
| 3 | | Punten |
| 2 | | Berg |
| 12-04 | 3 | 30 | Stage 6Eibar - Eibar (153.0km) | 153.0km |
| 11-04 | 1 | 43 | Stage 5Urduña - Gernika (175.0km) | 175.0km |
| 10-04 | 109 | 71 | Stage 4Beasain - Markina-Xemein (169.0km) | 169.0km |
| 09-04 | 56 | 47 | Stage 3Zarautz - Beasain (156.0km) | 156.0km |
| 08-04 | 79 | 11 | Stage 2Pamplona - Lodosa (199.0km) | 199.0km |
| 07-04 | 11 | 11 | Stage 1Vitoria-Gasteiz - Vitoria-Gasteiz (16.0km) | 16.0km |
| | | Tirreno-Adriatico (2.UWT) |
| 24 | | Klassement |
| 34 | | Punten |
| 9 | | Berg |
| 8 | | Jongeren |
| 16-03 | 100 | 24 | Stage 7Porto Potenza Picena - San Benedetto del Tronto (147.0km) | 147.0km |
| 15-03 | 8 | 24 | Stage 6Cartoceto - Frontignano (163.0km) | 163.0km |
| 14-03 | 52 | 37 | Stage 5Ascoli Piceno - Pergola (205.0km) | 205.0km |
| 13-03 | 26 | 9 | Stage 4Norcia - Trasacco (190.0km) | 190.0km |
| 12-03 | 18 | 9 | Stage 3Follonica - Foligno (239.0km) | 239.0km |
| 11-03 | 53 | 19 | Stage 2Camaiore - Follonica (189.0km) | 189.0km |
| 10-03 | 19 | 19 | Stage 1Lido di Camaiore - Lido di Camaiore (11.0km) | 11.0km |
| 08-03 | 4 | | Strade Bianche (1.UWT) | 213.0km |
| 02-03 | 30 | | Faun Drome Classic (1.Pro) | 189.0km |
| 01-03 | 103 | | Faun-Ardèche Classic (1.Pro) | 165.0km |