| 27-12 | 18 | | Exact Azencross Loenhout (C1) | 21.0km |
| 23-12 | 15 | | Telenet Superprestige Mol (C2) | |
| 14-12 | 19 | | X²O Badkamers Trofee - Herentals Cross (C2) | |
| 17-11 | 22 | | X²O Badkamers Trofee - Flandriencross - Hamme (C1) | |
| 16-11 | 5 | | Cyclo-cross Gernelle (C2) | |
| 10-11 | 1 | | VAM-berg cross (C2) | |
| 09-11 | 12 | | Internationale Cyclo-Cross Rucphen (C2) | |
| 01-11 | 14 | | X²O Badkamers Trofee - Koppenbergcross (C1) | |
| 27-10 | 2 | | Grand Prix de la Commune de Contern (C2) | |
| 12-10 | 23 | | Be-Mine Cross Beringen (C2) | |
| 06-10 | 12 | | Brumath Bike Festival by Lollier Ingénierie (C1) | |
| 24-08 | 3 | | Houffa Gravel (National) | |
| | | Tour Alsace (2.2) |
| 30 | | Klassement |
| 18 | | Jongeren |
| 28-07 | 37 | 30 | Stage 5Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 27-07 | 30 | 31 | Stage 4L'Isle-sur-le-Doubs - Valentigney (176.0km) | 176.0km |
| 26-07 | 38 | 34 | Stage 3Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 25-07 | 18 | 23 | Stage 2Riedisheim - Ferrette (154.0km) | 154.0km |
| 24-07 | | 89 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| 30-06 | 14 | | SD WORX BW Classic (1.2) | 185.0km |
| | | Giro d'Italia Next Gen (2.2U) |
| 59 | | Punten |
| 16-06 | | | Stage 8Cesena - Forlimpopoli (146.0km) | 146.0km |
| 15-06 | 72 | 52 | Stage 7Montegrotto Terme - Zocca (170.0km) | 170.0km |
| 14-06 | 47 | 56 | Stage 6Borgo Virgilio - Fosse (145.0km) | 145.0km |
| 13-06 | 108 | 48 | Stage 5Bergamo - Cremona (136.0km) | 136.0km |
| 12-06 | 37 | 48 | Stage 4Pertusio - Borgomanero (130.0km) | 130.0km |
| 11-06 | 44 | 49 | Stage 3Verrès - Pian della Mussa (127.0km) | 127.0km |
| 10-06 | 76 | 80 | Stage 2Aymavilles - Saint-Vincent (121.0km) | 121.0km |
| 09-06 | 90 | 90 | Stage 1Aosta - Aosta (11.0km) | 11.0km |
| 16-05 | 55 | | Mercan'Tour Classic Alpes-Maritimes (1.1) | 168.0km |
| | | Alpes Isère Tour (2.2) |
| 55 | | Klassement |
| 12 | | Berg |
| 39 | | Jongeren |
| 26-05 | 57 | 55 | Stage 5Saint-Pierre-d'Entremont - Bourg-d'Oisans (170.0km) | 170.0km |
| 25-05 | 19 | 26 | Stage 4Saint-Maurice-l'Exil - Roussillon (149.0km) | 149.0km |
| 24-05 | 22 | 27 | Stage 3Saint-Exupéry - Genas (155.0km) | 155.0km |
| 23-05 | 24 | 37 | Stage 2Val-de-Virieu - Saint-Savin (142.0km) | 142.0km |
| 22-05 | 66 | 71 | Stage 1Charvieu-Chavagneux - Charvieu-Chavagneux (127.0km) | 127.0km |
| 19-05 | 27 | | Gran Premio New York City (1.2) | 136.0km |
| 12-05 | 22 | | Flèche Ardennaise (1.2) | 174.0km |
| | | Ronde de l'Isard (2.2U) |
| 17 | | Klassement |
| 28 | | Punten |
| 05-05 | 20 | 17 | Stage 5Pamiers - Saint-Girons (134.0km) | 134.0km |
| 04-05 | 26 | 20 | Stage 4Lavelanet - Plateau de Beille (122.0km) | 122.0km |
| 03-05 | 30 | 18 | Stage 3Bagnères-de-Luchon - Saverdun (153.0km) | 153.0km |
| 02-05 | 22 | 16 | Stage 2Bagnères-de-Bigorre - Bagnères-de-Luchon (125.0km) | 125.0km |
| 01-05 | 8 | 10 | Stage 1L'Isle-en-Dodon - Trie-sur-Baïse (146.0km) | 146.0km |
| 13-04 | 22 | | Liège-Bastogne-Liège U23 (1.2U) | 175.0km |
| | | Circuit des Ardennes (2.2) |
| 72 | | Klassement |
| 07-04 | 83 | 72 | Stage 4Sedan - Sedan (163.0km) | 163.0km |
| 06-04 | 55 | 70 | Stage 3Charleville-Mézières - Aiglemont (145.0km) | 145.0km |
| 05-04 | 72 | 81 | Stage 2Auvillers-les-Forges - Hardoncelle (167.0km) | 167.0km |
| 04-04 | 85 | 85 | Stage 1Juniville - Asfeld (165.0km) | 165.0km |
| 25-02 | 14 | | Internationale Sluitingsprijs - Oostmalle (C1) | |
| 18-02 | 3 | | X²O Badkamers Trofee Brussels Universities Cyclocross U23 (C1) | |
| 18-02 | 1 | | X²O Badkamers Trofee U23 (GC) | |
| 11-02 | 3 | | X²O Badkamers Trofee Krawatencross - Lille U23 (C1) | |
| 10-02 | 36 | | Telenet Superprestige Cyclocross (GC) | |
| 03-02 | 10 | | UCI Cyclo-cross World Championships Tabor U23 (CM) | |
| 27-01 | 4 | | X²O Badkamers Trofee Flandriencross - Hamme U23 (C1) | |
| 14-01 | 9 | | Belgian National Championships CX U23 (CN) | |
| 04-01 | 5 | | X²O Badkamers Trofee Vlaamse Duinencross Koksijde U23 (C1) | |
| 01-01 | 16 | | X²O Badkamers Trofee GP Sven Nys U23 (C1) | |