1 | 2025-03-08 | Strade Bianche | | | 13 | | | 67 |
2 | 2024-10-12 | Il Lombardia | | | 57 | | | DNF |
3 | 2024-10-10 | Gran Piemonte | | | 64 | | | DNF |
4 | 2024-04-14 | Amstel Gold Race | | | DNF | | | 72 |
5 | 2024-03-10 | Tirreno-Adriatico | General classification | | | 73 | | | 66 |
6 | 2024-03-10 | Tirreno-Adriatico | Stage 7 | | | 89 | | | 110 |
7 | 2024-03-09 | Tirreno-Adriatico | Stage 6 | | | 86 | | | 30 |
8 | 2024-03-08 | Tirreno-Adriatico | Stage 5 | | | 91 | | | 72 |
9 | 2024-03-07 | Tirreno-Adriatico | Stage 4 | | | 135 | | | 151 |
10 | 2024-03-06 | Tirreno-Adriatico | Stage 3 | | | 120 | | | 148 |
11 | 2024-03-05 | Tirreno-Adriatico | Stage 2 | | | 65 | | | 163 |
12 | 2024-03-04 | Tirreno-Adriatico | Stage 1 (ITT) | | | 45 | | | 81 |
13 | 2023-08-20 | Cyclassics Hamburg | | | 60 | | | 117 |
14 | 2023-06-25 | National Championships Great Britain ME - Road Race | | | 6 | | | 8 |
15 | 2023-04-19 | La Flèche Wallonne | | | 134 | | | DNF |
16 | 2023-04-16 | Amstel Gold Race | | | 67 | | | 70 |
17 | 2023-04-09 | Paris-Roubaix | | | 68 | | | DNF |
18 | 2023-02-25 | Omloop Het Nieuwsblad ME | | | 91 | | | 67 |
19 | 2022-06-26 | National Championships Great Britain ME - Road Race | | | 7 | | | 73 |
20 | 2022-03-19 | Milano-Sanremo | | | 77 | | | 135 |
21 | 2021-10-17 | National Championships Great Britain ME - Road Race | | | 11 | | | 9 |
22 | 2021-10-14 | National Championships Great Britain ME - ITT | | | 6 | | | 3 |
23 | 2021-09-12 | Tour of Britain | General classification | | | 16 | | | 14 |
24 | 2021-09-12 | Tour of Britain | Stage 8 | | | 29 | | | 28 |
25 | 2021-09-11 | Tour of Britain | Stage 7 | | | 19 | | | 22 |
26 | 2021-09-10 | Tour of Britain | Stage 6 | | | 12 | | | 5 |
27 | 2021-09-09 | Tour of Britain | Stage 5 | | | 36 | | | 19 |
28 | 2021-09-08 | Tour of Britain | Stage 4 | | | 18 | | | 22 |
29 | 2021-09-06 | Tour of Britain | Stage 2 | | | 21 | | | 11 |
30 | 2021-09-05 | Tour of Britain | Stage 1 | | | 15 | | | 12 |
31 | 2020-02-08 | Saudi Tour | General classification | | | 19 | | | 20 |
32 | 2020-02-08 | Saudi Tour | Stage 5 | | | 45 | | | 32 |
33 | 2020-02-07 | Saudi Tour | Stage 4 | | | 19 | | | 20 |
34 | 2020-02-06 | Saudi Tour | Stage 3 | | | 29 | | | 36 |
35 | 2020-02-05 | Saudi Tour | Stage 2 | | | 19 | | | 45 |
36 | 2020-02-04 | Saudi Tour | Stage 1 | | | 24 | | | 22 |
37 | 2019-09-14 | OVO Energy Tour of Britain | General classification | | | 22 | | | 32 |
38 | 2019-09-14 | OVO Energy Tour of Britain | Stage 8 | | | 11 | | | 80 |
39 | 2019-09-13 | OVO Energy Tour of Britain | Stage 7 | | | 26 | | | 35 |
40 | 2019-09-12 | OVO Energy Tour of Britain | Stage 6 (ITT) | | | 52 | | | 45 |
41 | 2019-09-11 | OVO Energy Tour of Britain | Stage 5 | | | 42 | | | 44 |
42 | 2019-09-10 | OVO Energy Tour of Britain | Stage 4 | | | 25 | | | 12 |
43 | 2019-09-09 | OVO Energy Tour of Britain | Stage 3 | | | 53 | | | 33 |
44 | 2019-09-08 | OVO Energy Tour of Britain | Stage 2 | | | 11 | | | 25 |
45 | 2019-09-07 | OVO Energy Tour of Britain | Stage 1 | | | 42 | | | 45 |
46 | 2019-08-04 | Prudential RideLondon-Surrey Classic | | | 68 | | | 55 |
47 | 2019-06-30 | National Championships Great Britain ME - Road Race | | | 71 | | | 121 |
48 | 2019-05-05 | Tour de Yorkshire | General classification | | | 9 | | | 5 |
49 | 2019-05-05 | Tour de Yorkshire | Stage 4 | | | 14 | | | 5 |
50 | 2019-05-04 | Tour de Yorkshire | Stage 3 | | | 13 | | | 15 |
51 | 2019-05-03 | Tour de Yorkshire | Stage 2 | | | 10 | | | 42 |
52 | 2019-05-02 | Tour de Yorkshire | Stage 1 | | | 17 | | | 56 |
53 | 2019-04-28 | Rutland - Melton Cicle Classic | | | 32 | | | 42 |
54 | 2018-09-09 | Ovo Energy Tour of Britain | General classification | | | 30 | | | 39 |
55 | 2018-09-09 | Ovo Energy Tour of Britain | Stage 8 | | | 60 | | | 101 |
56 | 2018-09-08 | Ovo Energy Tour of Britain | Stage 7 | | | 22 | | | 76 |
57 | 2018-09-07 | Ovo Energy Tour of Britain | Stage 6 | | | 48 | | | 38 |
58 | 2018-09-05 | Ovo Energy Tour of Britain | Stage 4 | | | 21 | | | 36 |
59 | 2018-09-04 | Ovo Energy Tour of Britain | Stage 3 | | | 6 | | | 39 |
60 | 2018-09-03 | Ovo Energy Tour of Britain | Stage 2 | | | 15 | | | 30 |
61 | 2018-09-02 | Ovo Energy Tour of Britain | Stage 1 | | | 93 | | | 92 |
62 | 2018-07-01 | National Championships Great Britain ME - Road Race | | | 1 | | | 35 |
63 | 2018-05-06 | Tour de Yorkshire | General classification | | | 54 | | | 14 |
64 | 2018-05-06 | Tour de Yorkshire | Stage 4 | | | 66 | | | 18 |
65 | 2018-05-05 | Tour de Yorkshire | Stage 3 | | | 6 | | | 29 |
66 | 2018-05-04 | Tour de Yorkshire | Stage 2 | | | 52 | | | 20 |
67 | 2018-05-03 | Tour de Yorkshire | Stage 1 | | | 12 | | | 48 |
68 | 2017-09-10 | OVO Energy Tour of Britain | General classification | | | 39 | | | 29 |
69 | 2017-09-10 | OVO Energy Tour of Britain | Stage 8 | | | 36 | | | 30 |
70 | 2017-09-09 | OVO Energy Tour of Britain | Stage 7 | | | 28 | | | 47 |
71 | 2017-09-08 | OVO Energy Tour of Britain | Stage 6 | | | 62 | | | 78 |
72 | 2017-09-07 | OVO Energy Tour of Britain | Stage 5 (ITT) | | | 43 | | | 50 |
73 | 2017-09-06 | OVO Energy Tour of Britain | Stage 4 | | | 70 | | | 49 |
74 | 2017-09-05 | OVO Energy Tour of Britain | Stage 3 | | | 41 | | | 50 |
75 | 2017-09-04 | OVO Energy Tour of Britain | Stage 2 | | | 88 | | | 42 |
76 | 2017-09-03 | OVO Energy Tour of Britain | Stage 1 | | | 88 | | | 21 |
77 | 2017-08-23 | Druivenkoers - Overijse | | | 53 | | | 54 |
78 | 2017-08-22 | GP Stad Zottegem | | | 22 | | | 98 |
79 | 2017-06-25 | National Championships Great Britain ME - Road Race | | | OTL | | | 11 |
80 | 2015-06-28 | National Championships Great Britain ME - Road Race | | | DNF | | | 22 |
81 | 2015-06-25 | National Championships Great Britain U23 - ITT | | | 16 | | | 6 |
82 | 2013-06-09 | National Championships Great Britain MJ - Road Race | | | 39 | | | 7 |
| | | | 47 | | | 35 | |