| 30-12 | 4 | | Telenet Superprestige Diegem (C1) | |
| 29-12 | 1 | | UCI Cyclo-cross World Cup - Besançon U23 (CDM) | |
| 26-12 | 7 | | UCI Cyclo-cross World Cup - Gavere (CDM) | 20.0km |
| 22-12 | 1 | | UCI Cyclo-cross World Cup - Zonhoven U23 (CDM) | |
| 21-12 | 1 | | UCI Cyclo-cross World Cup - Hulst U23 (CDM) | |
| 15-12 | 5 | | UCI Cyclo-cross World Cup - Namur (CDM) | |
| 14-12 | 1 | | X²O Badkamers Trofee - Herentals Cross U23 (C2) | |
| 06-10 | 43 | | Paris - Tours Elite (1.Pro) | 213.0km |
| 27-09 | 8 | | UCI World Championship Zurich U23 (CM) | 173.0km |
| 21-09 | 15 | | SUPER 8 Classic (1.Pro) | 197.0km |
| 18-09 | 44 | | Grand Prix de Wallonie (1.Pro) | 202.0km |
| 13-09 | 7 | | UEC Road European Championships U23 (CC) | 162.0km |
| 28-08 | 11 | | Muur Classic Geraardsbergen (1.1) | 180.0km |
| | | Lidl Deutschland Tour (2.Pro) |
| 21 | | Klassement |
| 29 | | Punten |
| 12 | | Jongeren |
| 25-08 | 14 | 21 | Stage 4Annweiler am Trifels - Saarbrücken (172.0km) | 172.0km |
| 24-08 | 7 | 23 | Stage 3Schwäbisch Gmünd - Villingen-Schwenningen (212.0km) | 212.0km |
| 23-08 | 22 | 23 | Stage 2Heilbronn - Schwäbisch Gmünd (173.0km) | 173.0km |
| 22-08 | 42 | 34 | Stage 1Schweinfurt - Heilbronn (177.0km) | 177.0km |
| 21-08 | 40 | 40 | PrologueSchweinfurt - Schweinfurt (2.0km) | 2.0km |
| 15-08 | 32 | | Tour of Leuven - Memorial Jef Scherens (1.1) | 191.0km |
| | | Ethias-Tour de Wallonie (2.Pro) |
| 28 | | Klassement |
| 29 | | Punten |
| 5 | | Jongeren |
| 26-07 | 33 | 28 | Stage 5Mouscron - Thuin (192.0km) | 192.0km |
| 25-07 | 9 | 26 | Stage 4Verviers - Herve (190.0km) | 190.0km |
| 24-07 | 29 | 28 | Stage 3Arlon - La Roche-en-Ardenne (192.0km) | 192.0km |
| 23-07 | 45 | 27 | Stage 2Saint-Ghislain - Ouffet (188.0km) | 188.0km |
| 22-07 | 23 | 27 | Stage 1Tournai - Fleurus (178.0km) | 178.0km |
| 30-06 | 2 | | SD WORX BW Classic (1.2) | 185.0km |
| 23-06 | 1 | | National Road Championships - Netherlands U23 (CN) | 136.0km |
| | | Oberösterreich Rundfahrt (2.2) |
| 21 | | Klassement |
| 1 | | Punten |
| 15 | | Berg |
| 4 | | Jongeren |
| 16-06 | 23 | 21 | Stage 3Asten - Hinterstoder Höss (152.0km) | 152.0km |
| 15-06 | 5 | 4 | Stage 2Wels - Aigen-Schlägl (150.0km) | 150.0km |
| 14-06 | 5 | 3 | Stage 1Elferding - Altheim (185.0km) | 185.0km |
| 13-06 | 1 | 1 | PrologueLinz - Linz0 | 0 |
| | | Course de la Paix U23 (2.NCUP) |
| 19 | | Klassement |
| 3 | | Punten |
| 02-06 | 3 | 19 | Stage 4Šumperk - Jeseník (126.0km) | 126.0km |
| 01-06 | 22 | 21 | Stage 3Bruntal - Dlouhé (99.0km) | 99.0km |
| 31-05 | 2 | 7 | Stage 2Uničov - Rýmařov (117.0km) | 117.0km |
| 30-05 | 16 | 16 | Stage 1Krnov - Opava (123.0km) | 123.0km |
| 19-05 | 1 | | Gran Premio New York City (1.2) | 136.0km |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 36 | | Klassement |
| 16 | | Punten |
| 01-05 | 46 | 36 | Stage 7Le Hinglé - Dinan (159.0km) | 159.0km |
| 30-04 | 18 | 26 | Stage 6Saint-Onen-la-Chapelle - Louvigné-du-Désert (192.0km) | 192.0km |
| 29-04 | 12 | 27 | Stage 5La Gacilly - Saint-Méen-le-Grand (203.0km) | 203.0km |
| 28-04 | 17 | 26 | Stage 4Le Croisic - La Gacilly (171.0km) | 171.0km |
| 27-04 | 34 | 28 | Stage 3Noyal-Pontivy - Guérande (180.0km) | 180.0km |
| 26-04 | 2 | 4 | Stage 2Milizac-Guipronvel - Noyal-Pontivy (206.0km) | 206.0km |
| 25-04 | 94 | 96 | Stage 1Locmaria-Plouzané - Plougonvelin (146.0km) | 146.0km |
| 21-04 | 23 | | Gent-Wevelgem / Kattekoers-Ieper U23 (1.2U) | 182.0km |
| 13-04 | 23 | | Liège-Bastogne-Liège U23 (1.2U) | 175.0km |
| 07-04 | 8 | | Paris-Roubaix Espoirs (1.2U) | 164.0km |
| 15-03 | 5 | | Youngster Coast Challenge (1.2U) | |
| 10-02 | 24 | | Telenet Superprestige Cyclocross (GC) | |
| 03-02 | 1 | | UCI Cyclo-cross World Championships Tabor U23 (CM) | |
| 28-01 | 1 | | UCI Cyclo-cross World Cup - Hoogerheide U23 (CDM) | |
| 21-01 | 4 | | UCI Cyclo-cross World Cup - Benidorm U23 (CDM) | |
| 14-01 | 5 | | Dutch National Championships CX (CN) | |
| 14-01 | 1 | | Dutch National Championships CX U23 (CN) | |