| 02-11 | 28 | | Tour de France EFGH Singapore Criterium (CRTP) | |
| 07-10 | DNF | | Tre Valli Varesine (1.Pro) | 200.0km |
| 06-10 | DNF | | Coppa Bernocchi (1.Pro) | 191.0km |
| 28-09 | DNF | | UCI World Championship Kigali (CM) | 267.0km |
| 21-09 | 11 | | UCI World Championship Kigali TT (CM) | 40.0km |
| 31-08 | 56 | | Bretagne Classic - Ouest-France (1.UWT) | 261.0km |
| | | Lidl Deutschland Tour (2.Pro) |
| 12 | | Klassement |
| 7 | | Jongeren |
| 24-08 | 24 | 12 | Stage 4Halle - Magdeburg (163.0km) | 163.0km |
| 23-08 | 19 | 11 | Stage 3Arnsberg - Kassel (175.0km) | 175.0km |
| 22-08 | 12 | 16 | Stage 2Herford - Arnsberg (190.0km) | 190.0km |
| 21-08 | 72 | 15 | Stage 1Essen - Herford (202.0km) | 202.0km |
| 20-08 | 13 | 13 | PrologueEssen - Essen (3.0km) | 3.0km |
| | | Tour de France (2.UWT) |
| 107 | | Klassement |
| 57 | | Punten |
| 55 | | Berg |
| 25 | | Jongeren |
| 27-07 | 151 | 107 | Stage 21Mantes-la-Ville - Paris (132.0km) | 132.0km |
| 26-07 | 116 | 107 | Stage 20Nantua - Pontarlier (184.0km) | 184.0km |
| 25-07 | 107 | 106 | Stage 19Albertville - La Plagne (93.0km) | 93.0km |
| 24-07 | 115 | 106 | Stage 18Vif - Courchevel Col de la Loze (171.0km) | 171.0km |
| 23-07 | 151 | 109 | Stage 17Bollène - Valence (160.0km) | 160.0km |
| 22-07 | 151 | 105 | Stage 16Montpellier - Mont Ventoux (171.0km) | 171.0km |
| 20-07 | 14 | 99 | Stage 15Muret - Carcassonne (169.0km) | 169.0km |
| 19-07 | 130 | 109 | Stage 14Pau - Luchon-Superbagnères (182.0km) | 182.0km |
| 18-07 | 81 | 109 | Stage 13Loudenvielle-Le Louron - Peyragudes (10.0km) | 10.0km |
| 17-07 | 52 | 109 | Stage 12Auch - Hautacam (180.0km) | 180.0km |
| 16-07 | 149 | 120 | Stage 11Toulouse - Toulouse (156.0km) | 156.0km |
| 14-07 | 94 | 111 | Stage 10Ennezat - Le Mont-Dore Puy de Sancy (165.0km) | 165.0km |
| 13-07 | 134 | 113 | Stage 9Chinon - Châteauroux (174.0km) | 174.0km |
| 12-07 | 162 | 109 | Stage 8Saint-Méen-le-Grand - Laval (171.0km) | 171.0km |
| 11-07 | 54 | 100 | Stage 7Saint-Malo - Mûr-de-Bretagne (197.0km) | 197.0km |
| 10-07 | 99 | 121 | Stage 6Bayeux - Vire-Normandie (201.0km) | 201.0km |
| 09-07 | 7 | 159 | Stage 5Caen - Caen (33.0km) | 33.0km |
| 08-07 | 149 | 174 | Stage 4Amiens - Rouen (174.0km) | 174.0km |
| 07-07 | 151 | 172 | Stage 3Valenciennes - Dunkerque (178.0km) | 178.0km |
| 06-07 | 149 | 173 | Stage 2Lauwin-Planque - Boulogne-sur-Mer (209.0km) | 209.0km |
| 05-07 | 176 | 176 | Stage 1Lille - Lille (184.0km) | 184.0km |
| 29-06 | 1 | | National Road Championships - Spain (CN) | 191.0km |
| 27-06 | 4 | | National Road Championships - Spain TT (CN) | 14.0km |
| | | Critérium du Dauphiné (2.UWT) |
| 39 | | Klassement |
| 12 | | Punten |
| 30 | | Berg |
| 10 | | Jongeren |
| 15-06 | 48 | 39 | Stage 8Val d'Arc - Plateau du Mont-Cenis (133.0km) | 133.0km |
| 14-06 | 43 | 39 | Stage 7Grand-Algueblanche - Valmeinier (131.0km) | 131.0km |
| 13-06 | 81 | 37 | Stage 6Valserhône - Combloux (126.0km) | 126.0km |
| 12-06 | 68 | 3 | Stage 5Saint-Priest - Mâcon (183.0km) | 183.0km |
| 11-06 | 15 | 3 | Stage 4Charmes-sur-Rhône - Saint-Peray (17.0km) | 17.0km |
| 10-06 | 1 | 1 | Stage 3Brioude - Charantonnay (207.0km) | 207.0km |
| 09-06 | 31 | 36 | Stage 2Prémilhat - Issoire (204.0km) | 204.0km |
| 08-06 | 51 | 52 | Stage 1Domerat - Montlucon (195.0km) | 195.0km |
| | | Tour de Romandie (2.UWT) |
| 35 | | Klassement |
| 15 | | Punten |
| 14 | | Jongeren |
| 04-05 | 12 | 35 | Stage 5Genève - Genève (17.0km) | 17.0km |
| 03-05 | 47 | 36 | Stage 4Sion - Thyon (128.0km) | 128.0km |
| 02-05 | 38 | 29 | Stage 3Cossonay - Cossonay (183.0km) | 183.0km |
| 01-05 | 41 | 18 | Stage 2La Grande Béroche - La Grande Béroche (157.0km) | 157.0km |
| 30-04 | 11 | 5 | Stage 1Münchenstein - Fribourg (194.0km) | 194.0km |
| 29-04 | 3 | 3 | PrologueSaint-Imier - Saint-Imier (3.0km) | 3.0km |
| 30-03 | DNF | | Gent-Wevelgem in Flanders Fields (1.UWT) | 250.0km |
| 28-03 | DNF | | E3 Saxo Classic (1.UWT) | 208.0km |
| | | Paris-Nice (2.UWT) |
| 21 | | Klassement |
| 27 | | Punten |
| 22 | | Berg |
| 6 | | Jongeren |
| 16-03 | 21 | 21 | Stage 8Nice - Nice (119.0km) | 119.0km |
| 15-03 | 4 | 23 | Stage 7Nice - Auron (109.0km) | 109.0km |
| 14-03 | 114 | 29 | Stage 6Saint-Julien-en-Saint-Alban - Berre l'Etang (209.0km) | 209.0km |
| 13-03 | 24 | 17 | Stage 5Saint-Just-en-Chevalet - La Côte-Saint-André (203.0km) | 203.0km |
| 12-03 | 17 | 15 | Stage 4Vichy - La Loge des Gardes (163.0km) | 163.0km |
| 11-03 | 9 | 24 | Stage 3Circuit Nevers Magny-Cours - Nevers (28.0km) | 28.0km |
| 10-03 | 116 | 93 | Stage 2Montesson - Bellegarde (183.0km) | 183.0km |
| 09-03 | 61 | 62 | Stage 1Le Perray-en-Yvelines - Le Perray-en-Yvelines (156.0km) | 156.0km |
| | | UAE Tour (2.UWT) |
| 4 | | Klassement |
| 13 | | Punten |
| 1 | | Jongeren |
| 23-02 | 4 | 4 | Stage 7Al Ain Hazza Bin Zayed Stadium - Jebel Hafeet (176.0km) | 176.0km |
| 22-02 | 45 | 3 | Stage 6Abu Dhabi Cycling Club - Abu Dhabi Breakwater (165.0km) | 165.0km |
| 21-02 | 38 | 3 | Stage 5American University Dubai - Hamdan Bin Mohammed Smart University (160.0km) | 160.0km |
| 20-02 | 44 | 4 | Stage 4Fujairah Qidfa Beach - Umm Al Quwain (181.0km) | 181.0km |
| 19-02 | 7 | 4 | Stage 3Ras Al Khaimah - Jebel Jais (181.0km) | 181.0km |
| 18-02 | 7 | 6 | Stage 2Al Hudayriyat Island - Al Hudayriyat Island (12.0km) | 12.0km |
| 17-02 | 29 | 29 | Stage 1Madinat Zayed - Liwa Palace (138.0km) | 138.0km |
| | | Volta a la Comunitat Valenciana (2.Pro) |
| 8 | | Klassement |
| 7 | | Punten |
| 2 | | Jongeren |
| 09-02 | 42 | 8 | Stage 5Alfafar - Valencia (103.0km) | 103.0km |
| 08-02 | 12 | 7 | Stage 4Oropesa del Mar - Portell de Morella (181.0km) | 181.0km |
| 07-02 | 1 | 7 | Stage 3Algemesi - Alpuente (180.0km) | 180.0km |
| 06-02 | 10 | 9 | Stage 2La Nucia - Benifato (166.0km) | 166.0km |
| 05-02 | 6 | 25 | Stage 1Orihuela - Orihuela (34.0km) | 34.0km |