16.10 | DNF | | | World Championships ME - Road Race (WC) | 257.3 | | | more |
09.10 | 8 | | | World Championships - TTT (WC) | 40 | | | more |
02.10 | 6 | | | Tour de l'Eurométropole (1.1) | 195.6 | 24 | 40 | more |
19.09 › 25.0919-25/9 | | | | Eneco Tour (2.UWT) | | | | more |
| 43 | | | General classificationGeneral classification | | 5 | 8 | |
25.09 | 48 | | | S7Stage 7 - Bornem › Geraardsbergen | 197.8 | | | |
24.09 | 89 | 41 | | S6Stage 6 - Riemst › Lanaken | 185.2 | | | |
23.09 | 11 | 48 | | S5 (TTT)Stage 5 (TTT) - Sittard-Geleen › Sittard-Geleen | 20.9 | | | |
22.09 | 51 | 45 | | S4Stage 4 - Aalter › St-Pieters-Leeuw | 201.4 | | | |
21.09 | 113 | 50 | | S3Stage 3 - Blankenberge › Ardooie | 182.3 | | | |
20.09 | 50 | 51 | | S2 (ITT)Stage 2 (ITT) - Breda › Breda | 9.6 | | | |
19.09 | 53 | 56 | | S1Stage 1 - Bolsward › Bolsward | 184.7 | | | |
15.09 | 11 | | | European Continental Championships ME - ITT (CC) | 45.5 | 2 | | more |
31.08 › 04.0931-4/8 | | | | Tour des Fjords (2.1) | | | | more |
| 11 | | | Youth classificationYouth classification | | | | |
| 20 | | | General classificationGeneral classification | | 1 | 3 | |
04.09 | 51 | | | S5Stage 5 - Hinna Park › Stavanger | 183.8 | | | |
03.09 | 29 | 19 | | S4Stage 4 - Stavanger › Sandnes | 165.6 | | | |
02.09 | 18 | 21 | | S3Stage 3 - Ulvik › Suldalsosen | 221 | | | |
01.09 | 40 | 34 | | S2Stage 2 - Stord › Odda | 212.5 | | | |
31.08 | 39 | 39 | | S1Stage 1 - Os › Bergen | 146.9 | | | |
21.08 | 132 | | | Cyclassics Hamburg (1.UWT) | 217.7 | 5 | | more |
23.07 › 27.0723-27/7 | | | | Tour de Wallonie (2.HC) | | | | more |
| 14 | | | Youth classificationYouth classification | | | | |
| 2 | | | Mountains classificationMountains classification | | | | |
| 70 | | | General classificationGeneral classification | | | | |
27.07 | 87 | | | S5Stage 5 - Engis › Dison | 188 | | | |
26.07 | 66 | 67 | | S4Stage 4 - Aubel › Herstal | 178.8 | | | |
25.07 | 69 | 71 | | S3Stage 3 - Braine-l'Alleud › Vielsalm | 200.6 | | | |
24.07 | 61 | 78 | | S2Stage 2 - Saint-Ghislain › Le Roeulx | 180 | | | |
23.07 | 89 | 91 | | S1Stage 1 - Charleroi › Mettet | 178.3 | | | |
26.06 | 77 | | | National Championships Germany ME - Road Race (NC) | 215.6 | | | more |
24.06 | 3 | | | National Championships Germany - ITT (NC) | 41 | 2 | 20 | more |
16.06 › 19.0616-19/6 | | | | Tour de Slovénie (2.1) | | | | more |
| 5 | | | Youth classificationYouth classification | | | | |
| 45 | | | General classificationGeneral classification | | | | |
19.06 | 93 | | | S4Stage 4 - Rogaska Slatina › Novo mesto | 179.1 | | | |
18.06 | 49 | 45 | | S3 (ITT)Stage 3 (ITT) - Celje › Celjska koca | 16.8 | | | |
17.06 | 51 | 48 | | S2Stage 2 - Nova Gorica › Golte | 217.2 | | | |
16.06 | 63 | 63 | | S1Stage 1 - Ljubljana › Koper | 175.7 | | | |
09.06 | 87 | | | GP du canton d'Argovie (1.HC) | 188.7 | | | more |
25.05 › 29.0525-29/5 | | | | Baloise Belgium Tour (2.HC) | | | | more |
29.05 | DNF | | | S4Stage 4 - Tremelo › Tongeren | 174.2 | | | |
27.05 | 36 | 17 | | S2Stage 2 - Knokke-Heist › Herzele | 200.9 | | | |
26.05 | 161 | 13 | | S1Stage 1 - Buggenhout › Knokke-Heist | 174.5 | | | |
25.05 | 11 | 11 | | ProloguePrologue - Beveren › Beveren | 6 | | | |
29.04 › 01.0529-1/4 | | | | Tour de Yorkshire (2.1) | | | | more |
| 12 | | | Mountains classificationMountains classification | | | | |
| 28 | | | Points classificationPoints classification | | | | |
| 73 | | | General classificationGeneral classification | | | | |
01.05 | 42 | | | S3Stage 3 - Middlesbrough › Scarborough | 198 | | | |
30.04 | 117 | 94 | | S2Stage 2 - Otley › Doncaster | 135.5 | | | |
29.04 | 100 | 97 | | S1Stage 1 - Beverley › Settle | 184 | | | |
10.04 | DNF | | | Paris - Roubaix (1.UWT) | 257.5 | | | more |
03.04 | 89 | | | Ronde van Vlaanderen / Tour des Flandres ME (1.UWT) | 255 | 5 | | more |
29.03 › 31.0329-31/3 | | | | Driedaagse De Panne-Koksijde (2.HC) | | | | more |
| 2 | | | Youth classificationYouth classification | | | | |
| 9 | | | General classificationGeneral classification | | 45 | 40 | |
31.03 | 13 | | | S3b (ITT)Stage 3b (ITT) - De Panne › De Panne | 14.2 | | | |
31.03 | 32 | 20 | | S3aStage 3a - De Panne › De Panne | 111.5 | | | |
30.03 | 56 | 24 | | S2Stage 2 - Zottegem › Koksijde | 211.1 | | | |
29.03 | 29 | 29 | | S1Stage 1 - De Panne › Zottegem | 198.2 | | | |
25.03 | 47 | | | E3 Harelbeke (1.UWT) | 206 | 5 | 8 | more |
23.03 | 110 | | | Dwars door Vlaanderen / A travers la Flandre (1.HC) | 199.7 | | | more |
04.03 › 06.034-6/3 | | | | Driedaagse van West-Vlaanderen (2.1) | | | | more |
| 3 | | | Youth classificationYouth classification | | | | |
| 8 | | | Points classificationPoints classification | | | | |
| 3 | | | General classificationGeneral classification | | 50 | 70 | |
06.03 | 3 | | | S2Stage 2 - Nieuwpoort › Ichtegem | 182.7 | 7 | 3 | |
05.03 | 56 | 8 | | S1Stage 1 - Brugge › Harelbeke | 176.3 | | | |
04.03 | 10 | 10 | | ProloguePrologue - Middelkerke › Middelkerke | 7 | | | |
02.03 | 5 | | | Le Samyn (1.1) | 202.6 | 28 | 50 | more |
28.02 | 83 | | | Kuurne-Brussel-Kuurne (1.HC) | 203 | | | more |
27.02 | 100 | | | Omloop Het Nieuwsblad ME (1.HC) | 200.8 | | | more |
20.02 › 21.0220-21/2 | | | | Tour Cycliste International du Haut Var Matin (2.1) | | | | more |
21.02 | DNS | | | S2Stage 2 - Draguignan › Draguignan | 206.8 | | | |
20.02 | 96 | 96 | | S1Stage 1 - Le Cannet des Maures › Bagnols en Forêt | 155 | | | |
08.02 › 12.028-12/2 | | | | Tour of Qatar (2.HC) | | | | more |
| 4 | | | Youth classificationYouth classification | | | | |
| 22 | | | General classificationGeneral classification | | 4 | 5 | |
12.02 | 68 | | | S5Stage 5 - Sealine Beach Resort › Doha Corniche | 114 | | | |
11.02 | 52 | 23 | | S4Stage 4 - Al Zubarah Fort › Madinat Al Shamal | 189 | | | |
10.02 | 11 | 20 | | S3 (ITT)Stage 3 (ITT) - Lusail › Lusail | 11 | | | |
09.02 | 73 | 44 | | S2Stage 2 - Doha › Doha | 135 | | | |
08.02 | 48 | 48 | | S1Stage 1 - Dukhan › Al Khor Corniche | 176 | | | |