09.10 | 73 | | | Paris - Tours Espoirs (1.2U) | 178.4 | | | more |
27.09 › 02.1027-2/9 | | | | CRO Race (2.1) Team DSM | | | | more |
| 1 | | | Youth classificationYouth classification | | | | |
| 2 | | | Mountains classificationMountains classification | | | | |
| 6 | | | Points classificationPoints classification | | | | |
| 3 | | | General classificationGeneral classification | | 50 | 70 | |
02.10 | 15 | | | S6Stage 6 - Sveta Nedelja › Zagreb | 158 | | | |
01.10 | 2 | 3 | | S5Stage 5 - Opatija › Labin | 154 | 12 | 5 | |
30.09 | 44 | 4 | | S4Stage 4 - Biograd na Moru › Crikvenica | 219 | | | |
29.09 | 2 | 3 | | S3Stage 3 - Sinj › Primošten | 157 | 12 | 5 | |
28.09 | 67 | 34 | | S2Stage 2 - Otočac › Zadar | 163 | | | |
27.09 | 14 | 15 | | S1Stage 1 - Osijek › Ludbreg | 223.5 | | | |
04.09 › 08.094-8/9 | | | | Tour of Britain (2.Pro) Team DSM | | | | more |
| 11 | | | Mountains classificationMountains classification | | | | |
| 25 | | | Points classificationPoints classification | | | | |
| 24 | | | General classificationGeneral classification | | 2 | 5 | |
08.09 | 31 | | | S5Stage 5 - West Bridgford › Mansfield | 186.8 | | | |
07.09 | 33 | 28 | | S4Stage 4 - Redcar › Duncombe Park, Helmsley | 149.5 | | | |
06.09 | 47 | 32 | | S3Stage 3 - Durham › Sunderland | 163.6 | | | |
05.09 | 57 | 30 | | S2Stage 2 - Hawick › Duns | 175.2 | | | |
04.09 | 8 | 8 | | S1Stage 1 - Aberdeen › Glenshee Ski Centre | 181.3 | 1 | | |
28.08 | 36 | | | Ronde van de Achterhoek (1.2) | 204.1 | | | more |
24.08 | 55 | | | Druivenkoers - Overijse (1.1) | 192 | | | more |
04.08 › 07.084-7/8 | | | | Sazka Tour (2.1) | | | | more |
| 3 | | | Youth classificationYouth classification | | | | |
| 10 | | | Points classificationPoints classification | | | | |
| 7 | | | General classificationGeneral classification | | 20 | 35 | |
07.08 | 18 | | | S4Stage 4 - Šumperk › Šternberk | 179.9 | | | |
06.08 | 7 | 5 | | S3Stage 3 - Moravská Třebová › Dlouhé Stráně | 148.7 | 2 | | |
05.08 | 2 | 3 | | S2Stage 2 - Olomouc › Pustevny | 189.3 | 12 | 5 | |
04.08 | 96 | 96 | | S1Stage 1 - Uničov › Prostějov | 196.2 | | | |
13.07 › 17.0713-17/7 | | | | Giro Ciclistico della Valle d'Aosta - Mont Blanc (2.2U) | | | | more |
| 3 | | | Mountains classificationMountains classification | | | | |
| 1 | | | Points classificationPoints classification | | | | |
| 14 | | | General classificationGeneral classification | | | | |
17.07 | 1 | | | S5Stage 5 - Valtournenche › Cervinia | 119.7 | 5 | 5 | |
16.07 | 4 | 21 | | S4Stage 4 - Pont Saint Martin › Fontainemore (Pian Coumarial) | 173.8 | | | |
15.07 | 89 | 51 | | S3Stage 3 - Aosta › Aosta | 138.8 | | | |
14.07 | 61 | 41 | | S2Stage 2 - Saint Christophe › Saint Christophe | 124.5 | | | |
13.07 | 5 | 5 | | S1Stage 1 - Saint Gervais Mont Blanc › Saint Gervais Mont Blanc | 82.4 | | | |
26.06 | 64 | | | National Championships Great Britain ME - Road Race (NC) | 201 | | | more |
23.06 | 11 | | | National Championships Great Britain U23 - ITT (NC) | 22.1 | | | more |
11.06 › 18.0611-18/6 | | | | Giro d'Italia Giovani Under 23 (2.2U) | | | | more |
| 24 | | | Mountains classificationMountains classification | | | | |
| 48 | | | Points classificationPoints classification | | | | |
| 9 | | | General classificationGeneral classification | | 2 | 1 | |
18.06 | 31 | | | S7Stage 7 - Cuneo › Pinerolo | 121 | | | |
17.06 | 16 | 9 | | S6Stage 6 - Boves › Colle Fauniera | 110.7 | | | |
16.06 | 51 | 8 | | S5Stage 5 - Busca › Peveragno | 146.6 | | | |
14.06 | 33 | 8 | | S4Stage 4 - Chiuro › Chiavenna | 101.1 | | | |
13.06 | 7 | 8 | | S3Stage 3 - Pinzolo › Santa Caterina Valfurva | 177.1 | | | |
12.06 | 57 | 83 | | S2Stage 2 - Rossano Veneto › Pinzolo | 166.5 | | | |
11.06 | 171 | 170 | | S1Stage 1 - Gradara › Argenta | 164.9 | | | |
04.06 | 89 | | | Heylen Vastgoed Heistse Pijl (1.1) | 192.8 | | | more |
25.05 › 29.0525-29/5 | | | | Alpes Isère Tour (2.2) | | | | more |
| 22 | | | Youth classificationYouth classification | | | | |
| 6 | | | Mountains classificationMountains classification | | | | |
| 41 | | | Points classificationPoints classification | | | | |
| 35 | | | General classificationGeneral classification | | | | |
29.05 | 30 | | | S5Stage 5 - Entre-deux-Guiers › Allevard-les-Bains | 133.1 | | | |
28.05 | 72 | 9 | | S4Stage 4 - Saint-Maurice-l'Exil › Beaurepaire | 171.4 | | | |
27.05 | 44 | 9 | | S3Stage 3 - Saint-Exupéry › Toussieu | 145.5 | | | |
26.05 | 17 | 6 | | S2Stage 2 - Les Abrets-en-Dauphiné › Saint-Quentin-Fallavier | 161.2 | | | |
25.05 | 72 | 7 | | S1Stage 1 - Charvieu-Chavagneux › Charvieu-Chavagneux | 118.1 | | | |
08.05 | 19 | | | Flèche Ardennaise (1.2) | 168.6 | | | more |
06.04 › 09.046-9/4 | | | | Circuit des Ardennes (2.2) | | | | more |
| 3 | | | Youth classificationYouth classification | | | | |
| 7 | | | Mountains classificationMountains classification | | | | |
| 17 | | | Points classificationPoints classification | | | | |
| 5 | | | General classificationGeneral classification | | 8 | 15 | |
09.04 | 11 | | | S4Stage 4 - Charleville-Mézières › Charleville-Mézières | 172.7 | | | |
07.04 | 17 | 7 | | S2Stage 2 - Bazeilles › Sedan | 92.5 | | | |
06.04 | 11 | 7 | | S1Stage 1 - Signy-le-Petit › Signy-le-Petit | 165.2 | | | |
02.04 | 35 | | | Volta Limburg Classic (1.1) | 195 | | | more |
18.03 | 26 | | | Youngster Coast Challenge (1.2U) | 167.2 | | | more |
06.03 | DNF | | | Visit Friesland Elfsteden Race (1.2) | 199.2 | | | more |