| 27-12 | 51 | | Telenet Superprestige Heusden-Zolder (C1) | |
| 26-12 | 76 | | UCI Cyclo-cross World Cup - Gavere (CDM) | |
| 13-11 | 44 | | UCI Cyclo-cross World Cup - Beekse Bergen (CDM) | |
| 11-11 | 45 | | Telenet Superprestige Niel (C1) | |
| 05-11 | 46 | | UEC Cyclo-Cross European Championships U23 (CC) | |
| 30-10 | 39 | | UCI Cyclo-cross World Cup - Maasmechelen U23 (CDM) | |
| 23-10 | DNF | | UCI Cyclo-cross World Cup - Tabor U23 (CDM) | |
| 16-10 | 7 | | Stockholm cyclocross (C2) | |
| 15-10 | 5 | | CX Täby Park (C2) | |
| 03-10 | DNF | | Sparkassen Münsterland Giro (1.Pro) | 205.0km |
| 11-09 | 18 | | Internationaler GGEW Grand Prix Bensheim (C2) | |
| 10-09 | 11 | | 4 Bikes Festival Cyclocross Race (C2) | |
| | | Kreiz Breizh Elites (2.2) |
| 111 | | Klassement |
| 01-08 | 107 | 111 | Stage 4Guingamp - Rostrenen (186.0km) | 186.0km |
| 31-07 | 121 | 128 | Stage 3Priziac - Carhaix (187.0km) | 187.0km |
| 30-07 | 113 | 118 | Stage 2Calanhel - Plouray (200.0km) | 200.0km |
| 29-07 | 84 | 84 | Stage 1Ploumagoar - Ploumagoar (12.0km) | 12.0km |
| 26-06 | DNF | | National Road Championships - Germany (CN) | 210.0km |
| | | La Route d'Occitanie - La Dépêche du Midi (2.1) |
| 18-06 | DNF | | Stage 3Sigean - Les Angles (188.0km) | 188.0km |
| 17-06 | 140 | 141 | Stage 2Belmont-sur-Rance - Roquefort-sur-Soulzon (35.0km) | 35.0km |
| 16-06 | 139 | 139 | Stage 1Séméac - L'Isle Jourdain (174.0km) | 174.0km |
| | | ZLM Tour (2.Pro) |
| 79 | | Klassement |
| 12-06 | 56 | 79 | Stage 5Made - Rijsbergen (168.0km) | 168.0km |
| 11-06 | 32 | 86 | Stage 4Rucphen - Mierlo (195.0km) | 195.0km |
| 10-06 | 82 | 94 | Stage 3Heythuysen - Buchten (186.0km) | 186.0km |
| 09-06 | 80 | 80 | Stage 2Veere - Goes (183.0km) | 183.0km |
| 08-06 | 29 | 33 | Stage 1Kapelle - Kapelle (101.0km) | 101.0km |
| | | Ronde de l'Oise (2.2) |
| 71 | | Klassement |
| 05-06 | 42 | 71 | Stage 4Compiègne - Beauvais (176.0km) | 176.0km |
| 04-06 | 73 | 81 | Stage 3La Croix-Saint-Ouen - Ressons-sur-Matz (176.0km) | 176.0km |
| 03-06 | 80 | 85 | Stage 2Le Plessis-Belleville - Ribécourt-Dreslincourt (199.0km) | 199.0km |
| 02-06 | 88 | 88 | Stage 1Labruyère - Liancourt (142.0km) | 142.0km |
| 22-05 | DNF | | Rund um Köln (1.1) | 199.0km |
| 15-05 | 80 | | Tro-Bro Léon (1.Pro) | 207.0km |
| 08-05 | 163 | | Flèche Ardennaise (1.2) | 168.0km |
| | | Tour of Thailand (2.1) |
| 74 | | Klassement |
| 22 | | Punten |
| 06-04 | 80 | 74 | Stage 6Nakhon-Phanom - Mukdahan (165.0km) | 165.0km |
| 05-04 | 84 | 66 | Stage 5Nakhon-Phanom - Nakhon-Phanom (163.0km) | 163.0km |
| 04-04 | 8 | 45 | Stage 4Sakon Nakhon - Nakhon-Phanom (176.0km) | 176.0km |
| 03-04 | 68 | 49 | Stage 3Sakon Nakhon - Sakon Nakhon (117.0km) | 117.0km |
| 02-04 | 42 | 45 | Stage 2Mukdahan - Nakhon (183.0km) | 183.0km |
| 01-04 | 11 | 15 | Stage 1Mukdahan - Mukdahan (157.0km) | 157.0km |
| 08-01 | 3 | | German National Championships CX U23 (CN) | |