13.10 | 112 | | | World Championships MU - Road Race (WC) | 166 | | | more |
03.10 | 62 | | | Sparkassen Münsterland Giro (1.HC) Lotto Soudal | 208 | | | more |
17.09 | DNS | | | European Continental Championships MU - Road Race (CC) Lotto - Soudal U23 | 150.7 | | | more |
04.09 › 11.094-11/9 | | | | Tour of Britain (2.HC) Lotto Soudal | | | | more |
| 54 | | | General classificationGeneral classification | | | | |
11.09 | 100 | | | S8Stage 8 - London › London | 100 | | | |
10.09 | 77 | 51 | | S7bStage 7b - Bristol › Bristol | 90 | | | |
10.09 | 52 | 50 | | S7a (ITT)Stage 7a (ITT) - Bristol › Bristol | 15 | | | |
09.09 | 64 | 50 | | S6Stage 6 - Sidmouth › Haytor, Dartmoor | 150 | | | |
08.09 | 108 | 43 | | S5Stage 5 - Aberdare › Bath | 194.5 | | | |
07.09 | 63 | 28 | | S4Stage 4 - Denbigh › Builth Wells | 218 | | | |
06.09 | 65 | 26 | | S3Stage 3 - Congleton › Tatton Park, Knutsford | 179.4 | | | |
05.09 | 24 | 27 | | S2Stage 2 - Carlisle › Kendal | 188.2 | | | |
04.09 | 89 | 90 | | S1Stage 1 - Glasgow › Castle Douglas | 161.6 | | | |
24.08 | DNF | | | Druivenkoers - Overijse (1.1) Lotto Soudal | 196.4 | | | more |
21.08 | DNF | | | Grote Prijs Jef Scherens - Rondom Leuven (1.1) Lotto Soudal | 185.7 | | | more |
07.08 | 40 | | | Antwerpse Havenpijl (1.2) Lotto - Soudal U23 | 178 | | | more |
05.08 | 43 | | | Dwars door het Hageland - Aarschot (1.1) Lotto Soudal | 194.1 | | | more |
27.07 › 31.0727-31/7 | | | | Tour Alsace (2.2) | | | | more |
| 10 | | | Youth classificationYouth classification | | | | |
| 18 | | | Mountains classificationMountains classification | | | | |
| 13 | | | General classificationGeneral classification | | | | |
31.07 | 20 | | | S4Stage 4 - Colmar › Sélestat | 149.6 | | | |
30.07 | 16 | 13 | | S3Stage 3 - Ribeauvillé › Lac Blanc | 157.8 | | | |
29.07 | 39 | 12 | | S2Stage 2 - Altkirch › Huningue | 151.2 | | | |
28.07 | 31 | 21 | | S1Stage 1 - Velleminfroy › Dannemarie | 171.8 | | | |
27.07 | 22 | 22 | | ProloguePrologue - Sausheim › Sausheim | 7.1 | | | |
02.07 | 37 | | | Omloop Het Nieuwsblad Beloften/Circuit Het Nieuwsblad Espoirs (1.2) | 170 | | | more |
26.06 | 10 | | | National Championships Great Britain ME - Road Race (NC) | 207 | | 3 | more |
23.06 | 6 | | | National Championships Great Britain U23 - ITT (NC) | 34.8 | | | more |
07.06 › 12.067-12/6 | | | | Okolo Slovenska (2.2) | | | | more |
12.06 | DNF | | | S5Stage 5 - Bojnice › Piestany | 121.9 | | | |
11.06 | 36 | 17 | | S4Stage 4 - Zuberec › Bojnice | 183.7 | | | |
10.06 | 23 | 15 | | S3Stage 3 - Strbske Pleso › Zuberec | 193.2 | | | |
09.06 | 11 | 13 | | S2Stage 2 - Banska Bystrica › Strbske Pleso | 170.1 | | | |
08.06 | 39 | 32 | | S1Stage 1 - Banska Bystrica › Banska Bystrica | 136.8 | | | |
07.06 | 52 | 52 | | ProloguePrologue - Banska Bystrica › Banska Bystrica | 1.1 | | | |
05.06 | 14 | | | Memorial Philippe Van Coningsloo (1.2) | 182 | | | more |
15.05 | 52 | | | Grand Prix Criquielion (1.2) | 180 | | | more |
08.05 | 3 | | | Flèche Ardennaise (1.2) | 181.9 | 7 | 25 | more |
05.05 | 10 | | | Dwars door de Vlaamse Ardennen (1.2) | 179.6 | | 3 | more |
25.04 › 01.0525-1/4 | | | | Le Tour de Bretagne Cycliste trophée harmonie Mutuelle (2.2) | | | | more |
| 9 | | | Youth classificationYouth classification | | | | |
| 15 | | | Mountains classificationMountains classification | | | | |
| 25 | | | Points classificationPoints classification | | | | |
| 16 | | | General classificationGeneral classification | | | | |
01.05 | 16 | | | S7Stage 7 - Le Hinglé › Dinan | 149 | | | |
30.04 | 12 | 14 | | S6Stage 6 - Fouesnant › Fouesnant | 156 | | | |
29.04 | 40 | 15 | | S5Stage 5 - Plestin-les-Grèves › Treffléan | 192.7 | | | |
28.04 | 26 | 16 | | S4Stage 4 - Plancoet › Lannion | 163.5 | | | |
27.04 | 16 | 10 | | S3Stage 3 - Louisfert › Janzé | 148 | | | |
26.04 | 43 | 10 | | S2Stage 2 - Belz › Louisfert | 204 | | | |
25.04 | 30 | 33 | | S1Stage 1 - Quiberon › Landévant | 158 | | | |
16.04 | 5 | | | Liège - Bastogne - Liège U23 (1.2U) | 178.6 | 2 | 10 | more |
09.04 | 39 | | | Ronde van Vlaanderen Beloften (1.Ncup) | 166 | | | more |
21.03 › 27.0321-27/3 | | | | Tour de Normandie (2.2) | | | | more |
| 4 | | | Youth classificationYouth classification | | | | |
| 36 | | | Points classificationPoints classification | | | | |
| 10 | | | General classificationGeneral classification | | 1 | 3 | |
27.03 | 13 | | | S6Stage 6 - Coutances › Caen | 150 | | | |
26.03 | 16 | 10 | | S5Stage 5 - Trévières › Villedieu-les-Poeles | 180 | | | |
25.03 | 27 | 17 | | S4Stage 4 - Bagnoles de l'orne › Bagnoles de l'orne | 159 | | | |
24.03 | 33 | 16 | | S3Stage 3 - Bourg-Achard › Argentan | 175.5 | | | |
23.03 | 35 | 21 | | S2Stage 2 - Vernon › Elbeuf-sur-Seine | 167 | | | |
22.03 | 53 | 20 | | S1Stage 1 - Mondeville › Forges-les-Eaux | 201 | | | |
21.03 | 19 | 19 | | ProloguePrologue - Carentan › Carentan | 6.4 | | | |
13.03 | 23 | | | Rabobank Dorpenomloop Rucphen (1.2) | 187.9 | | | more |
05.03 | 161 | | | Craft Ster van Zwolle (1.2) | 177 | | | more |