17.10 | 14 | | | Boucles de l'Aulne - Châteaulin (1.1) | 177.6 | 7 | 5 | more |
16.10 | 33 | | | Grand Prix du Morbihan (1.Pro) | 176.9 | | 3 | more |
04.09 | 76 | | | Tour du Jura Cycliste (1.1) | 181.75 | | | more |
29.08 | 73 | | | Bretagne Classic - Ouest-France (1.UWT) | 251 | 5 | | more |
17.08 › 20.0817-20/8 | | | | Tour du Limousin - Nouvelle Aquitaine (2.1) | | | | more |
| 19 | | | Youth classificationYouth classification | | | | |
| 17 | | | Mountains classificationMountains classification | | | | |
| 46 | | | General classificationGeneral classification | | | | |
20.08 | 57 | | | S4Stage 4 - Sauviat-sur-Vige › Limoges | 169.7 | | | |
19.08 | 51 | 45 | | S3Stage 3 - Bugeat - Espace 1000 Sources › Lubersac | 184.2 | | | |
18.08 | 93 | 67 | | S2Stage 2 - Agonac › Payzac | 172 | | | |
17.08 | 56 | 56 | | S1Stage 1 - Isle › Sainte-Feyre | 183.3 | | | |
15.08 | DNF | | | La Polynormande (1.1) | 168.9 | | | more |
29.07 › 31.0729-31/7 | | | | Tour de l'Ain (2.1) | | | | more |
| 3 | | | Mountains classificationMountains classification | | | | |
| 34 | | | Points classificationPoints classification | | | | |
| 43 | | | General classificationGeneral classification | | | | |
31.07 | 64 | | | S3Stage 3 - Izernore › Lélex Mont-Jura | 125 | | | |
30.07 | 24 | 23 | | S2Stage 2 - Lagnieu › Saint-Vulbas | 136 | | | |
29.07 | 15 | 15 | | S1Stage 1 - Parc des Oiseaux › Bourg-en-Bresse | 141 | | | |
20.06 | 31 | | | National Championships France ME - Road Race (NC) | 242.9 | | | more |
15.06 | 43 | | | Paris-Camembert (1.1) | 210 | | | more |
08.06 | 64 | | | Mont Ventoux Dénivelé Challenge (1.1) | 153 | | | more |
08.05 › 30.058-30/5 | | | | Giro d'Italia (2.UWT) | | | | more |
| 26 | | | Youth classificationYouth classification | | | | |
| 67 | | | Mountains classificationMountains classification | | | | |
| 50 | | | Points classificationPoints classification | | | | |
| 90 | | | General classificationGeneral classification | | 20 | | |
30.05 | 136 | | | S21 (ITT)Stage 21 (ITT) - Senago › Milan | 30.3 | | | |
29.05 | 49 | 89 | | S20Stage 20 - Verbania › Valle Spluga-Alpe Motta | 164 | | | |
28.05 | 125 | 99 | | S19Stage 19 - Abbiategrasso › Alpe di Mera (Valsesia) | 166 | | | |
27.05 | 138 | 100 | | S18Stage 18 - Rovereto › Stradella | 231 | | | |
26.05 | 110 | 101 | | S17Stage 17 - Canazei › Sega di Ala | 193 | | | |
24.05 | 151 | 99 | | S16Stage 16 - Sacile › Cortina d'Ampezzo | 153 | | | |
23.05 | 67 | 85 | | S15Stage 15 - Grado › Gorizia | 147 | | | |
22.05 | 109 | 84 | | S14Stage 14 - Cittadella › Monte Zoncolan | 205 | | | |
21.05 | 157 | 76 | | S13Stage 13 - Ravenna › Verona | 198 | | | |
20.05 | 154 | 76 | | S12Stage 12 - Siena › Bagno di Romagna | 212 | | | |
19.05 | 5 | 72 | | S11Stage 11 - Perugia › Montalcino 159k | 162 | 18 | 4 | |
17.05 | 167 | 97 | | S10Stage 10 - L'Aquila › Foligno | 139 | | | |
16.05 | 86 | 83 | | S9Stage 9 - Castel di Sangro › Campo Felice (Rocca di Cambio) | 158 | | | |
15.05 | 166 | 90 | | S8Stage 8 - Foggia › Guardia Sanframondi | 170 | | | |
14.05 | 109 | 78 | | S7Stage 7 - Notaresco › Termoli | 181 | | | |
13.05 | 46 | 78 | | S6Stage 6 - Grotte di Frasassi › Ascoli Piceno (San Giacomo) 121k | 160 | | | |
12.05 | 90 | 115 | | S5Stage 5 - Modena › Cattolica | 177 | | | |
11.05 | 93 | 124 | | S4Stage 4 - Piacenza › Sestola | 187 | | | |
10.05 | 139 | 141 | | S3Stage 3 - Biella › Canale | 190 | | | |
09.05 | 122 | 148 | | S2Stage 2 - Stupinigi › Novara | 179 | | | |
08.05 | 155 | 155 | | S1 (ITT)Stage 1 (ITT) - Turin › Turin | 8.6 | | | |
19.04 › 23.0419-23/4 | | | | Tour of the Alps (2.Pro) | | | | more |
| 57 | | | General classificationGeneral classification | | | | |
23.04 | 44 | | | S5Stage 5 - Valle del Chiese/Idroland › Riva del Garda | 120.9 | | | |
22.04 | 60 | 68 | | S4Stage 4 - Naturns › Pieve di Bono | 168.6 | | | |
21.04 | 73 | 71 | | S3Stage 3 - Imst › Naturns | 162 | | | |
20.04 | 95 | 84 | | S2Stage 2 - Innsbruck › Feichten im Kaunertal | 121.5 | | | |
19.04 | 41 | 41 | | S1Stage 1 - Brixen › Innsbruck | 140.6 | | | |
22.03 › 28.0322-28/3 | | | | Volta Ciclista a Catalunya (2.UWT) | | | | more |
| 34 | | | Youth classificationYouth classification | | | | |
| 125 | | | General classificationGeneral classification | | 5 | | |
28.03 | 68 | | | S7Stage 7 - Barcelona › Barcelona | 133 | | | |
27.03 | 14 | 134 | | S6Stage 6 - Tarragona › Mataró | 193.8 | | | |
26.03 | 132 | 139 | | S5Stage 5 - La Pobla de Segur › Manresa | 201.1 | | | |
25.03 | 143 | 144 | | S4Stage 4 - Ripoll › Port Ainé | 166.5 | | | |
24.03 | 156 | 143 | | S3Stage 3 - Canal Olimpic de Catalunya › Vallter 2000 | 203.1 | | | |
23.03 | 103 | 98 | | S2 (ITT)Stage 2 (ITT) - Banyoles › Banyoles | 18.5 | | | |
22.03 | 88 | 89 | | S1Stage 1 - Calella › Calella | 178.4 | | | |
17.03 | 78 | | | Danilith Nokere Koerse ME (1.Pro) | 195 | | | more |
06.03 | 38 | | | Strade Bianche (1.UWT) | 184 | 5 | 5 | more |
03.03 | 60 | | | Trofeo Laigueglia (1.Pro) | 202 | | | more |
28.02 | 65 | | | Royal Bernard Drôme Classic (1.Pro) | 179.2 | | | more |
27.02 | 43 | | | Faun-Ardèche Classic (1.Pro) | 171.3 | | | more |
19.02 › 21.0219-21/2 | | | | Tour des Alpes Maritimes et du Var (2.1) | | | | more |
| 15 | | | Youth classificationYouth classification | | | | |
| 53 | | | General classificationGeneral classification | | | | |
21.02 | 52 | | | S3Stage 3 - Blausasc › Blausasc | 136 | | | |
20.02 | 66 | 70 | | S2Stage 2 - Fayence › Fayence | 168.9 | | | |
19.02 | 72 | 72 | | S1Stage 1 - Biot › Gourdon | 186.8 | | | |