1 | 2025-06-29 | National Championships Great Britain ME - Road Race | | | 14 | | | 4 |
2 | 2024-09-08 | Tour of Britain | General classification | | | 13 | | | 49 |
3 | 2024-09-08 | Tour of Britain | Stage 6 | | | 20 | | | 91 |
4 | 2024-09-07 | Tour of Britain | Stage 5 | | | 35 | | | 7 |
5 | 2024-09-06 | Tour of Britain | Stage 4 | | | 37 | | | 7 |
6 | 2024-09-05 | Tour of Britain | Stage 3 | | | 19 | | | 20 |
7 | 2024-09-04 | Tour of Britain | Stage 2 | | | 30 | | | 23 |
8 | 2024-09-03 | Tour of Britain | Stage 1 | | | 9 | | | 46 |
9 | 2024-06-23 | National Championships Great Britain ME - Road Race | | | 50 | | | 1 |
10 | 2024-06-15 | Tour de Suisse | Stage 7 | | | DNF | | | 56 |
11 | 2024-06-14 | Tour de Suisse | Stage 6 | | | 138 | | | 143 |
12 | 2024-06-13 | Tour de Suisse | Stage 5 | | | 118 | | | 55 |
13 | 2024-06-12 | Tour de Suisse | Stage 4 | | | 96 | | | 37 |
14 | 2024-06-11 | Tour de Suisse | Stage 3 | | | 82 | | | 23 |
15 | 2024-06-10 | Tour de Suisse | Stage 2 | | | 121 | | | 93 |
16 | 2024-06-09 | Tour de Suisse | Stage 1 (ITT) | | | 63 | | | 3 |
17 | 2024-04-17 | La Flèche Wallonne | | | DNF | | | DNF |
18 | 2023-09-10 | Grand Prix Cycliste de Montréal | | | DNF | | | DNF |
19 | 2023-09-08 | Grand Prix Cycliste de Québec | | | DNF | | | 33 |
20 | 2023-09-03 | Bretagne Classic - Ouest-France | | | DNF | | | 46 |
21 | 2023-08-20 | Cyclassics Hamburg | | | 20 | | | 67 |
22 | 2022-09-25 | World Championships ME - Road Race | | | 102 | | | 9 |
23 | 2022-08-27 | La Vuelta ciclista a España | Stage 8 | | | DNS | | | 70 |
24 | 2022-08-26 | La Vuelta ciclista a España | Stage 7 | | | 7 | | | 12 |
25 | 2022-08-25 | La Vuelta ciclista a España | Stage 6 | | | 117 | | | 176 |
26 | 2022-08-24 | La Vuelta ciclista a España | Stage 5 | | | 12 | | | 90 |
27 | 2022-08-23 | La Vuelta ciclista a España | Stage 4 | | | 117 | | | 7 |
28 | 2022-08-21 | La Vuelta ciclista a España | Stage 3 | | | 12 | | | 13 |
29 | 2022-08-20 | La Vuelta ciclista a España | Stage 2 | | | 8 | | | 42 |
30 | 2022-06-26 | National Championships Great Britain ME - Road Race | | | 50 | | | 9 |
31 | 2021-10-17 | National Championships Great Britain ME - Road Race | | | DNF | | | 3 |
32 | 2021-09-26 | World Championships ME - Road Race | | | DNF | | | 35 |
33 | 2021-03-19 | Bredene Koksijde Classic | | | 12 | | | 60 |
34 | 2021-03-17 | Danilith Nokere Koerse ME | | | 6 | | | 27 |
35 | 2021-02-27 | Omloop Het Nieuwsblad ME | | | 2 | | | 66 |
36 | 2021-02-07 | Etoile de Bessèges - Tour du Gard | General classification | | | 4 | | | 120 |
37 | 2021-02-07 | Etoile de Bessèges - Tour du Gard | Stage 5 (ITT) | | | 10 | | | 3 |
38 | 2021-02-06 | Etoile de Bessèges - Tour du Gard | Stage 4 | | | 20 | | | 22 |
39 | 2021-02-05 | Etoile de Bessèges - Tour du Gard | Stage 3 | | | 7 | | | 115 |
40 | 2021-02-04 | Etoile de Bessèges - Tour du Gard | Stage 2 | | | 24 | | | 140 |
41 | 2021-02-03 | Etoile de Bessèges - Tour du Gard | Stage 1 | | | 9 | | | 68 |
42 | 2020-10-11 | Gent-Wevelgem in Flanders Fields ME | | | 35 | | | DNF |
43 | 2019-06-30 | National Championships Great Britain ME - Road Race | | | 11 | | | 5 |
44 | 2019-06-27 | National Championships Great Britain U23 - ITT | | | 9 | | | 2 |
45 | 2019-06-23 | Giro Ciclistico d'Italia | General classification | | | 88 | | | 15 |
46 | 2019-06-23 | Giro Ciclistico d'Italia | Stage 9 | | | 77 | | | 27 |
47 | 2019-06-22 | Giro Ciclistico d'Italia | Stage 8 | | | 96 | | | 26 |
48 | 2019-06-21 | Giro Ciclistico d'Italia | Stage 7 | | | 92 | | | 5 |
49 | 2019-06-20 | Giro Ciclistico d'Italia | Stage 6 | | | 142 | | | 18 |
50 | 2019-06-19 | Giro Ciclistico d'Italia | Stage 5 | | | 101 | | | 6 |
51 | 2019-06-17 | Giro Ciclistico d'Italia | Stage 4 | | | 66 | | | 8 |
52 | 2019-06-16 | Giro Ciclistico d'Italia | Stage 3 | | | 72 | | | 30 |
53 | 2019-06-15 | Giro Ciclistico d'Italia | Stage 2 | | | 8 | | | 6 |
54 | 2019-06-14 | Giro Ciclistico d'Italia | Stage 1 | | | 9 | | | 1 |
55 | 2019-06-13 | Giro Ciclistico d'Italia | Prologue | | | 9 | | | 1 |
56 | 2019-05-26 | A Travers les Hauts de France | General classification | | | 16 | | | 1 |
57 | 2019-05-26 | A Travers les Hauts de France | Stage 3 | | | 8 | | | 7 |
58 | 2019-05-25 | A Travers les Hauts de France | Stage 2 | | | 18 | | | 1 |
59 | 2019-05-24 | A Travers les Hauts de France | Stage 1 | | | 10 | | | 21 |
60 | 2018-07-01 | National Championships Great Britain ME - Road Race | | | DNF | | | DNF |
61 | 2018-06-28 | National Championships Great Britain U23 - ITT | | | 17 | | | 4 |
62 | 2018-06-10 | Ronde de l'Oise | General classification | | | 62 | | | 5 |
63 | 2018-06-10 | Ronde de l'Oise | Stage 4 | | | 87 | | | 2 |
64 | 2018-06-09 | Ronde de l'Oise | Stage 3 | | | 41 | | | 7 |
65 | 2018-06-08 | Ronde de l'Oise | Stage 2 | | | 74 | | | 6 |
66 | 2018-06-07 | Ronde de l'Oise | Stage 1 | | | 32 | | | 3 |
67 | 2018-06-03 | Grand Prix Priessnitz spa | General classification | | | 37 | | | 11 |
68 | 2018-06-03 | Grand Prix Priessnitz spa | Stage 3 | | | 23 | | | 5 |
69 | 2018-06-02 | Grand Prix Priessnitz spa | Stage 2 | | | 50 | | | 13 |
70 | 2018-06-01 | Grand Prix Priessnitz spa | Stage 1 | | | 5 | | | 57 |
71 | 2018-05-31 | Grand Prix Priessnitz spa | Prologue | | | 13 | | | 4 |
72 | 2016-09-04 | Grand Prix Rüebliland | General classification | | | 28 | | | 8 |
73 | 2016-09-04 | Grand Prix Rüebliland | Stage 4 | | | 16 | | | 15 |
74 | 2016-09-03 | Grand Prix Rüebliland | Stage 3 (ITT) | | | 46 | | | 5 |
75 | 2016-09-03 | Grand Prix Rüebliland | Stage 2 | | | 19 | | | 4 |
76 | 2016-09-02 | Grand Prix Rüebliland | Stage 1 | | | 28 | | | 5 |
77 | 2016-03-27 | Gent-Wevelgem/Grote Prijs A. Noyelle-Ieper | | | DNF | | | 2 |
| | | | 22 | | | 52 | |