30.07 › 03.0830-3/7 | | | | Tour Alsace (2.2) | | | | more |
| 22 | | | Mountains classificationMountains classification | | | | |
| 59 | | | General classificationGeneral classification | | | | |
03.08 | 83 | | | S5Stage 5 - Ribeauvillé › Champ du Feu | 134.6 | | | |
02.08 | 22 | 34 | | S4Stage 4 - Ferrette › Altkirch | 133.5 | | | |
01.08 | 37 | 38 | | S3Stage 3 - Velleminfroy › La Planche des Belles Filles | 141.4 | | | |
31.07 | 68 | 138 | | S2Stage 2 - Rust (Europa-Park) › Sélestat | 152.7 | | | |
30.07 | 49 | 136 | | S1 (TTT)Stage 1 (TTT) - Sausheim › Sausheim | 4.3 | | | |
29.06 | 18 | | | National Championships Italy ME - Road Race (NC) | 228.8 | | | more |
22.06 | DNF | | | Andorra MoraBanc Clàssica (1.1) | 114.7 | | | more |
18.06 › 21.0618-21/6 | | | | La Route d'Occitanie - CIC (2.1) | | | | more |
21.06 | DNF | | | S4Stage 4 - Saint-Gaudens › Saint-Girons | 128.5 | | | |
20.06 | 92 | 85 | | S3Stage 3 - Pujaudran › Luz-Ardiden | 173.9 | | | |
19.06 | 8 | 78 | | S2Stage 2 - Gignac Vallée de L'Herault › Carmaux Ségala | 195.8 | 1 | | |
18.06 | 95 | 95 | | S1 (ITT)Stage 1 (ITT) - Saint-Affrique › Roquefort-sur-Soulzon | 10.5 | | | |
14.06 | 53 | | | Duracell Dwars door het Hageland (1.Pro) | 180 | | | more |
08.06 | 13 | | | Brussels Cycling Classic (1.Pro) | 205.5 | 16 | 20 | more |
07.06 | 53 | | | Heylen Vastgoed Heistse Pijl (1.1) | 189.5 | | | more |
20.04 | 60 | | | Tour du Doubs (1.1) | 196.9 | | | more |
19.04 | DNF | | | Tour du Jura Cycliste (1.1) | 176.4 | | | more |
08.04 › 11.048-11/4 | | | | Région Pays de la Loire Tour (2.1) | | | | more |
| 32 | | | Points classificationPoints classification | | | | |
| 21 | | | General classificationGeneral classification | | | 3 | |
11.04 | 29 | | | S4Stage 4 - Sillé-le-Guillaume › Le Mans | 186.5 | | | |
10.04 | 18 | 20 | | S3Stage 3 - Tiercé › Hambers (La Butte de Montaigu) | 165.9 | | | |
09.04 | 13 | 24 | | S2Stage 2 - Cugand-la-Bernardière › Beaupréau-en-Mauges | 158.5 | | | |
08.04 | 39 | 40 | | S1Stage 1 - Machecoul-Saint-Même › La Baule-Escoublac | 208.4 | | | |
05.04 | 17 | | | Volta NXT Classic ME (1.1) | 189.8 | 4 | 3 | more |
25.03 › 29.0325-29/3 | | | | Settimana Internazionale Coppi e Bartali (2.1) | | | | more |
| 18 | | | Youth classificationYouth classification | | | | |
| 52 | | | General classificationGeneral classification | | | | |
29.03 | 86 | | | S5Stage 5 - Brisighella › Forli | 132.5 | | | |
28.03 | 51 | 44 | | S4Stage 4 - Brisighella › Brisighella | 150.4 | | | |
27.03 | 35 | 45 | | S3Stage 3 - Riccione › Cesena | 142.1 | | | |
26.03 | 54 | 54 | | S2Stage 2 - Riccione › Sogliano al Rubicone | 163.9 | | | |
25.03 | 41 | 41 | | S1Stage 1 - Ferrara › Bondeno | 174.5 | | | |
05.03 | 85 | | | Trofeo Laigueglia (1.Pro) | 197 | | | more |
05.02 › 09.025-9/2 | | | | Etoile de Bessèges - Tour du Gard (2.1) | | | | more |
09.02 | OTL | | | S5 (ITT)Stage 5 (ITT) - Alès › L'Hermitage | 10.645 | | | |
08.02 | 28 | 22 | | S4Stage 4 - Vauvert › Le Mont Bouquet | 119 | | | |
07.02 | 7 | 28 | | S3Stage 3 - Bessèges › Bessèges | 136.2 114.2 | 2 | | |
06.02 | 19 | 55 | | S2Stage 2 - Domessargues › Marguerittes | 165.83 | | | |
05.02 | 71 | 71 | | S1Stage 1 - Bellegarde › Bellegarde | 159.07 | | | |