| 1 | 2015 | | World Championships MU - ITT | 5 |
| 2 | 2014 | | Le Triptyque des Monts et Châteaux | Stage 2a (ITT) | 2 |
| 3 | 2022 | | Commonwealth Games ME - ITT | 7 |
| 4 | 2019 | | Tour de La Provence | Stage 1 (ITT) | 8 |
| 5 | 2021 | | Etoile de Bessèges - Tour du Gard | Stage 5 (ITT) | 8 |
| 6 | 2010 | | Course de la Paix Juniors | Stage 3a (ITT) | 70 |
| 7 | 2010 | | Trofeo Karlsberg | Stage 3 (ITT) | 47 |
| 8 | 2011 | | Course de la Paix Juniors | Stage 3a (ITT) | 18 |
| 9 | 2011 | | Trofeo Karlsberg | Stage 3 (ITT) | 13 |
| 10 | 2011 | | World Championships MJ - ITT | 30 |
| 11 | 2012 | | Tour de Normandie | Prologue | 47 |
| 12 | 2012 | | Flèche du Sud | Stage 4 (ITT) | 49 |
| 13 | 2012 | | National Championships Great Britain U23 - ITT | 4 |
| 14 | 2013 | | Internationale Thüringen-Rundfahrt U23 | Prologue | 61 |
| 15 | 2013 | | Internationale Thüringen-Rundfahrt U23 | Stage 5 (ITT) | 21 |
| 16 | 2013 | | Tour de l'Avenir | Prologue | 19 |
| 17 | 2013 | | Tour of Britain | Stage 3 (ITT) | 16 |
| 18 | 2014 | | Tour de Normandie | Prologue | 34 |
| 19 | 2014 | | National Championships Great Britain U23 - ITT | 2 |
| 20 | 2014 | | Tour de l'Avenir | Prologue | 122 |
| 21 | 2014 | | Tour of Britain | Stage 8a (ITT) | 42 |
| 22 | 2015 | | Tour de Normandie | Prologue | 17 |
| 23 | 2015 | | National Championships Great Britain U23 - ITT | 2 |
| 24 | 2016 | | Amgen Tour of California | Stage 6 (ITT) | 14 |
| 25 | 2016 | | Tour of Britain | Stage 7a (ITT) | 76 |
| 26 | 2017 | | Tour de Romandie | Prologue | 63 |
| 27 | 2017 | | Amgen Tour of California | Stage 6 (ITT) | 73 |
| 28 | 2017 | | Tour de Suisse | Stage 1 (ITT) | 27 |
| 29 | 2017 | | Tour de Suisse | Stage 9 (ITT) | 27 |
| 30 | 2017 | | BinckBank Tour | Stage 2 (ITT) | 40 |
| 31 | 2017 | | Tour du Poitou Charentes | Stage 4 (ITT) | 10 |
| 32 | 2017 | | OVO Energy Tour of Britain | Stage 5 (ITT) | 13 |
| 33 | 2018 | | Volta ao Algarve em Bicicleta | Stage 3 (ITT) | 20 |
| 34 | 2018 | | Tour de Suisse | Stage 9 (ITT) | 106 |
| 35 | 2018 | | BinckBank Tour | Stage 2 (ITT) | 13 |
| 36 | 2019 | | Tour de Suisse | Stage 1 (ITT) | 18 |
| 37 | 2019 | | Tour de Suisse | Stage 8 (ITT) | 126 |
| 38 | 2019 | | National Championships Great Britain ME - ITT | 4 |
| 39 | 2019 | | La Vuelta ciclista a España | Stage 10 (ITT) | 31 |
| 40 | 2020 | | BinckBank Tour | Stage 4 (ITT) | 34 |
| 41 | 2021 | | Tour de Romandie | Prologue | 22 |
| 42 | 2021 | | Tour de Romandie | Stage 5 (ITT) | 34 |
| 43 | 2021 | | Tour de Pologne | Stage 6 (ITT) | 52 |
| 44 | 2022 | | Etoile de Bessèges - Tour du Gard | Stage 5 (ITT) | 18 |
| 45 | 2022 | | Paris - Nice | Stage 4 (ITT) | 27 |
| 46 | 2022 | | Giro d'Italia | Stage 2 (ITT) | 20 |
| 47 | 2022 | | Critérium du Dauphiné | Stage 4 (ITT) | 111 |
| 48 | 2022 | | National Championships Great Britain ME - ITT | 6 |
| 49 | 2022 | | Tour de France | Stage 1 (ITT) | 77 |
| 50 | 2022 | | Tour de France | Stage 20 (ITT) | 42 |
| 51 | 2023 | | Volta ao Algarve em Bicicleta | Stage 5 (ITT) | 46 |
| 52 | 2023 | | Critérium du Dauphiné | Stage 4 (ITT) | 84 |
| 53 | 2023 | | Renewi Tour | Stage 2 (ITT) | 53 |
| 54 | 2024 | | Boucles de la Mayenne - Crédit Mutuel | Prologue | 41 |
| 55 | 2024 | | Critérium du Dauphiné | Stage 4 (ITT) | 111 |
| 56 | 2024 | | Vuelta a Burgos | Stage 4 (ITT) | 22 |
| 57 | 2024 | | La Vuelta Ciclista a España | Stage 1 (ITT) | 34 |
| 58 | 2024 | | La Vuelta Ciclista a España | Stage 21 (ITT) | 117 |
| 59 | 2025 | | Giro d'Italia | Stage 2 (ITT) | 65 |
| 60 | 2025 | | Giro d'Italia | Stage 10 (ITT) | 133 |