| | | OVO Energy Tour of Britain (2.HC) |
| 79 | | Klassement |
| 27 | | Berg |
| 14-09 | 79 | 79 | Stage 8Altrincham - Manchester (165.0km) | 165.0km |
| 13-09 | 74 | 79 | Stage 7Warwick - Burton Dassett Country Park (186.0km) | 186.0km |
| 12-09 | 107 | 81 | Stage 6Pershore - Pershore (14.0km) | 14.0km |
| 11-09 | 90 | 79 | Stage 5Birkenhead - Birkenhead (174.0km) | 174.0km |
| 10-09 | 90 | 75 | Stage 4Gateshead - Kendal (171.0km) | 171.0km |
| 09-09 | 64 | 67 | Stage 3Berwick-upon-Tweed - Newcastle-upon-Tyne (182.0km) | 182.0km |
| 08-09 | 72 | 75 | Stage 2Kelso - Kelso (166.0km) | 166.0km |
| 07-09 | 28 | 31 | Stage 1Glasgow - Kirkcudbright (201.0km) | 201.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 24-08 | DNF | | Stage 9Villaroger - Tignes (67.0km) | 67.0km |
| 23-08 | 98 | 74 | Stage 8Brides-les-Bains - Méribel (23.0km) | 23.0km |
| 22-08 | 49 | 70 | Stage 7Grésy-sur-Isere - La Giettaz (103.0km) | 103.0km |
| 20-08 | 84 | 78 | Stage 6Saint-Julien-Chapteuil - Privas (124.0km) | 124.0km |
| 19-08 | 27 | 86 | Stage 5Espalion - Saint-Julien-Chapteuil (158.0km) | 158.0km |
| 18-08 | 126 | 119 | Stage 4Mauriac - Espalion (158.0km) | 158.0km |
| 17-08 | 128 | 120 | Stage 3Montignac-Lascaux - Mauriac (162.0km) | 162.0km |
| 16-08 | | 19 | Stage 2Eymet - Bergerac (32.0km) | 32.0km |
| 15-08 | 67 | 67 | Stage 1Marmande - Marmande (128.0km) | 128.0km |
| 30-06 | 18 | | National Road Championships - Great Britain (CN) | |
| 27-06 | 6 | | National Road Championships - Great Britain TT U23 (CN) | |
| | | Baby Giro (2.2U) |
| 160 | | Klassement |
| 23-06 | | 160 | Stage 9Agordo - Passo Fedaia (35.0km) | 35.0km |
| 21-06 | 140 | | Stage 7Dimaro Folgarida - Levico Terme (153.0km) | 153.0km |
| 20-06 | 118 | 125 | Stage 6Aprica - Aprica (94.0km) | 94.0km |
| 19-06 | 121 | 125 | Stage 5Sorbolo - Passo Maniva (155.0km) | 155.0km |
| 17-06 | 128 | 123 | Stage 4Buonconvento - Vetta Amiata (163.0km) | 163.0km |
| 16-06 | 118 | 129 | Stage 3Sesto Fiorentino - Gaiole in Chianti (145.0km) | 145.0km |
| 15-06 | 50 | 110 | Stage 2Bagno di Romagna - Pescia (174.0km) | 174.0km |
| 14-06 | 119 | 119 | Stage 1Riccione - Santa Sofia (143.0km) | 143.0km |
| 13-06 | 20 | 20 | PrologueRiccione - Riccione (3.0km) | 3.0km |
| 02-06 | 109 | | Paris-Roubaix Espoirs (1.2U) | |
| | | Tour de Yorkshire (2.HC) |
| 54 | | Klassement |
| 2 | | Berg |
| 05-05 | 77 | 54 | Stage 4Halifax - Leeds (175.0km) | 175.0km |
| 04-05 | 36 | 45 | Stage 3Bridlington - Scarborough (132.0km) | 132.0km |
| 03-05 | 90 | 87 | Stage 2Barnsley - Bedale (132.0km) | 132.0km |
| 02-05 | 60 | 61 | Stage 1Doncaster - Selby (178.0km) | 178.0km |
| 28-04 | 40 | | 15th Rutland - Melton Cicle Classic (1.2) | |
| 20-04 | DNF | | Liège - Bastogne - Liège U23 (1.2U) | 171.0km |
| 13-04 | 45 | | Ronde van Vlaanderen Beloften (1.NCUP) | |
| | | Le Triptyque des Monts et Châteaux (2.2) |
| 9 | | Klassement |
| 20 | | Punten |
| 07-04 | 11 | 9 | Stage 3Ath - Tournai (167.0km) | 167.0km |
| 06-04 | 19 | 9 | Stage 2aCelles - Celles (11.0km) | 11.0km |
| 06-04 | 100 | 9 | Stage 2bWodecq - Celles (112.0km) | 112.0km |
| 05-04 | 7 | 7 | Stage 1Frasnes - Chièvres (147.0km) | 147.0km |
| 31-03 | 4 | | Gent-Wevelgem / Kattekoers-Ieper U23 (1.NCUP) | 173.0km |
| 05-03 | DNF | | Le Samyn (1.1) | 198.0km |
| | | Tour of Antalya (2.2) |
| 25 | | Klassement |
| 24-02 | 104 | 25 | Stage 4Side - Antalya (157.0km) | 157.0km |
| 23-02 | 35 | 25 | Stage 3Perge - Termessos (91.0km) | 91.0km |
| 22-02 | 8 | 10 | Stage 2Antalya - Antalya (109.0km) | 109.0km |
| 21-02 | 12 | 13 | Stage 1Köprülü Kanyon - Antalya (141.0km) | 141.0km |