| 17-10 | 2 | | Nationale Sluitingsprijs Putte-Kappellen (National) | |
| | | Presidential Cycling Tour of Türkiye (2.Pro) |
| 114 | | Klassement |
| 15-10 | 120 | 114 | Stage 8Istanbul - Istanbul (145.0km) | 145.0km |
| 14-10 | 60 | 115 | Stage 7Selçuk - İzmir (170.0km) | 170.0km |
| 13-10 | 106 | 125 | Stage 6Bodrum - Kusadasi (198.0km) | 198.0km |
| 12-10 | 121 | 128 | Stage 5Marmaris - Bodrum (212.0km) | 212.0km |
| 11-10 | 140 | 125 | Stage 4Fethiye - Marmaris (184.0km) | 184.0km |
| 10-10 | 133 | 127 | Stage 3Kas - Fethiye (164.0km) | 164.0km |
| 09-10 | 123 | | Stage 2Antalya - Demre (147.0km) | 147.0km |
| 08-10 | 152 | | Stage 1Antalya - Antalya (175.0km) | 175.0km |
| 03-10 | 33 | | Binche - Chimay - Binche (1.1) | 198.0km |
| 01-10 | 61 | | UEC Gravel European Championship (CC) | 159.0km |
| 28-09 | DNF | | Circuit Franco-Belge (1.Pro) | 190.0km |
| 16-09 | DNF | | Super 8 Classic / Primus Classic (1.Pro) | 203.0km |
| 27-08 | 2 | | Schaal Sels Merksem (National) | 109.0km |
| | | Baltic Chain Tour (2.2) |
| 6 | | Klassement |
| 18 | | Punten |
| 20-08 | 38 | 6 | Stage 3Panevezys - Panevezys (156.0km) | 156.0km |
| 19-08 | 19 | 6 | Stage 2Sigulda - Sigulda | |
| 18-08 | 12 | 12 | Stage 1Tartu - Valga (186.0km) | 186.0km |
| | | Tour ALSACE (2.2) |
| 29-07 | DNF | | Stage 3Tagolsheim - Altkirch (197.0km) | 197.0km |
| 28-07 | 135 | 130 | Stage 2Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 27-07 | 104 | 32 | Stage 1Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 26-07 | 13 | 32 | PrologueSausheim - Sausheim (4.0km) | 4.0km |
| 20-07 | 72 | | SD WORX BW Classic (1.2) | 185.0km |
| | | Course de Solidarnosc et des Champions Olympiques (2.2) |
| 29 | | Klassement |
| 25 | | Punten |
| 12 | | Berg |
| 01-07 | 116 | 29 | Stage 4Ostrowiec - Stalowa Wola (175.0km) | 175.0km |
| 30-06 | 61 | 18 | Stage 3Pabianice - Kielce (218.0km) | 218.0km |
| 29-06 | 46 | 23 | Stage 2Koluszki - Sieradz (166.0km) | 166.0km |
| 28-06 | 48 | 24 | Stage 1bZgierz - Kutno (85.0km) | 85.0km |
| 28-06 | 24 | 24 | Stage 1aLodz - Skierniewice (83.0km) | 83.0km |
| 25-06 | DNF | | National Road Championships - Netherlands (CN) | 218.0km |
| | | Tour du Pays de Montbéliard (2.2) |
| 105 | | Klassement |
| 18-06 | 101 | 105 | Stage 2Dampierre-les-Bois - Dampierre-les-Bois (160.0km) | 160.0km |
| 17-06 | 113 | 113 | Stage 1Colombier-Fontaine - Colombier-Fontaine (171.0km) | 171.0km |
| 16-06 | 29 | 29 | PrologueCourcelles-lès-Montbéliard - Courcelles-lès-Montbéliard (3.0km) | 3.0km |
| 20-05 | 86 | | Veenendaal-Veenendaal Classic (1.1) | 175.0km |
| 17-05 | 13 | | Puivelde Koerse (National) | 169.0km |
| 14-05 | 7 | | GP Vermarc Sport Rotselaar (National) | 164.0km |
| 10-05 | 3 | | Ruddervoorde Koerse (National) | 166.0km |
| | | Circuit des Ardennes (2.2) |
| 64 | | Klassement |
| 21 | | Berg |
| 09-04 | 86 | 64 | Stage 4Bazeilles - Charleville-Mézières (180.0km) | 180.0km |
| 08-04 | 81 | 67 | Stage 3Chooz - Haybes (166.0km) | 166.0km |
| 07-04 | 69 | 65 | Stage 2Renneville - Gruyères (187.0km) | 187.0km |
| 06-04 | 100 | 101 | Stage 1Nouvion-sur-Meuse - Sedan (90.0km) | 90.0km |
| 29-01 | 30 | | UCI Cyclo-cross World Cup - Besançon (CDM) | |
| 21-01 | 3 | | Exact Cross - Zonnebeke (C2) | |
| 16-01 | 16 | | Cyclocross - Otegem (C2) | |
| 15-01 | 8 | | Dutch National Championships CX (CN) | |
| 08-01 | 15 | | UCI Cyclo-cross World Cup - Zonhoven (CDM) | |
| 05-01 | 14 | | X2O Badkamers Trofee Koksijde (C1) | |