| 30-11 | DNS | | UCI Cyclo-cross World Cup - Flamanville U23 (CDM) | |
| 12-10 | DNF | | UCI Gravel World Championship (CM) | 181.0km |
| 06-10 | 14 | | Coppa Bernocchi (1.Pro) | 191.0km |
| 04-10 | 5 | | UEC Road European Championships U23 (CC) | 121.0km |
| 27-09 | DNF | | Grand Prix Cerami (1.2) | 176.0km |
| | | Škoda Tour de Luxembourg (2.Pro) |
| 31 | | Klassement |
| 16 | | Punten |
| 15 | | Jongeren |
| 21-09 | 3 | 31 | Stage 5Mersch - Luxembourg (176.0km) | 176.0km |
| 20-09 | 57 | 47 | Stage 4Niederanven - Niederanven (26.0km) | 26.0km |
| 19-09 | 41 | 47 | Stage 3Mertert - Vianden (170.0km) | 170.0km |
| 18-09 | 18 | 49 | Stage 2Remich - Mamer (168.0km) | 168.0km |
| 17-09 | 50 | 51 | Stage 1Luxembourg - Luxembourg (152.0km) | 152.0km |
| | | Giro della Regione Friuli Venezia Giulia (2.2) |
| 57 | | Klassement |
| 17 | | Jongeren |
| 07-09 | 19 | 57 | Stage 4Cervignano del Friuli - San Daniele del Friuli (151.0km) | 151.0km |
| 06-09 | | 104 | Stage 3Ampezzo - Ravascletto (155.0km) | 155.0km |
| 05-09 | 155 | 110 | Stage 2Porpetto - Teor (167.0km) | 167.0km |
| 04-09 | | | Stage 1Palazzolo dello Stella - Buttrio (156.0km) | 156.0km |
| 31-08 | 32 | | IXINA Classic - Grote Prijs van de Stad Halle (1.2) | 177.0km |
| | | West Bohemia Tour (2.2U) |
| 20 | | Klassement |
| 29 | | Punten |
| 11 | | Jongeren |
| 19 | | Berg |
| 24-08 | 79 | 20 | Stage 3Plzeň - Plzeň (151.0km) | 151.0km |
| 23-08 | 14 | 20 | Stage 2Klatovy - Klatovy (157.0km) | 157.0km |
| 22-08 | 38 | 23 | Stage 1Rokycany - Rokycany (150.0km) | 150.0km |
| 21-08 | 4 | 4 | PrologueStarý Plzenec - Radyně (3.0km) | 3.0km |
| 30-07 | 7 | | Acht van Chaam (CRTP) | |
| | | Giro Ciclistico della Valle d'Aosta - Mont Blanc (2.2U) |
| 18-07 | DNF | | Stage 3Pré-Saint-Didier - Colle del Gran San Bernardo (121.0km) | 121.0km |
| 16-07 | 21 | 21 | Stage 1Aosta - Aosta (85.0km) | 85.0km |
| 28-06 | 26 | | National Road Championships - Netherlands (CN) | 163.0km |
| 28-06 | 11 | | National Road Championships - Netherlands U23 (CN) | 163.0km |
| 11-05 | 11 | | Gent-Wevelgem / Kattekoers-Ieper (1.2U) | 189.0km |
| 03-05 | 7 | | Flèche Ardennaise (1.2) | 174.0km |
| 19-04 | 2 | | Liège-Bastogne-Liège U23 (1.2U) | 175.0km |
| 13-04 | 3 | | Paris-Roubaix Espoirs (1.2U) | 167.0km |
| | | Olympia's Tour (2.2) |
| 14 | | Klassement |
| 27 | | Punten |
| 4 | | Jongeren |
| 30-03 | 12 | 14 | Stage 5Neede - Tiel (185.0km) | 185.0km |
| 29-03 | 30 | 19 | Stage 4Zwolle - Zwolle (195.0km) | 195.0km |
| 28-03 | 24 | 22 | Stage 3Kerkdriel - Rossum (148.0km) | 148.0km |
| 27-03 | 44 | 25 | Stage 2Beek - Beek (175.0km) | 175.0km |
| 26-03 | 26 | 26 | Stage 1Beltrum - Beltrum (10.0km) | 10.0km |
| 21-03 | 24 | | Youngster Coast Challenge (1.2U) | 170.0km |
| 01-02 | 11 | | UCI Cyclo-cross World Championships Liévin U23 (CM) | |
| 26-01 | DNS | | UCI Cyclo-cross World Cup - Hoogerheide U23 (CDM) | |
| 19-01 | 6 | | UCI Cyclo-cross World Cup - Benidorm U23 (CDM) | |
| 12-01 | DNF | | Dutch National Championships CX (CN) | |
| 05-01 | 25 | | UCI Cyclo-cross World Cup - Dendermonde (CDM) | |
| 03-01 | 15 | | X²O Badkamers Trofee - Vlaamse Duinencross U23 (C1) | |