09.10 | 62 | | | Il Lombardia (1.UWT) | 239 | 5 | | more |
06.10 | 20 | | | Milano - Torino (1.Pro) | 190 | 6 | 5 | more |
02.10 | 18 | | | Giro dell'Emilia (1.Pro) | 195.3 | 8 | 5 | more |
14.09 › 18.0914-18/9 | | | | Škoda-Tour de Luxembourg (2.Pro) | | | | more |
| 4 | | | Youth classificationYouth classification | | | | |
| 6 | | | Points classificationPoints classification | | | | |
| 12 | | | General classificationGeneral classification | | 32 | 25 | |
18.09 | 8 | | | S5Stage 5 - Mersch › Luxembourg | 183.7 | 1 | | |
17.09 | 23 | 12 | | S4 (ITT)Stage 4 (ITT) - Dudelange › Dudelange | 25.4 | | | |
16.09 | 6 | 8 | | S3Stage 3 - Mondorf-les-Bains › Mamer | 189.3 | 3 | | |
15.09 | 10 | 9 | | S2Stage 2 - Steinfort › Eschdorf | 186.1 | | | |
14.09 | 4 | 4 | | S1Stage 1 - Luxembourg-City › Luxembourg-City | 140 | 7 | | |
14.08 › 05.0914-5/8 | | | | La Vuelta ciclista a España (2.UWT) | | | | more |
| 5 | | | Youth classificationYouth classification | | | | |
| 13 | | | Mountains classificationMountains classification | | | | |
| 23 | | | Points classificationPoints classification | | | | |
| 16 | | | General classificationGeneral classification | | 90 | 56 | |
05.09 | 85 | | | S21 (ITT)Stage 21 (ITT) - Padrón › Santiago de Compostela | 33.8 | | | |
04.09 | 1 | 16 | | S20Stage 20 - Sanxenxo › Mos. Castro de Herville 116k | 202.2 | 80 | 100 | |
03.09 | 53 | 17 | | S19Stage 19 - Tapia › Monforte de Lemos | 191.2 | | | |
02.09 | 43 | 18 | | S18Stage 18 - Salas › Altu d'El Gamoniteiru | 162.6 | | | |
01.09 | 10 | 18 | | S17Stage 17 - Unquera › Lagos de Covadonga | 185.8 | 6 | | |
31.08 | 53 | 21 | | S16Stage 16 - Laredo › Santa Cruz de Bezana | 180 | | | |
29.08 | 26 | 22 | | S15Stage 15 - Navalmoral de la Mata › El Barraco | 197.5 | | | |
28.08 | 5 | 24 | | S14Stage 14 - Don Benito › Pico Villuercas 153k | 165.7 | 18 | 4 | |
27.08 | 89 | 33 | | S13Stage 13 - Belmez › Villanueva de la Serena | 203.7 | | | |
26.08 | 66 | 33 | | S12Stage 12 - Jaén › Córdoba | 175 | | | |
25.08 | 163 | 34 | | S11Stage 11 - Antequera › Valdepeñas de Jaén | 133.6 | | | |
24.08 | 3 | 27 | | S10Stage 10 - Roquetas de Mar › Rincón de la Victoria 104k | 189 | 35 | 20 | |
22.08 | 93 | 34 | | S9Stage 9 - Puerto-Lumbreras › Alto de Velefique | 188 | | | |
21.08 | 77 | 22 | | S8Stage 8 - Santa Pola › La Manga del Mar Menor | 173.7 | | | |
20.08 | 38 | 22 | | S7Stage 7 - Gandía › Balcón de Alicante | 152 | | | |
19.08 | 21 | 21 | | S6Stage 6 - Requena › Alto de la Montaña de Cullera | 158.3 | | | |
18.08 | 26 | 30 | | S5Stage 5 - Tarancón › Albacete | 184.4 | | | |
17.08 | 60 | 38 | | S4Stage 4 - El Burgo de Osma › Molina de Aragón | 163.9 | | | |
16.08 | 55 | 39 | | S3Stage 3 - Santo Domingo de Silos › Picón Blanco | 202.8 | | | |
15.08 | 47 | 15 | | S2Stage 2 - Caleruega › Burgos | 166.7 | | | |
14.08 | 19 | 19 | | S1 (ITT)Stage 1 (ITT) - Burgos › Burgos | 7.1 | | | |
29.07 › 31.0729-31/7 | | | | Tour de l'Ain (2.1) | | | | more |
| 3 | | | Youth classificationYouth classification | | | | |
| 4 | | | Mountains classificationMountains classification | | | | |
| 12 | | | Points classificationPoints classification | | | | |
| 6 | | | General classificationGeneral classification | | 24 | 40 | |
31.07 | 6 | | | S3Stage 3 - Izernore › Lélex Mont-Jura | 125 | 3 | | |
30.07 | 21 | 10 | | S2Stage 2 - Lagnieu › Saint-Vulbas | 136 | | | |
29.07 | 16 | 16 | | S1Stage 1 - Parc des Oiseaux › Bourg-en-Bresse | 141 | | | |
20.06 | DNF | | | National Championships France ME - Road Race (NC) | 242.9 | | | more |
10.06 › 13.0610-13/6 | | | | La Route d'Occitanie - La Dépêche du Midi (2.1) | | | | more |
| 8 | | | Youth classificationYouth classification | | | | |
| 23 | | | Mountains classificationMountains classification | | | | |
| 19 | | | Points classificationPoints classification | | | | |
| 18 | | | General classificationGeneral classification | | 3 | 3 | |
13.06 | 6 | | | S4Stage 4 - Lavelanet-Pays d'Olmes › Duilhac-Sous-Peyrepertuse | 151.2 | 3 | | |
12.06 | 28 | 26 | | S3Stage 3 - Pierrefitte-Nestalas › Le Mourtis | 191.8 | | | |
11.06 | 28 | 16 | | S2Stage 2 - Villefranche-De-Rouergue › Auch | 198.7 | | | |
10.06 | 12 | 14 | | S1Stage 1 - Cazouls-Lès-Béziers › Lacaune Les Bains | 156.5 | | | |
08.06 | 62 | | | Mont Ventoux Dénivelé Challenge (1.1) | 153 | | | more |
08.05 › 30.058-30/5 | | | | Giro d'Italia (2.UWT) | | | | more |
16.05 | DNF | | | S9Stage 9 - Castel di Sangro › Campo Felice (Rocca di Cambio) | 158 | | | |
15.05 | 44 | 101 | | S8Stage 8 - Foggia › Guardia Sanframondi | 170 | | | |
14.05 | 138 | 114 | | S7Stage 7 - Notaresco › Termoli | 181 | | | |
13.05 | 113 | 114 | | S6Stage 6 - Grotte di Frasassi › Ascoli Piceno (San Giacomo) | 160 | | | |
12.05 | 144 | 117 | | S5Stage 5 - Modena › Cattolica | 177 | | | |
11.05 | 147 | 110 | | S4Stage 4 - Piacenza › Sestola | 187 | | | |
10.05 | 85 | 48 | | S3Stage 3 - Biella › Canale | 190 | | | |
09.05 | 132 | 72 | | S2Stage 2 - Stupinigi › Novara | 179 | | | |
08.05 | 72 | 72 | | S1 (ITT)Stage 1 (ITT) - Turin › Turin | 8.6 | | | |
27.04 › 02.0527-2/4 | | | | Tour de Romandie (2.UWT) | | | | more |
| 5 | | | Youth classificationYouth classification | | | | |
| 22 | | | Points classificationPoints classification | | | | |
| 30 | | | General classificationGeneral classification | | 5 | 20 | |
02.05 | 40 | | | S5 (ITT)Stage 5 (ITT) - Fribourg › Fribourg | 16.19 | | | |
01.05 | 41 | 32 | | S4Stage 4 - Sion › Thyon 2000 | 161.3 | | | |
30.04 | 12 | 20 | | S3Stage 3 - Estavayer › Estavayer | 168.7 | | | |
29.04 | 4 | 27 | | S2Stage 2 - La Neuveville › Saint-Imier | 165.7 | 13 | | |
28.04 | 50 | 40 | | S1Stage 1 - Aigle › Martigny | 168.1 | | | |
27.04 | 54 | 54 | | ProloguePrologue - Oron › Oron | 4.05 | | | |
21.04 | 45 | | | La Flèche Wallonne (1.UWT) | 193.6 | 5 | 8 | more |
22.03 › 28.0322-28/3 | | | | Volta Ciclista a Catalunya (2.UWT) | | | | more |
| 9 | | | Youth classificationYouth classification | | | | |
| 11 | | | Mountains classificationMountains classification | | | | |
| 44 | | | General classificationGeneral classification | | 5 | 8 | |
28.03 | 10 | | | S7Stage 7 - Barcelona › Barcelona 105k | 133 | 1 | | |
27.03 | 64 | 52 | | S6Stage 6 - Tarragona › Mataró | 193.8 | | | |
26.03 | 54 | 53 | | S5Stage 5 - La Pobla de Segur › Manresa | 201.1 | | | |
25.03 | 89 | 62 | | S4Stage 4 - Ripoll › Port Ainé 118k | 166.5 | | | |
24.03 | 59 | 43 | | S3Stage 3 - Canal Olimpic de Catalunya › Vallter 2000 | 203.1 | | | |
23.03 | 54 | 42 | | S2 (ITT)Stage 2 (ITT) - Banyoles › Banyoles | 18.5 | | | |
22.03 | 37 | 37 | | S1Stage 1 - Calella › Calella | 178.4 | | | |
03.03 | 4 | | | Trofeo Laigueglia (1.Pro) | 202 | 50 | 100 | more |
28.02 | 31 | | | Royal Bernard Drôme Classic (1.Pro) | 179.2 | | 3 | more |
27.02 | 2 | | | Faun-Ardèche Classic (1.Pro) | 171.3 | 85 | 150 | more |
19.02 › 21.0219-21/2 | | | | Tour des Alpes Maritimes et du Var (2.1) | | | | more |
| 3 | | | Youth classificationYouth classification | | | | |
| 27 | | | Points classificationPoints classification | | | | |
| 11 | | | General classificationGeneral classification | | 12 | 15 | |
21.02 | 12 | | | S3Stage 3 - Blausasc › Blausasc | 136 | | | |
20.02 | 18 | 27 | | S2Stage 2 - Fayence › Fayence | 168.9 | | | |
19.02 | 42 | 42 | | S1Stage 1 - Biot › Gourdon | 186.8 | | | |