| 12-10 | 48 | | UCI Gravel World Championship (CM) | 181.0km |
| 07-10 | 83 | | Binche - Chimay - Binche / Mémorial Frank Vandenbroucke (1.1) | 203.0km |
| 04-10 | DNF | | UEC Road European Championships U23 (CC) | 121.0km |
| 27-09 | 26 | | Grand Prix Cerami (1.2) | 176.0km |
| 14-09 | DNF | | GP Rik Van Looy (1.2) | 185.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 29-08 | 90 | 78 | Stage 6aLa Rosière Espace San Bernardo - La Rosière Espace San Bernardo | 41.0km |
| 29-08 | 44 | 73 | Stage 6bLa Rosière-Montvalezan - La Rosière-Montvalezan | 10.0km |
| 28-08 | 67 | 78 | Stage 5Saint-Gervais Mont-Blanc - Tignes | 121.0km |
| 27-08 | 87 | 106 | Stage 4Montagnat - Val Suran | 110.0km |
| 26-08 | 126 | 112 | Stage 3Étang-sur-Arroux - Châtillon-sur-Chalaronne | 158.0km |
| 25-08 | 13 | 115 | Stage 2Saint-Symphorien-sur-Coise - Vitry-en-Charollais | 136.0km |
| 24-08 | 123 | 131 | Stage 1Aoste - Saint-Galmier | 188.0km |
| 23-08 | 150 | 150 | PrologueTignes - Tignes | 3.0km |
| | | Tour Alsace (2.2) |
| 75 | | Standings |
| 3 | | Points |
| 53 | | Youth |
| 03-08 | 74 | 75 | Stage 5Ribeauville - Champ du Feu | 135.0km |
| 02-08 | 2 | 88 | Stage 4Ferrette - Altkirch | 133.0km |
| 01-08 | 109 | 101 | Stage 3Velleminfroy - La Planche des Belles Filles | 141.0km |
| 31-07 | 117 | 74 | Stage 2Rust (Europapark) - Selestat | 168.0km |
| 30-07 | 27 | 70 | Stage 1Sausheim - Sausheim | 4.0km |
| 06-07 | 14 | | National Road Championships - Germany U23 (CN) | |
| 27-06 | 5 | | National Road Championships - Germany TT U23 (CN) | 22.0km |
| 13-06 | DNF | | Grosser Preis des Kantons Aargau (1.1) | 173.0km |
| 09-06 | 129 | | Paris - Troyes (1.2) | 180.0km |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 29-04 | DNF | | Stage 5Erdeven - Guenrouet | 164.0km |
| 28-04 | 10 | 13 | Stage 4Plonéour-Lanvern - Landévant | 204.0km |
| 27-04 | 22 | 31 | Stage 3Loudéac - Plonéour-Lanvern | 212.0km |
| 26-04 | 35 | 35 | Stage 2La Gouesnière - Le Cambout | 182.0km |
| 25-04 | 56 | 56 | Stage 1Hirel - La Fresnais | 144.0km |
| | | Tour du Loir et Cher (2.2) |
| 3 | | Standings |
| 20-04 | | 3 | Stage 5Blois - Blois | 97.0km |
| 19-04 | 88 | 3 | Stage 4Pruniers-en-Sologne - Pruniers-en-Sologne | 210.0km |
| 18-04 | 15 | | Stage 3 Beauce-la-Romaine - Naveil | 205.0km |
| 17-04 | | | Stage 2Monlivault - Mont-Près-Chambord | 139.0km |
| | | Olympia's Tour (2.2) |
| 56 | | Standings |
| 28 | | Youth |
| 30-03 | 70 | 56 | Stage 5Neede - Tiel | 185.0km |
| 29-03 | 68 | 59 | Stage 4Zwolle - Zwolle | 195.0km |
| 26-03 | 25 | | Stage 1Beltrum - Beltrum | 10.0km |
| 21-03 | 56 | | Youngster Coast Challenge (1.2U) | 170.0km |
| 09-03 | 4 | | Dorpenomloop Rucphen (1.2) | 180.0km |
| 04-03 | 93 | | Ename Samyn Classic (1.1) | 199.0km |
| 11-01 | 6 | | German National Championships CX U23 (CN) | |
| 05-01 | 46 | | UCI Cyclo-cross World Cup - Dendermonde (CDM) | |