13.10 | 36 | | | Paris-Tours Espoirs (1.2U) | 183 | | | more |
06.10 | 9 | | | Il Piccolo Lombardia (1.2U) | 176 | | 1 | more |
27.09 | 27 | | | World Championships MU - Road Race (WC) France | 171.6 | | 5 | more |
22.09 | 25 | | | Grand Prix d'Isbergues - Pas de Calais (1.1) France | 199.1 | | 3 | more |
18.09 | 46 | | | Grand Prix de Wallonie (1.1) | 205.9 | | | more |
15.08 › 25.0815-25/8 | | | | Tour de l'Avenir (2.Ncup) France | | | | more |
| 20 | | | Mountains classificationMountains classification | | | | |
| 17 | | | Points classificationPoints classification | | | | |
| 16 | | | General classificationGeneral classification | | | 1 | |
25.08 | 30 | | | S10Stage 10 - Saint-Colomban-des-Villard › Le Corbier | 78.1 | | | |
24.08 | 29 | 17 | | S9Stage 9 - Villaroger › Tignes | 67.2 | | | |
23.08 | 38 | 17 | | S8Stage 8 - Brides-les-Bains › Col de la Loze/Méribel | 23.1 | | | |
22.08 | 22 | 17 | | S7Stage 7 - Grésy-sur-Isere › La Giettaz | 103.5 | | | |
20.08 | 35 | 15 | | S6Stage 6 - Saint-Julien-Chapteuil › Privas | 124 | | | |
19.08 | 34 | 1 | | S5Stage 5 - Espalion › Saint-Julien-Chapteuil | 158.9 | | | |
18.08 | 4 | 1 | | S4Stage 4 - Mauriac › Espalion | 158.2 | | | |
17.08 | 36 | 22 | | S3Stage 3 - Montignac-Lascaux › Mauriac | 162.3 | | | |
16.08 | 7 | 30 | | S2 (TTT)Stage 2 (TTT) - Eymet › Bergerac | 32.1 | | | |
15.08 | 42 | 42 | | S1Stage 1 - Marmande › Marmande | 128.8 | | | |
31.07 › 04.0831-4/7 | | | | Tour Alsace (2.2) France | | | | more |
| 29 | | | Youth classificationYouth classification | | | | |
| 1 | | | Mountains classificationMountains classification | | | | |
| 43 | | | Points classificationPoints classification | | | | |
| 53 | | | General classificationGeneral classification | | | | |
04.08 | 23 | | | S4Stage 4 - Ottmarsheim › Dannemarie | 143 | | | |
03.08 | 34 | 54 | | S3Stage 3 - Ribeauvillé › Station du Lac Blanc | 161.3 | | | |
02.08 | 105 | 103 | | S2Stage 2 - Vesoul › La Planche des Belles Filles | 141.1 | | | |
01.08 | 40 | 62 | | S1Stage 1 - Sélestat › Sélestat | 153.4 | | | |
31.07 | 22 | 62 | | ProloguePrologue - Sausheim › Sausheim | 4.3 | | | |
16.07 › 21.0716-21/7 | | | | Giro Ciclistico della Valle d'Aosta Mont Blanc (2.2U) | | | | more |
| 14 | | | Mountains classificationMountains classification | | | | |
| 16 | | | Points classificationPoints classification | | | | |
| 42 | | | General classificationGeneral classification | | | | |
21.07 | 45 | | | S5Stage 5 - Valtournenche › Breuil Cervinia | 120.2 | | | |
20.07 | 62 | 45 | | S4Stage 4 - Orsières › Champex | 128 | | | |
19.07 | 49 | 39 | | S3Stage 3 - Ayas Antagnod › Ayas Champoluc | 179.7 | | | |
18.07 | 84 | 40 | | S2Stage 2 - Aymavilles › Valsavarenche | 137.6 | | | |
17.07 | 5 | 5 | | S1Stage 1 - Sainte Foy Tarentaise › Saint Gervais Mont Blanc | 126 | | | |
16.07 | 17 | 17 | | ProloguePrologue - Aosta › Aosta | 2.7 | | | |
30.06 | DNF | | | National Championships France ME - Road Race (NC) | 252 | | | more |
13.06 › 23.0613-23/6 | | | | Giro Ciclistico d'Italia (2.2U) | | | | more |
| 23 | | | Mountains classificationMountains classification | | | | |
| 15 | | | Points classificationPoints classification | | | | |
| 8 | | | General classificationGeneral classification | | 3 | 1 | |
23.06 | 9 | | | S9Stage 9 - Agordo › Passo Fedaia | 39.9 | | | |
22.06 | 40 | 8 | | S8Stage 8 - Rosa › Falcade | 133.6 | | | |
21.06 | 35 | 7 | | S7Stage 7 - Dimaro › Levico Terme | 131.5 | | | |
20.06 | 11 | 7 | | S6Stage 6 - Aprica › Aprica | 94.3 | | | |
19.06 | 20 | 5 | | S5Stage 5 - Sorbolo Mezzani › Passo Maniva | 158.3 | | | |
17.06 | 12 | 5 | | S4Stage 4 - Buonconvento › Monte Amiata | 140.2 | | | |
16.06 | 5 | 11 | | S3Stage 3 - Sesto Fiorentino › Gaiole in Chianti | 145.5 | | | |
15.06 | 86 | 39 | | S2Stage 2 - Bagno di Romagna › Pescia | 185.8 | | | |
14.06 | 49 | 17 | | S1Stage 1 - Riccione › Santa Sofia | 138.8 | | | |
13.06 | 16 | 16 | | ProloguePrologue - Riccione › Riccione | 3.3 | | | |
23.05 › 26.0523-26/5 | | | | Ronde de l'Isard (2.2U) | | | | more |
| 15 | | | Mountains classificationMountains classification | | | | |
| 14 | | | General classificationGeneral classification | | | | |
26.05 | 2 | | | S4Stage 4 - Bélesta › Saint-Girons | 154.1 | 2 | 1 | |
25.05 | 19 | 15 | | S3Stage 3 - Mirepoix › Quérigut | 141.3 | | | |
24.05 | 18 | 16 | | S2Stage 2 - Salies-du-Salat › Castillon-en-Couserans | 136.7 | | | |
23.05 | 6 | 4 | | S1Stage 1 - Toulouse › Le Mas d'Azil | 145 | | | |
09.05 › 12.059-12/5 | | | | Rhône-Alpes Isère Tour (2.2) | | | | more |
| 4 | | | Youth classificationYouth classification | | | | |
| 31 | | | Points classificationPoints classification | | | | |
| 16 | | | General classificationGeneral classification | | | | |
12.05 | 16 | | | S4Stage 4 - Saint-Maurice-l'Exil › Charvieu-Chavagneux | 172 | | | |
11.05 | 15 | 21 | | S3Stage 3 - Montanay › Saint-Maurice-l'Exil | 172.4 | | | |
10.05 | 14 | 20 | | S2Stage 2 - Saint Exupéry Airport › Saint-Pierre-de-Chandieu | 150.2 | | | |
09.05 | 24 | 24 | | S1Stage 1 - Charvieu-Chavagneux › Villefontaine | 146.6 | | | |
04.05 | DNF | | | L'Etoile d'Or (1.Ncup) | 180 | | | more |
25.04 › 01.0525-1/4 | | | | Le Tour de Bretagne Cycliste (2.2) | | | | more |
| 8 | | | Youth classificationYouth classification | | | | |
| 48 | | | Points classificationPoints classification | | | | |
| 15 | | | General classificationGeneral classification | | | | |
01.05 | 16 | | | S7Stage 7 - Plounévez-Lochrist › Saint-Pol-de-Léon | 150.9 | | | |
30.04 | 29 | 20 | | S6Stage 6 - Le Ferré › Plurien | 171.6 | | | |
29.04 | 34 | 23 | | S5Stage 5 - Rougé › Le Ferré | 191.5 | | | |
28.04 | 40 | 27 | | S4Stage 4 - Ploërmel › Châteaubriant | 152.7 | | | |
27.04 | 31 | 28 | | S3Stage 3 - Port-Louis › Guégon | 172.4 | | | |
26.04 | 34 | 28 | | S2Stage 2 - Bannalec › Quimperlé | 169.4 | | | |
25.04 | 50 | 50 | | S1Stage 1 - Lorient › Inzinzac-Lochrist | 150.5 | | | |
20.04 | DNF | | | Liège - Bastogne - Liège U23 (1.2U) | 171.4 | | | more |
25.03 › 31.0325-31/3 | | | | Tour de Normandie (2.2) | | | | more |
| 13 | | | Youth classificationYouth classification | | | | |
| 38 | | | Mountains classificationMountains classification | | | | |
| 16 | | | Points classificationPoints classification | | | | |
| 29 | | | General classificationGeneral classification | | | | |
31.03 | 16 | | | S7Stage 7 - Saint-Lô › Caen | 150 | | | |
30.03 | 13 | 29 | | S6Stage 6 - Gouville-sur-Mer › Martinvast | 159.5 | | | |
29.03 | 6 | 36 | | S5Stage 5 - Alençon › Bagnoles-de-l'Orne | 171 | | | |
28.03 | 8 | 37 | | S4Stage 4 - Tilly-sur-Seulles › Argentan | 173 | | | |
27.03 | 57 | 40 | | S3Stage 3 - Bourg-Achard › Elbeuf-sur-Seine | 147 | | | |
26.03 | 18 | 22 | | S2Stage 2 - Darnétal › Forges-les-Eaux | 169.5 | | | |
25.03 | 25 | 27 | | S1Stage 1 - Courseulles-sur-Mer › Le Neubourg | 159 | | | |
17.03 | 66 | | | Paris-Troyes (1.2) | 184 | | | more |
24.02 › 03.0324-3/2 | | | | Tour du Rwanda (2.1) France | | | | more |
| 17 | | | Youth classificationYouth classification | | | | |
| 44 | | | General classificationGeneral classification | | | | |
03.03 | 57 | | | S8Stage 8 - Kigali › Kigali | 66.8 | | | |
02.03 | 31 | 41 | | S7Stage 7 - Nyamata › Kigali | 84.1 | | | |
01.03 | 49 | 46 | | S6Stage 6 - Musanze › Nyamata | 121.1 | | | |
28.02 | 49 | 40 | | S5Stage 5 - Karongi › Musanze | 138.7 | | | |
27.02 | 37 | 34 | | S4Stage 4 - Gisenyi (Rubavu) › Karongi | 102.6 | | | |
26.02 | 30 | 28 | | S3Stage 3 - Huye › Gisenyi (Rubavu) | 213.1 | | | |
25.02 | 7 | 4 | | S2Stage 2 - Kigali › Huye | 120.5 | 2 | | |
24.02 | 6 | 6 | | S1Stage 1 - Kigali › Kigali | 111.8 | 3 | | |