03.10 | 24 | | | Sparkassen Münsterland Giro (1.Pro) | 192 | 2 | 5 | more |
28.09 | DNF | | | Paris-Chauny (1.1) | 188.8 | | | more |
24.09 | 7 | | | Omloop van het Houtland (1.1) | 198.7 | 20 | 35 | more |
17.09 › 21.0917-21/9 | | | | Skoda Tour de Luxembourg (2.Pro) | | | | more |
| 20 | | | Youth classificationYouth classification | | | | |
| 25 | | | Points classificationPoints classification | | | | |
| 42 | | | General classificationGeneral classification | | | | |
21.09 | 49 | | | S5Stage 5 - Mersch › Luxembourg | 176.4 | | | |
20.09 | 12 | 48 | | S4 (ITT)Stage 4 (ITT) - Niederanven › Niederanven | 26.3 | | | |
19.09 | 64 | 57 | | S3Stage 3 - Mertert › Vianden | 170.5 | | | |
18.09 | 7 | 9 | | S2Stage 2 - Remich › Mamer | 168.4 | 2 | | |
17.09 | 17 | 17 | | S1Stage 1 - Luxembourg › Luxembourg | 152.8 | | | |
23.08 › 29.0823-29/8 | | | | Tour de l'Avenir (2.Ncup) | | | | more |
| 5 | | | Points classificationPoints classification | | | | |
| 84 | | | General classificationGeneral classification | | | | |
29.08 | 94 | | | S6b (ITT)Stage 6b (ITT) - Montvalezan › La Rosière | 10.3 | | | |
29.08 | 85 | 83 | | S6aStage 6a - La Rosière › La Rosière | 41.6 | | | |
28.08 | 100 | 87 | | S5Stage 5 - Saint-Gervais-Mont-Blanc › Tignes 2100 | 121 | | | |
27.08 | 21 | 46 | | S4Stage 4 - Montagnat › Val-Suran | 110.2 | | | |
26.08 | 1 | 47 | | S3Stage 3 - Etang-sur-Arroux › Châtillon-sur-Chalaronne 137k | 158.6 | 5 | 15 | |
25.08 | 20 | 79 | | S2Stage 2 - Saint-Symphorien-sur-Coise › Vitry-en-Charollais | 136.7 | | | |
24.08 | 36 | 75 | | S1Stage 1 - Aoste › Saint-Galmier | 188.6 | | | |
23.08 | 158 | 158 | | ProloguePrologue - Tignes › Tignes 1800 | 3 | | | |
12.08 › 16.0812-16/8 | | | | PostNord Tour of Denmark (2.Pro) | | | | more |
| 5 | | | Youth classificationYouth classification | | | | |
| 29 | | | Points classificationPoints classification | | | | |
| 12 | | | General classificationGeneral classification | | 32 | 25 | |
16.08 | 10 | | | S5Stage 5 - Hobro › Silkeborg | 157.4 | | | |
15.08 | 23 | 11 | | S4Stage 4 - Svendborg › Vejle | 226.9 | | | |
14.08 | 12 | 14 | | S3 (ITT)Stage 3 (ITT) - Kerteminde › Kerteminde | 14.3 | | | |
13.08 | 25 | 17 | | S2Stage 2 - Rødovre › Gladsaxe | 105.5 | | | |
12.08 | 20 | 19 | | S1Stage 1 - Nexø › Rønne | 178.3 | | | |
29.06 | 8 | | | National Championships Denmark ME - Road Race (NC) | 202 | | 10 | more |
27.06 | 7 | | | National Championships Denmark ME - ITT (NC) | 41 | | 3 | more |
22.06 | 46 | | | Copenhagen Sprint (1.UWT) | 235.6 | 5 | 5 | more |
15.06 | 40 | | | Elfstedenronde Brugge (1.1) | 196 | | | more |
04.06 › 08.064-8/6 | | | | Tour of Slovenia (2.Pro) | | | | more |
| 15 | | | Youth classificationYouth classification | | | | |
| 23 | | | Points classificationPoints classification | | | | |
| 78 | | | General classificationGeneral classification | | | | |
08.06 | 60 | | | S5Stage 5 - Litija › Novo mesto | 124.1 | | | |
07.06 | 57 | 71 | | S4Stage 4 - Maribor › Golte 155k | 175 | | | |
06.06 | 7 | 67 | | S3Stage 3 - Majšperk › Ormož | 172 | 2 | | |
05.06 | 65 | 68 | | S2Stage 2 - Velenje › Rogaška Slatina | 162.7 | | | |
04.06 | 26 | 29 | | S1Stage 1 - Piran › Škofljica | 170.6 | | | |
14.05 › 18.0514-18/5 | | | | 4 Jours de Dunkerque / Grand Prix des Hauts de France (2.Pro) | | | | more |
| 21 | | | Youth classificationYouth classification | | | | |
| NR | | | Mountains classificationMountains classification | | | | |
| NR | | | Points classificationPoints classification | | | | |
| 41 | | | General classificationGeneral classification | | | | |
18.05 | 28 | | | S5Stage 5 - Wormhout › Dunkerque | 185.6 | | | |
17.05 | 56 | 41 | | S4Stage 4 - La Chapelle d’Armentières › Cassel | 172.7 | | | |
16.05 | 11 | 47 | | S3Stage 3 - Valenciennes › Famars | 154.2 | | -15 | |
15.05 | 43 | 50 | | S2Stage 2 - Avesnes-sur-Helpe › Crépy-en-Valois | 178.7 | | | |
14.05 | 63 | 64 | | S1Stage 1 - Sainte-Catherine › Amiens | 177.3 | | | |
13.05 | 122 | | | Classique Dunkerque / Grand prix des Hauts de France (1.Pro) | 193.5 | | | more |
11.05 | 84 | | | Tro-Bro Léon (1.Pro) | 203.8 | | | more |
10.05 | DNF | | | Grand Prix du Morbihan (1.Pro) | 190 | | | more |
27.04 › 04.0527-4/4 | | | | Presidential Cycling Tour of Turkiye (2.Pro) | | | | more |
| 87 | | | General classificationGeneral classification | | | | |
04.05 | 48 | | | S8Stage 8 - Çeşme › İzmir (Karşıyaka) | 105.7 | | | |
03.05 | 28 | 87 | | S7Stage 7 - Selçuk › Çeşme | 144.2 | | | |
02.05 | 116 | 89 | | S6Stage 6 - Selçuk › Selçuk (Meryem Ana) | 156 | | | |
30.04 | 68 | 88 | | S4Stage 4 - Marmaris › Akyaka (Kıran) | 115.4 | | | |
29.04 | 134 | 119 | | S3Stage 3 - Fethiye › Marmaris | 175.9 | | | |
28.04 | 120 | 121 | | S2Stage 2 - Kemer › Kalkan | 167.4 | | | |
27.04 | 155 | 155 | | S1Stage 1 - Antalya › Antalya | 132 | | | |
05.04 | 9 | | | HurtigJoakimLøbet (NAT) | 72.8 | | | more |