| 30-12 | 1 | | Cyclo-Cross Hulst U19 (C2) | |
| 28-12 | 5 | | Telenet Superprestige Diegem U19 (C1) | |
| 27-12 | 1 | | Telenet Superprestige Heusden-Zolder U19 (C1) | |
| 23-12 | 5 | | UCI Cyclo-cross World Cup - Antwerpen U19 (CDM) | |
| 17-12 | 12 | | UCI Cyclo-cross World Cup - Namur U19 (CDM) | |
| 26-11 | 15 | | UCI Cyclo-cross World Cup - Dublin U19 (CDM) | |
| 19-11 | 7 | | UCI Cyclo-cross World Cup - Troyes U19 (CDM) | |
| 05-11 | 11 | | UEC Cyclo-Cross European Championships U19 (CC) | |
| 28-10 | 2 | | Telenet Superprestige Ruddervoorde U19 (C1) | |
| 22-10 | 3 | | Telenet Superprestige Vlaamse Druivencross Overijse U19 (C1) | |
| 15-10 | 1 | | Gp Oisterwijk U19 (C2) | |
| 08-10 | 1 | | International Cyclo-Cross Bad Salzdetfurth #2 U19 (C2) | |
| 07-10 | 1 | | International Cyclo-Cross Bad Salzdetfurth U19 (C2) | |
| 23-09 | 20 | | UEC Road European Championships U19 (CC) | 111.0km |
| 27-08 | DNF | | La Route des Géants (1.1) | |
| 05-08 | 11 | | UCI World Championship Glasgow U19 (CM) | 127.0km |
| | | Watersley Junior Challenge (2.NCUP) |
| 10 | | Klassement |
| 10 | | Berg |
| 30-07 | 5 | 10 | Stage 3Sittard-Geleen - Sittard-Geleen (113.0km) | 113.0km |
| 29-07 | 12 | 18 | Stage 2Neerharen - Mopertingen (122.0km) | 122.0km |
| 28-07 | 17 | 17 | Stage 1Sittard-Geleen - Sittard-Geleen (5.0km) | 5.0km |
| | | Ain Bugey Valromey Tour (2.1) |
| 76 | | Klassement |
| 5 | | Punten |
| 16-07 | 99 | 76 | Stage 5Yenne - sommet du Gd Colombier (87.0km) | 87.0km |
| 15-07 | 96 | 61 | Stage 4Artemare - Les Plans d'Hotonnes (124.0km) | 124.0km |
| 14-07 | 1 | 4 | Stage 3Montalieu Vercieu - Les Avenières (94.0km) | 94.0km |
| 13-07 | 7 | 6 | Stage 2Champdor - Belley (101.0km) | 101.0km |
| 12-07 | 2 | 2 | Stage 1Lagnieu - Lhuis (38.0km) | 38.0km |
| 21-06 | 5 | | National Road Championships - Netherlands TT U19 (CN) | |
| | | LVM Saarland Trofeo (2.NCUP) |
| 39 | | Klassement |
| 11-06 | | 39 | Stage 5Niedergailbach - Niedergailbach (123.0km) | 123.0km |
| 10-06 | 16 | 39 | Stage 4Zweibrücken - Zweibrücken (9.0km) | 9.0km |
| 10-06 | 49 | 40 | Stage 3Niederwürzbach - Aßweiler (125.0km) | 125.0km |
| 09-06 | 5 | 22 | Stage 2Sarreguemines - Bitche (118.0km) | 118.0km |
| 08-06 | 26 | 26 | Stage 1Neunkirchen - Friedrichsthal (114.0km) | 114.0km |
| 21-05 | 17 | | Ronde van Vlaanderen U19 (1.1) | |
| | | Course de la Paix Juniors (2.NCUP) |
| 3 | | Klassement |
| 3 | | Punten |
| 07-05 | 1 | 3 | Stage 4Terezín - Terezín (98.0km) | 98.0km |
| 06-05 | 7 | 6 | Stage 3Teplice - Olbernhau (117.0km) | 117.0km |
| 05-05 | 6 | 6 | Stage 2aTrebivlice - Trebivlice (8.0km) | 8.0km |
| 05-05 | 20 | 7 | Stage 2bRoudnice - Steti (61.0km) | 61.0km |
| 04-05 | 7 | 10 | Stage 1Litomerice - Litomerice (102.0km) | 102.0km |
| 29-04 | 9 | | E3 Saxo Classic U19 (1.1) | 120.0km |
| 23-04 | 40 | | EPZ Omloop van Borsele (1.1) | |
| 09-04 | 15 | | Paris - Roubaix Juniors (1.NCUP) | 111.0km |
| 26-03 | DNF | | Gent-Wevelgem / Grote Prijs A. Noyelle-Ieper U19 (1.1) | 133.0km |
| | | Guido Reybrouck Classic (2.1) |
| 15 | | Klassement |
| 19-03 | 48 | 15 | Stage 2Damme - Damme (121.0km) | 121.0km |
| 18-03 | 6 | 6 | Stage 1Damme - Damme (10.0km) | 10.0km |
| 26-02 | 51 | | Kuurne-Brussel-Kuurne U19 (1.1) | 116.0km |
| 05-02 | 2 | | UCI Cyclo-cross World Championships Hoogerheide U19 (CM) | |
| 29-01 | 3 | | UCI Cyclo-cross World Cup - Besançon U19 (CDM) | |
| 22-01 | 5 | | UCI Cyclo-cross World Cup - Benidorm U19 (CDM) | |
| 15-01 | 2 | | Dutch National Championships CX U19 (CN) | |
| 08-01 | 16 | | UCI Cyclo-cross World Cup - Zonhoven U19 (CDM) | |