| 23-12 | 1 | | UCI Cyclo-cross World Cup - Antwerpen U19 (CDM) | |
| 17-12 | 1 | | UCI Cyclo-cross World Cup - Namur U19 (CDM) | |
| 10-12 | 1 | | Coupe de France de Cyclo-Cross #6 - Flamanville U19 (C2) | |
| 09-12 | 1 | | Coupe de France de Cyclo-Cross #5 - Flamanville U19 (C2) | |
| 26-11 | 5 | | UCI Cyclo-cross World Cup - Dublin U19 (CDM) | |
| 19-11 | 3 | | UCI Cyclo-cross World Cup - Troyes U19 (CDM) | |
| 12-11 | 1 | | Coupe de France de Cyclo-Cross #4 - Albi U19 (C2) | |
| 11-11 | 1 | | Coupe de France de Cyclo-Cross #3 - Albi U19 (C2) | |
| 05-11 | 1 | | UEC Cyclo-Cross European Championships U19 (CC) | |
| 22-10 | 1 | | Coupe de France de Cyclo-Cross #2 - Quelneuc U19 (C2) | |
| 21-10 | 1 | | Coupe de France de Cyclo-Cross #1 - Quelneuc U19 (C2) | |
| 15-10 | 1 | | Swiss Cyclocross Cup #2 - Internationales Radquer Steinmaur U19 (C2) | |
| 08-10 | 3 | | Brumath Bike Festival by Lollier Ingénierie U19 (C1) | |
| 24-09 | 1 | | Radcross Illnau U19 (C2) | |
| | | Grand Prix Rüebliland (2.1) |
| 9 | | Klassement |
| 18 | | Punten |
| 10-09 | 21 | 9 | Stage 3Altishofen - Altishofen (107.0km) | 107.0km |
| 09-09 | 19 | 6 | Stage 2aMöhlin - Möhlin (66.0km) | 66.0km |
| 09-09 | 7 | 7 | Stage 2bMöhlin - Möhlin (42.0km) | 42.0km |
| 08-09 | 82 | 5 | Stage 1Vordemwald - Vordemwald (86.0km) | 86.0km |
| 05-08 | DNF | | UCI World Championship Glasgow U19 (CM) | 127.0km |
| | | Watersley Junior Challenge (2.NCUP) |
| 22 | | Klassement |
| 12 | | Berg |
| 30-07 | 24 | 22 | Stage 3Sittard-Geleen - Sittard-Geleen (113.0km) | 113.0km |
| 29-07 | 24 | 26 | Stage 2Neerharen - Mopertingen (122.0km) | 122.0km |
| 28-07 | 28 | 28 | Stage 1Sittard-Geleen - Sittard-Geleen (5.0km) | 5.0km |
| | | Ain Bugey Valromey Tour (2.1) |
| 5 | | Klassement |
| 11 | | Punten |
| 18 | | Berg |
| 16-07 | 9 | 5 | Stage 5Yenne - sommet du Gd Colombier (87.0km) | 87.0km |
| 15-07 | 6 | 5 | Stage 4Artemare - Les Plans d'Hotonnes (124.0km) | 124.0km |
| 14-07 | 18 | 8 | Stage 3Montalieu Vercieu - Les Avenières (94.0km) | 94.0km |
| 13-07 | 26 | 13 | Stage 2Champdor - Belley (101.0km) | 101.0km |
| 12-07 | 4 | 4 | Stage 1Lagnieu - Lhuis (38.0km) | 38.0km |
| 18-06 | 2 | | TF GD Dorigo MO Sogno Veneto MO Ettore e Cristiano Floriani MO Emilio Mazzero (1.1) | |
| | | LVM Saarland Trofeo (2.NCUP) |
| 5 | | Klassement |
| 3 | | Berg |
| 11-06 | | 5 | Stage 5Niedergailbach - Niedergailbach (123.0km) | 123.0km |
| 10-06 | 58 | 5 | Stage 4Zweibrücken - Zweibrücken (9.0km) | 9.0km |
| 10-06 | 12 | 1 | Stage 3Niederwürzbach - Aßweiler (125.0km) | 125.0km |
| 09-06 | 7 | 5 | Stage 2Sarreguemines - Bitche (118.0km) | 118.0km |
| 08-06 | 5 | 5 | Stage 1Neunkirchen - Friedrichsthal (114.0km) | 114.0km |
| 03-06 | 26 | | La Classique des Alpes Juniors (1.1) | |
| | | SPIE Intern. Juniorendriedaagse (2.1) |
| 14 | | Klassement |
| 23 | | Punten |
| 21-05 | 29 | 14 | Stage 4Velzeke - Velzeke (99.0km) | 99.0km |
| 20-05 | 52 | | Stage 3Sluiskil - Sluiskil (80.0km) | 80.0km |
| 20-05 | 13 | 12 | Stage 2Westdorpe - Westdorpe (11.0km) | 11.0km |
| 19-05 | 32 | 32 | Stage 1Axel - Axel (102.0km) | 102.0km |
| 06-05 | 4 | | Liège-Bastogne-Liège U19 (1.1) | |
| 29-04 | 16 | | E3 Saxo Classic U19 (1.1) | 120.0km |
| | | Eroica Juniores - Nations' Cup (2.NCUP) |
| 9 | | Klassement |
| 22-04 | 11 | 9 | Stage 3Siena - Chiusdino (109.0km) | 109.0km |
| 21-04 | 19 | 12 | Stage 2Siena - Poggibonsi (70.0km) | 70.0km |
| 21-04 | 3 | 12 | Stage 1Castelnuovo Berardenga - Rapolano Terme (11.0km) | 11.0km |
| 26-03 | DNF | | Gent-Wevelgem / Grote Prijs A. Noyelle-Ieper U19 (1.1) | 133.0km |
| 05-02 | 18 | | UCI Cyclo-cross World Championships Hoogerheide U19 (CM) | |
| 29-01 | 29 | | UCI Cyclo-cross World Cup - Besançon U19 (CDM) | |
| 22-01 | 10 | | UCI Cyclo-cross World Cup - Benidorm U19 (CDM) | |
| 15-01 | 4 | | French National Championships CX U19 (CN) | |
| 08-01 | 11 | | UCI Cyclo-cross World Cup - Zonhoven U19 (CDM) | |
| 01-01 | 1 | | Grand Prix Garage Collé U19 (C2) | |