| 2025-10-12 | DNS | UCI World Cup Mont-Sainte-Anne | xco | 0 | 00:00:00.000 | |
| 2025-10-05 | 42 | UCI World Cup Lake Placid | xco | 0 | 01:17:41.000 | 0 |
| 2025-09-21 | 26 | UCI World Cup Lenzerheide | xco | 0 | 01:18:17.000 | 0 |
| 2025-09-01 | 41 | World Championships MU | MU | 0 | 01:28:28.000 | 0 |
| 2025-08-31 | DNF | UCI World Cup Les Gets | xco | 0 | 00:00:00.000 | |
| 2025-07-27 | 14 | European Championships MU - XCO | MU | 0 | 01:16:28.000 | 0 |
| 2025-07-24 | 33 | European Championships ME | xcc | 0 | 00:19:25.000 | 0 |
| 2025-07-18 | 2 | National Championships Great Britain | | 0 | 00:21:50.000 | 0 |
| 2025-07-18 | 1 | National Championships Great Britain | | 0 | 01:17:22.000 | 0 |
| 2025-07-13 | 32 | UCI World Cup Pal Arinsal | | 0 | 01:17:27.000 | 0 |
| 2025-06-20 | 68 | UCI World Cup Val di Sole | | 0 | 00:00:00.000 | |
| 2025-06-08 | 65 | UCI World Cup Leogang | xco | 0 | 00:00:00.000 | |
| 2025-05-25 | 57 | UCI World Cup Nove Mesto Na Morave | | 0 | 01:26:19.000 | 0 |
| 2025-05-17 | 137 | UCI Gravel World Series ME - The Gralloch | me | 110 | 03:44:42.480 | 29.372 |
| 2025-05-11 | 6 | Lloyds National Cross Country MTB Series Round 3 | | 0 | 01:23:04.000 | 0 |
| 2025-04-11 | 10 | UCI World Cup Araxa 2 - Minas Gerais | | 0 | 00:21:56.000 | 0 |
| 2025-04-11 | 19 | UCI World Cup Araxa 2 - Minas Gerais | | 0 | 01:10:51.000 | 0 |
| 2025-04-05 | 10 | UCI World Cup Araxa 1 - Minas Gerais | | 0 | 00:19:26.000 | 0 |
| 2025-04-05 | DNF | UCI World Cup Araxa 1 - Minas Gerais | | 0 | 00:00:00.000 | |
| 2025-03-08 | 11 | Greek MTB Series by Alter Bike Tours- Salamina Epic Race #4 | | 0 | 01:14:41.000 | 0 |
| 2025-03-06 | 17 | Greek MTB Series by Alter Bike Tours - Salamina Epic Race #3 | | 0 | 01:23:48.000 | 0 |
| 2025-03-02 | DNF | Greek MTB Series by Alter Bike Tours- Salamina Epic Race #2 | | 0 | 00:00:00.000 | |
| 2025-03-01 | DNS | Hellenic National XCO Cup #1 | | 0 | 00:00:00.000 | |
| 2025-02-28 | DNF | Greek MTB Series by Alter Bike Tours- Salamina Epic Race #1 | | 0 | 00:00:00.000 | |
| 2025-02-22 | 22 | Shimano Supercup Massi Banyoles + UCI XCO Junior Series | | 0 | 01:15:17.000 | 0 |
| 2025-02-15 | 36 | Internacionales Chelva + UCI XCO Junior Series | | 0 | 01:19:42.000 | 0 |
| 2024-06-28 | DNS | Lister Horsfall Open Grand Prix | me | 0 | 00:00:00.000 | |
| 2024-05-11 | DNF | European Continental Championships | | 0 | 00:00:00.000 | |
| 2024-05-10 | 4 | European Continental Championships | | 0 | 01:02:44.000 | 0 |
| 2024-05-09 | 30 | European Continental Championships | | 0 | 00:26:13.000 | 0 |
| 2024-04-28 | 18 | International MTB Bundesliga - Heubacher Mountainbikefestival Bike the Rock + UCI XCO Junior Series | | 0 | 01:21:27.000 | 0 |
| 2024-04-21 | 2 | British Cycling National Cross Country Series Round 1 | | 0 | 01:35:29.000 | 0 |
| 2024-03-17 | DNS | MTB French Cup Powered By SKF - XCO/XCC/XCE + UCI XCO Junior Series | | 0 | 00:00:00.000 | |
| 2024-02-24 | 14 | Shimano Supercup Massi Banyoles | | 0 | 01:16:33.000 | 0 |
| 2024-02-03 | 25 | UCI World Championship MU | MU | 0 | 00:56:52.000 | 0 |
| 2024-02-02 | 2 | UCI World Championship Team Relay | ME+WE | 0 | 01:01:23.000 | 0 |
| 2024-01-28 | 14 | UCI World Cup Hoogerheide | MU | 0 | 00:52:05.000 | 0 |
| 2024-01-13 | 4 | National Championships Great Britain ME | ME | 0 | 01:01:43.000 | 0 |
| 2023-10-22 | 7 | Greek MTB Series by Alter Bike Tours - Sparta MTB Race #5 | | 0 | 01:22:54.000 | 0 |
| 2023-10-22 | 1 | Greek MTB Series by Alter Bike Tours - Sparta MTB Race #5 | | 0 | 01:12:47.000 | 0 |
| 2023-10-15 | 2 | Greek MTB Series by Alter Bike Tours - Salamina MTB Race #9 | | 0 | 01:15:16.000 | 0 |
| 2023-10-15 | 7 | Greek MTB Series by Alter Bike Tours - Salamina MTB Race #9 | | 0 | 01:27:03.000 | 0 |
| 2023-10-12 | DNF | Greek MTB Series by Alter Bike Tours - Salamina MTB Race #8 | | 0 | 00:00:00.000 | |
| 2023-10-11 | 8 | Greek MTB Series by Alter Bike Tours- Salamina Epic Race #7 | | 0 | 01:29:39.000 | 0 |
| 2023-09-10 | 37 | UCI MTB World Cup - Les Portes du Soleil | | 0 | 01:10:38.000 | 0 |
| 2023-08-28 | 18 | UCI World Championships Glasgow | MU | 0 | 01:17:34.000 | 0 |
| 2023-08-27 | 42 | UCI MTB World Cup - Andorra | | 0 | 01:09:20.000 | 0 |
| 2023-08-25 | 34 | UCI MTB World Cup - Andorra | | 0 | 00:22:35.000 | 0 |
| 2023-08-11 | 18 | UCI Cycling World Championships | | 0 | 01:17:34.000 | 0 |
| 2023-05-13 | 123 | UCI MTB World Cup - Nové Město na Moravě | | 0 | 01:18:12.000 | 0 |
| 2023-02-04 | 17 | UCI World Championship U23 | MU | 0 | 00:52:53.000 | 0 |
| 2023-01-03 | 14 | X2O Badkamers Trofee - Herentals | MU | 0 | 00:56:46.000 | 0 |
| 2023-01-01 | 8 | GP Sven Nys | MU | 0 | 00:57:04.000 | 0 |
| 2022-12-30 | 32 | Azencross – Loenhout | ME | 0 | 01:04:10.000 | 0 |
| 2022-12-18 | 1 | National Trophy Series Round 5: Broughton Hall | ME | 0 | 00:59:09.000 | 0 |
| 2022-08-24 | 75 | UCI World Championships Les Gets | MU | 0 | 00:00:00.000 | |
| 2022-01-09 | 5 | National Championships Great Britain ME | ME | 0 | 01:00:00.000 | 0 |
| 2022-01-02 | DNS | UCI World Cup Hulst | ME | 25.27 | 00:00:00.000 | |
| 2022-01-01 | 15 | X²O Badkamers Trofee GP Sven Nys | MU | 0 | 01:38:50.000 | 0 |
| 2021-12-30 | 18 | X²O Badkamers Trofee Azencross | MU | 0 | 00:52:45.000 | 0 |
| 2021-12-27 | 35 | Telenet Superprestige Heusden-Zolder | ME | 0 | 00:00:00.000 | |
| 2021-12-26 | 30 | UCI World Cup Dendermonde | MU | 0 | 00:54:07.000 | 0 |
| 2021-12-19 | 14 | UCI World Cup Namur | MU | 0 | 00:55:56.000 | 0 |
| 2021-12-12 | 2 | National Trophy Series Round 5: Cyclopark | ME | 0 | 01:01:07.000 | 0 |
| 2021-12-11 | 4 | Clanfield CX | ME | 0 | 00:58:27.000 | 0 |
| 2021-11-21 | 2 | National Trophy Series Round 4: Sunderland | ME | 0 | 00:58:17.000 | 0 |
| 2021-11-14 | 15 | UCI World Cup Tábor | MU | 0 | 00:48:54.000 | 0 |
| 2021-11-06 | 26 | UEC Cyclo-Cross European Championships U23 | MU | 0 | 00:52:08.000 | 0 |
| 2021-11-01 | 11 | X²O Badkamers Trofee Koppenbergcross | MU | 0 | 00:49:43.000 | 0 |
| 2021-10-31 | 32 | UCI World Cup Overijse | ME | 0 | 01:06:48.000 | 0 |
| 2021-10-24 | 1 | National Trophy Series Round 3: Callender Park | ME | 0 | 01:03:30.000 | 0 |
| 2021-10-10 | 3 | National Trophy Series Round 2: Milnthorpe | ME | 0 | 01:05:37.000 | 0 |
| 2021-09-19 | 9 | National Trophy Series Round 1: Derby | ME | 0 | 01:04:18.000 | 0 |
| 2021-08-24 | 6 | UCI World Championships Val Di Sole | mj | 0 | 01:03:05.000 | 0 |
| 2020-11-29 | 7 | UCI World Cup Tábor | MJ | 0 | 00:42:09.000 | 0 |
| 2020-10-10 | 20 | UCI World Championships Leogang | mj | 0 | 01:25:52.000 | 0 |
| 2020-02-02 | 20 | UCI World Championship MJ | MJ | 0 | 00:41:51.000 | 0 |
| 2020-01-26 | 23 | UCI World Cup Hoogerheide | MJ | 0 | 00:42:55.000 | 0 |
| 2020-01-12 | 3 | National Championships Great Britain MJ | MJ | 0 | 00:43:56.000 | 0 |
| 2020-01-01 | 9 | DVV Verzekeringen trofee GP Sven Nys | MJ | 0 | 00:43:39.000 | 0 |
| 2019-12-30 | 4 | Cyclocross Bredene | MJ | 0 | 00:41:49.000 | 0 |
| 2019-12-29 | 21 | Telenet Superprestige Diegem | MJ | 0 | 00:41:39.000 | 0 |
| 2019-12-22 | 23 | UCI World Cup Namur | MJ | 0 | 00:43:48.000 | 0 |
| 2019-12-15 | 10 | National Trophy Series Round 6: York | MJ | 0 | 00:43:31.000 | 0 |
| 2019-11-24 | 28 | UCI World Cup Koksijde | MJ | 0 | 00:46:26.000 | 0 |
| 2019-11-16 | 25 | UCI World Cup Tábor | MJ | 0 | 00:43:43.000 | 0 |
| 2019-11-10 | 30 | UEC Cyclo-Cross European Championships MJ | MJ | 0 | 00:46:32.000 | 0 |
| 2019-10-27 | 1 | National Trophy Series Round 3: Irvine | MJ | 0 | 00:43:21.000 | 0 |
| 2019-10-06 | 7 | National Trophy Series Round 2: Milnthorpe | MJ | 0 | 00:43:07.000 | 0 |
| 2019-09-22 | 5 | National Trophy Series Round 1: Derby | MJ | 0 | 00:45:57.000 | 0 |