| 03-10 | 4 | | Sparkassen Münsterland Giro (1.1) | 196.0km |
| 22-09 | 14 | | UCI World Championship Limburg U23 (CM) | 161.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 58 | | Klassement |
| 01-09 | 34 | 58 | Stage 6Beaufort - Le Grand-Bornand (82.0km) | 82.0km |
| 31-08 | 94 | 78 | Stage 5Valloire - Le Saisies (130.0km) | 130.0km |
| 30-08 | 71 | 66 | Stage 4Seyssel - Valloire (155.0km) | 155.0km |
| 29-08 | 43 | 10 | Stage 3Pont-d'Ain - Annemasse (152.0km) | 152.0km |
| 28-08 | 1 | 8 | Stage 2Parc des Oiseaux - Chatillon-sur-Chalaronne (139.0km) | 139.0km |
| 27-08 | 14 | 8 | Stage 1Dôle - Belleville (172.0km) | 172.0km |
| 26-08 | 5 | 5 | PrologueDôle - Dôle (3.0km) | 3.0km |
| | | Tour de l'Ain (2.1) |
| 63 | | Klassement |
| 11-08 | 80 | 63 | Stage 5Saint-Claude - Lélex (132.0km) | 132.0km |
| 10-08 | 33 | 38 | Stage 4Nantua - Septmoncel (156.0km) | 156.0km |
| 09-08 | 41 | 48 | Stage 3Belley - Montréal-la-Cluse (154.0km) | 154.0km |
| 08-08 | 8 | 33 | Stage 2bSaint-Vulbas - Saint-Vulbas (11.0km) | 11.0km |
| 08-08 | 24 | 11 | Stage 2aLagnieu - Ambérieu-en-Bugey (83.0km) | 83.0km |
| 07-08 | 10 | 10 | Stage 1Montmerle-sur-Saône - Trévoux (157.0km) | 157.0km |
| | | Kreiz Breizh Elites (2.2) |
| 5 | | Klassement |
| 30-07 | 1 | 5 | Stage 4Carhaix - Rostrenen (169.0km) | 169.0km |
| 29-07 | 3 | 9 | Stage 3Plouguernével - Ploërdut (102.0km) | 102.0km |
| 29-07 | 9 | 9 | Stage 2Carhaix - Cleden-Poher (12.0km) | 12.0km |
| 28-07 | 32 | 32 | Stage 1Calanhel - Plouray (198.0km) | 198.0km |
| 23-06 | 1 | | National Road Championships - Netherlands U23 (CN) | 156.0km |
| | | Internationale Thüringen-Rundfahrt U23 (2.2U) |
| 19 | | Klassement |
| 15-06 | 24 | 19 | Stage 6Zeulenroda-Triebes - Zeulenroda-Triebes (146.0km) | 146.0km |
| 14-06 | 47 | 19 | Stage 5Gräfenroda - Oberhof (8.0km) | 8.0km |
| 13-06 | 6 | 1 | Stage 4Treffurt - Treffurt (185.0km) | 185.0km |
| 12-06 | 21 | 1 | Stage 3Bad Blankenburg - Bad Blankenburg (148.0km) | 148.0km |
| 11-06 | 13 | 1 | Stage 2Schönbrunn - Steinbach (141.0km) | 141.0km |
| 10-06 | 2 | 2 | Stage 1Erfurt - Erfurt (179.0km) | 179.0km |
| 09-06 | 1 | 6 | PrologueSangerhausen - Sangerhausen (6.0km) | 6.0km |
| 27-05 | 6 | | Paris-Roubaix Espoirs (1.2U) | 179.0km |
| | | Royal Smilde Olympia's Tour (2.2) |
| 32 | | Klassement |
| 19-05 | 27 | 32 | Stage 6Reuver - Reuver (96.0km) | 96.0km |
| 19-05 | 26 | 33 | Stage 5Reuver - Reuver (13.0km) | 13.0km |
| 18-05 | 50 | 33 | Stage 4Buchten - Buchten (204.0km) | 204.0km |
| 17-05 | 15 | 5 | Stage 3Elst - Hoofddorp (163.0km) | 163.0km |
| 16-05 | 12 | 5 | Stage 2Ulft - Gendringen (158.0km) | 158.0km |
| 15-05 | 40 | 3 | Stage 1Zandvoort - Noordwijk (144.0km) | 144.0km |
| 14-05 | 2 | 2 | PrologueZandvoort - Zandvoort (3.0km) | 3.0km |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 01-05 | DNS | | Stage 7Langonnet - Dinan (165.0km) | 165.0km |
| 30-04 | 55 | 38 | Stage 6Douarnenez - Lannion (144.0km) | 144.0km |
| 29-04 | 47 | 30 | Stage 5Mûr-de-Bretagne - Douarnenez (164.0km) | 164.0km |
| 28-04 | 44 | 39 | Stage 4Missillac - Mûr-de-Bretagne (154.0km) | 154.0km |
| 27-04 | 16 | 22 | Stage 3Saint-Méen-le-Grand - Missillac (150.0km) | 150.0km |
| 26-04 | 11 | 19 | Stage 2Vannes - Saint-Méen-le-Grand (157.0km) | 157.0km |
| 25-04 | 24 | 24 | Stage 1Vannes - Vannes (167.0km) | 167.0km |
| 22-04 | 10 | | Val d'Ille U Classic 35 (1.2) | |
| 14-04 | 49 | | Liège - Bastogne - Liège U23 (1.2U) | |
| 09-04 | 81 | | Dwars door het Hageland (1.2) | |
| 05-04 | 7 | | Grand Prix Pino Cerami (1.1) | 200.0km |
| | | Le Triptyque des Monts et Châteaux (2.2) |
| 20 | | Klassement |
| 01-04 | 39 | 20 | Stage 4Bel?il - Tournai (162.0km) | 162.0km |
| 31-03 | 42 | 21 | Stage 2Mont-de-l'Enclus - Mont-de-l'Enclus (9.0km) | 9.0km |
| 31-03 | 64 | 21 | Stage 3Mont-de-l'Enclus - Vieux-Condé (85.0km) | 85.0km |
| 30-03 | 25 | 25 | Stage 1Château d'Estaimbourg - Quevaucamps (179.0km) | 179.0km |
| 11-03 | 69 | | Rabobank Dorpenomloop Rucphen (1.2) | |
| 25-02 | 2 | | Ster van Zwolle (1.2) | 157.0km |
| 08-01 | 8 | | Dutch National Championships CX U23 (CU23) | |