07.10 | DNF | | | Tre Valli Varesine (1.Pro) | 200.3 | | | more |
05.10 | DNF | | | European Continental Championships ME - Road Race (CC) | 202.5 | | | more |
28.09 | 28 | | | World Championships ME - Road Race (WC) | 267.5 | 17 | 30 | more |
14.09 | DNF | | | Grand Prix Cycliste de Montréal (1.UWT) | 209.1 | | | more |
12.09 | 111 | | | Grand Prix Cycliste de Québec (1.UWT) | 216 | 5 | | more |
23.08 › 14.0923-14/8 | | | | La Vuelta Ciclista a España (2.UWT) | | | | more |
26.08 | DNF | | | S4Stage 4 - Susa › Voiron | 206.7 | | | |
25.08 | 25 | 10 | | S3Stage 3 - San Maurizio Canavese › Ceres | 134.6 | | | |
24.08 | 14 | 13 | | S2Stage 2 - Alba › Limone Piemonte | 159.5 | 2 | 5 | |
23.08 | 62 | 64 | | S1Stage 1 - Torino-Reggia di Venaria › Novara | 186.7 | | | |
05.07 › 27.075-27/7 | | | | Tour de France (2.UWT) | | | | more |
| 9 | | | Youth classificationYouth classification | | | | |
| 6 | | | Mountains classificationMountains classification | | | | |
| 47 | | | Points classificationPoints classification | | | | |
| 41 | | | General classificationGeneral classification | | 25 | 25 | |
27.07 | 17 | | | S21Stage 21 - Mantes-la-Ville › Paris (Champs-Élysées) | 132.3 | | | |
26.07 | 48 | 41 | | S20Stage 20 - Nantua › Pontarlier | 184.2 | | | |
25.07 | 9 | 41 | | S19Stage 19 - Albertville › La Plagne | 93.1 | 14 | 35 | |
24.07 | 80 | 52 | | S18Stage 18 - Vif › Courchevel (Col de la Loze) | 171.5 | | | |
23.07 | 158 | 51 | | S17Stage 17 - Bollène › Valence | 160.4 | | | |
22.07 | 1 | 49 | | S16Stage 16 - Montpellier › Mont Ventoux 86k | 171.5 | 100 | 210 | |
20.07 | 125 | 66 | | S15Stage 15 - Muret › Carcassonne | 169.3 | | | |
19.07 | 25 | 48 | | S14Stage 14 - Pau › Luchon-Superbagnères 98k | 182.6 | | | |
18.07 | 32 | 74 | | S13 (ITT)Stage 13 (ITT) - Loudenvielle › Peyragudes | 10.9 | | | |
17.07 | 69 | 75 | | S12Stage 12 - Auch › Hautacam | 180.6 | | | |
16.07 | 63 | 69 | | S11Stage 11 - Toulouse › Toulouse | 156.8 | | | |
14.07 | 44 | 79 | | S10Stage 10 - Ennezat › Le Mont-Dore Puy de Sancy 150k | 165.3 | | | |
13.07 | 120 | 107 | | S9Stage 9 - Chinon › Châteauroux | 174.1 | | | |
12.07 | 102 | 100 | | S8Stage 8 - Saint-Méen-le-Grand › Laval (Espace Mayenne) | 171.4 | | | |
11.07 | 71 | 105 | | S7Stage 7 - Saint-Malo › Mûr-de-Bretagne (Guerlédan) | 197 | | | |
10.07 | 95 | 117 | | S6Stage 6 - Bayeux › Vire Normandie | 201.5 | | | |
09.07 | 159 | 160 | | S5 (ITT)Stage 5 (ITT) - Caen › Caen | 33 | | | |
08.07 | 177 | 152 | | S4Stage 4 - Amiens Métropole › Rouen | 174.2 | | | |
07.07 | 142 | 125 | | S3Stage 3 - Valenciennes › Dunkerque | 178.3 | | | |
06.07 | 104 | 126 | | S2Stage 2 - Lauwin-Planque › Boulogne-sur-Mer | 209.1 | | | |
05.07 | 151 | 153 | | S1Stage 1 - Lille Métropole › Lille Métropole | 184.9 | | | |
08.06 › 15.068-15/6 | | | | Critérium du Dauphiné (2.UWT) | | | | more |
| 16 | | | Youth classificationYouth classification | | | | |
| 37 | | | Mountains classificationMountains classification | | | | |
| 51 | | | General classificationGeneral classification | | 5 | 5 | |
15.06 | 21 | | | S8Stage 8 - Val-d'Arc › Plateau du Mont-Cenis 113k | 133.3 | | | |
14.06 | 78 | 77 | | S7Stage 7 - Grand-Algueblanche › Valmeinier 1800 | 131.6 | | | |
13.06 | 83 | 81 | | S6Stage 6 - Valserhône › Combloux | 126.7 | | | |
12.06 | 99 | 87 | | S5Stage 5 - Saint-Priest › Mâcon | 183 | | | |
11.06 | 112 | 86 | | S4 (ITT)Stage 4 (ITT) - Charmes-sur-Rhône › Saint-Péray | 17.4 | | | |
10.06 | 74 | 83 | | S3Stage 3 - Brioude › Charantonnay | 207.2 | | | |
09.06 | 48 | 117 | | S2Stage 2 - Prémilhat › Issoire | 204.6 | | | |
08.06 | 125 | 125 | | S1Stage 1 - Domérat › Montluçon | 195.8 | | | |
24.03 › 30.0324-30/3 | | | | Volta Ciclista a Catalunya (2.UWT) | | | | more |
27.03 | DNF | | | S4Stage 4 - Sant Vicenç de Castellet › Montserrat Mil·lenari | 188.7 | | | |
26.03 | 58 | 64 | | S3Stage 3 - Viladecans The Style Outlets › La Molina | 218.6 | | | |
25.03 | 104 | 95 | | S2Stage 2 - Banyoles › Figueres | 180.5 | | | |
24.03 | 102 | 102 | | S1Stage 1 - Sant Feliu de Guíxols › Sant Feliu de Guíxols | 178.6 | | | |
10.03 › 16.0310-16/3 | | | | Tirreno-Adriatico (2.UWT) | | | | more |
| 11 | | | Youth classificationYouth classification | | | | |
| 38 | | | General classificationGeneral classification | | 5 | 10 | |
16.03 | 81 | | | S7Stage 7 - Porto Potenza Picena › San Benedetto del Tronto | 147 | | | |
15.03 | 15 | 40 | | S6Stage 6 - Cartoceto › Frontignano | 163 | | | |
14.03 | 60 | 50 | | S5Stage 5 - Ascoli Piceno › Pergola | 205 | | | |
13.03 | 41 | 56 | | S4Stage 4 - Norcia › Trasacco | 190 | | | |
12.03 | 66 | 68 | | S3Stage 3 - Follonica › Colfiorito | 239 | | | |
11.03 | 97 | 145 | | S2Stage 2 - Camaiore › Follonica | 192 | | | |
10.03 | 147 | 147 | | S1 (ITT)Stage 1 (ITT) - Lido di Camaiore › Lido di Camaiore | 11.5 | | | |
02.03 | 26 | | | Faun Drome Classic (1.Pro) | 189 | | 5 | more |
01.03 | 21 | | | Faun-Ardèche Classic (1.Pro) | 165.9 | 5 | 5 | more |
08.02 › 12.028-12/2 | | | | Tour of Oman (2.Pro) | | | | more |
| 1 | | | Youth classificationYouth classification | | | | |
| 1 | | | Points classificationPoints classification | | | | |
| 2 | | | General classificationGeneral classification | | 110 | 150 | |
12.02 | 1 | | | S5Stage 5 - Imty › Jabal Al Akhdhar (Green Mountain) | 138.5 | 30 | 20 | |
11.02 | 33 | 4 | | S4Stage 4 - Oman Across Ages Museum › Oman Convention and Exhibition Center | 181.5 | | | |
10.02 | 4 | 4 | | S3Stage 3 - Fanja › Eastern Mountain | 180.8 | 7 | 5 | |
09.02 | 2 | 2 | | S2Stage 2 - Al Rustaq Fort › Yitti Hills | 202.9 | 18 | 15 | |
08.02 | 37 | 38 | | S1Stage 1 - Bushar › Bimmah Sink Hole | 177.7 | | | |
07.02 | 6 | | | Muscat Classic (1.1) | 170.3 | 24 | 40 | more |