| 2025-11-02 | 16 | Lloyds Cyclo-cross National Trophy Series Round 3: Clanfield | ME | 0 | 01:13:22.000 | 0 |
| 2025-10-05 | 16 | Lloyds Cyclo-cross National Trophy Series Round 1 | ME | 0 | 01:01:50.000 | 0 |
| 2025-01-12 | 24 | National Championships Great Britain ME | ME | 0 | 00:00:00.000 | |
| 2024-11-17 | 18 | National Trophy Series Round 3 | ME | 0 | 01:05:30.000 | 0 |
| 2024-10-27 | 19 | National Trophy Series Round 2 | ME | 0 | 01:05:21.000 | 0 |
| 2024-10-06 | 19 | National Trophy Series Round 1: Derby | ME | 0 | 01:03:45.000 | 0 |
| 2024-09-14 | 7 | National Championships Wales ME - Criterium | me | 35.7 | 00:50:44.000 | 42.221 |
| 2024-05-12 | 15 | British Cycling National Cross Country Series Round 2 | | 0 | 01:46:08.000 | 0 |
| 2024-04-21 | 12 | British Cycling National Cross Country Series Round 1 | | 0 | 01:47:23.000 | 0 |
| 2024-01-13 | 24 | National Championships Great Britain ME | ME | 0 | 00:00:00.000 | |
| 2023-12-16 | 34 | X²O Badkamers Trofee Herentals Cross | ME | 0 | 00:00:00.000 | |
| 2023-12-09 | 10 | National Trophy Series Round 5: Gravesend | ME | 0 | 01:17:21.000 | 0 |
| 2023-11-11 | 10 | National Trophy Series Round 4: Torbay Velo Park | ME | 0 | 01:09:36.000 | 0 |
| 2023-10-28 | 11 | National Trophy Series Round 3: Derby | ME | 0 | 01:04:50.000 | 0 |
| 2023-10-14 | 16 | National Trophy Series Round 2: Thornton in Craven | ME | 0 | 01:10:24.000 | 0 |
| 2023-10-07 | 24 | National Trophy Series Round 1: South Shields | ME | 0 | 01:02:36.000 | 0 |
| 2023-01-15 | 15 | National Championships Great Britain ME | ME | 0 | 00:00:00.000 | |
| 2023-01-07 | 12 | Clanfield Cross | ME | 0 | 01:06:42.000 | 0 |
| 2022-12-30 | 76 | Azencross – Loenhout | ME | 0 | 00:00:00.000 | |
| 2022-12-28 | 81 | Telenet Superprestige Diegem | ME | 0 | 00:00:00.000 | |
| 2022-12-27 | 77 | Telenet Superprestige Heusden-Zolder | ME | 0 | 00:00:00.000 | |
| 2022-12-18 | 13 | National Trophy Series Round 5: Broughton Hall | ME | 0 | 01:03:29.000 | 0 |
| 2022-11-20 | 9 | National Trophy Series Round 4: Torbay Velo Park | ME | 0 | 01:04:48.000 | 0 |
| 2022-10-30 | 21 | National Trophy Series Round 3 | ME | 0 | 01:07:26.000 | 0 |
| 2022-10-09 | 24 | National Trophy Series Round 1: Derby | ME | 0 | 01:05:39.000 | 0 |
| 2022-01-16 | 16 | National Trophy Series Round 6: Broughton Hall | ME | 0 | 01:01:39.000 | 0 |
| 2022-01-09 | 17 | National Championships Great Britain ME | ME | 0 | 01:04:24.000 | 0 |
| 2021-12-12 | 20 | National Trophy Series Round 5: Cyclopark | ME | 0 | 00:00:00.000 | |
| 2021-12-11 | 11 | Clanfield CX | ME | 0 | 01:01:58.000 | 0 |
| 2021-11-21 | 14 | National Trophy Series Round 4: Sunderland | ME | 0 | 01:01:05.000 | 0 |
| 2021-10-24 | 17 | National Trophy Series Round 3: Callender Park | ME | 0 | 01:08:36.000 | 0 |
| 2021-10-10 | 24 | National Trophy Series Round 2: Milnthorpe | ME | 0 | 01:09:29.000 | 0 |
| 2020-01-12 | 16 | National Championships Great Britain ME | ME | 0 | 00:00:00.000 | |
| 2019-12-30 | 35 | Cyclocross Bredene | ME | 0 | 00:00:00.000 | |
| 2019-12-29 | 43 | Telenet Superprestige Diegem | ME | 0 | 00:00:00.000 | |
| 2019-12-15 | 14 | National Trophy Series Round 6: York | ME | 0 | 01:05:20.000 | 0 |
| 2019-11-24 | 8 | National Trophy Series Round 5: Pembrey | ME | 0 | 01:02:21.000 | 0 |
| 2019-11-10 | 15 | National Trophy Series Round 4: Crawley | ME | 0 | 01:13:18.000 | 0 |
| 2019-10-27 | 17 | National Trophy Series Round 3: Irvine | ME | 0 | 01:07:35.000 | 0 |
| 2019-10-06 | 9 | National Trophy Series Round 2: Milnthorpe | ME | 0 | 01:10:41.000 | 0 |
| 2019-09-22 | 68 | National Trophy Series Round 1: Derby | ME | 0 | 00:00:00.000 | |
| 2019-01-13 | 14 | National Championships Great Britain ME | ME | 0 | 00:00:00.000 | |
| 2019-01-06 | 6 | National Trophy Series Round 6: Shrewsbury | ME | 0 | 01:05:10.000 | 0 |
| 2018-12-09 | 7 | National Trophy Series Round 5: Ipswich | ME | 0 | 01:07:14.000 | 0 |
| 2018-11-25 | 10 | National Trophy Series Round 4: York | ME | 0 | 01:06:21.000 | 0 |
| 2018-11-11 | 6 | National Trophy Series Round 3: Crawley | ME | 0 | 01:04:52.000 | 0 |
| 2018-10-28 | 5 | National Trophy Series Round 2: Irvine | ME | 0 | 01:03:00.000 | 0 |
| 2018-10-07 | 12 | National Trophy Series Round 1: Derby | ME | 0 | 01:00:44.000 | 0 |
| 2018-01-14 | 4 | National Championships Great Britain ME | ME | 0 | 01:08:11.000 | 0 |
| 2018-01-07 | 10 | National Trophy Series - Ipswich | ME | 0 | 01:02:47.000 | 0 |
| 2017-12-10 | 6 | National Trophy Series - Bradford | ME | 0 | 01:03:11.000 | 0 |
| 2017-11-26 | 7 | National Trophy Series: Cyclopark | ME | 0 | 01:00:11.000 | 0 |
| 2017-11-12 | 9 | National Trophy Series: Shrewsbury | ME | 0 | 01:03:01.000 | 0 |
| 2017-10-29 | 8 | National Trophy Series: Abergavenny | ME | 0 | 01:00:55.000 | 0 |
| 2017-10-08 | 17 | National Trophy Series: Derby | ME | 0 | 01:01:28.000 | 0 |
| 2017-01-08 | 6 | National Championships Great Britain ME | ME | 0 | 01:06:40.000 | 0 |
| 2016-12-11 | 6 | British Cycling National Trophy Shrewsbury | ME | 0 | 01:01:36.000 | 0 |
| 2016-11-27 | 15 | British Cycling National Trophy Ipswich | ME | 0 | 01:00:21.000 | 0 |
| 2016-11-13 | 9 | British Cycling National Trophy Houghton-Le-Spring | ME | 0 | 01:07:32.000 | 0 |
| 2016-10-23 | 8 | British Cycling National Trophy Abergavenny | ME | 0 | 01:02:54.000 | 0 |
| 2016-10-09 | 24 | British Cycling National Trophy Derby | ME | 0 | 01:07:44.000 | 0 |
| 2015-12-13 | 9 | National Trophy Series - Bradford | ME | 0 | 01:03:34.000 | 0 |
| 2015-11-08 | 10 | National Trophy Series: Durham | ME | 0 | 01:05:49.000 | 0 |
| 2015-10-25 | 12 | National Trophy Series Derby | ME | 0 | 01:03:17.000 | 0 |
| 2015-10-11 | 10 | National Trophy Series Southampton | ME | 0 | 01:05:02.000 | 0 |
| 2015-01-11 | 8 | National Championships Great Britain ME | ME | 0 | 01:08:50.000 | 0 |
| 2015-01-04 | 15 | National Trophy Series Derby | ME | 0 | 01:00:03.000 | 0 |
| 2014-12-14 | 5 | National Trophy Series - Bradford | ME | 0 | 01:01:32.000 | 0 |
| 2014-11-30 | 8 | National Trophy Series Milton Keynes | ME | 0 | 01:04:16.000 | 0 |
| 2014-11-29 | 38 | UCI World Cup Milton Keynes | ME | 0 | 01:09:53.000 | 0 |
| 2014-11-16 | 5 | National Trophy Series: Durham | ME | 0 | 01:00:03.000 | 0 |
| 2014-10-26 | 4 | National Trophy Series: Southampton | ME | 0 | 01:04:17.000 | 0 |
| 2014-10-12 | 7 | National Trophy Series: Shrewsbury | ME | 0 | 01:02:53.000 | 0 |
| 2014-02-02 | 31 | UCI World Championship U23 | MU | 0 | 00:55:29.000 | 0 |
| 2014-01-12 | 5 | National Championships Great Britain MU | MU | 0 | 00:48:17.000 | 0 |
| 2014-01-05 | 9 | National Trophy Series: Shrewsbury | ME | 0 | 01:03:02.000 | 0 |
| 2013-12-22 | 30 | UCI World Cup Namur | MU | 0 | 00:00:00.000 | |
| 2013-12-15 | 4 | National Trophy Series: Bradford | ME | 0 | 01:05:16.000 | 0 |
| 2013-12-01 | 2 | National Trophy Series: Milton Keynes | ME | 0 | 00:59:46.000 | 0 |
| 2013-11-23 | 34 | UCI World Cup Koksijde | MU | 0 | 00:00:00.000 | |
| 2013-11-17 | 4 | National Trophy Series: Durham | ME | 0 | 00:57:39.000 | 0 |
| 2013-11-03 | 6 | National Trophy Series: Southampton | ME | 0 | 00:58:25.000 | 0 |
| 2013-10-13 | 10 | National Trophy Series: Abergavenny | ME | 0 | 01:02:40.000 | 0 |
| 2013-02-02 | 30 | UCI World Championship U23 | MU | 0 | 00:53:46.000 | 0 |
| 2013-01-20 | 37 | UCI World Cup Hoogerheide | MU | 0 | 00:50:55.000 | 0 |
| 2013-01-13 | 2 | National Championships Great Britain MU | MU | 0 | 00:47:03.000 | 0 |
| 2013-01-06 | 10 | National Trophy Series Derby | ME | 0 | 01:06:49.000 | 0 |
| 2012-12-16 | 7 | National Trophy Series: Shrewsbury | ME | 0 | 00:59:16.000 | 0 |
| 2012-11-24 | 48 | UCI World Cup Koksijde | MU | 0 | 00:00:00.000 | |
| 2012-11-18 | 6 | National Trophy Series: Southampton | ME | 0 | 01:08:27.000 | 0 |
| 2012-11-04 | 4 | National Trophy Series: Ipswich | ME | 0 | 01:00:44.000 | 0 |
| 2012-11-03 | 25 | UEC Cyclo-Cross European Championships U23 | MU | 0 | 00:50:04.000 | 0 |
| 2012-10-14 | 6 | National Trophy Series: Abergavenny | ME | 0 | 00:59:07.000 | 0 |
| 2012-09-07 | 69 | UCI World Championships Saalfelden | mu | 0 | 00:00:00.000 | |
| 2012-01-28 | DNF | UCI World Championship U23 | MU | 0 | 00:00:00.000 | |
| 2012-01-22 | 49 | UCI World Cup Hoogerheide | MU | 0 | 00:56:15.000 | 0 |
| 2012-01-15 | 14 | National Trophy Series: Shrewsbury | ME | 0 | 01:07:56.000 | 0 |
| 2012-01-08 | 1 | National Championships Great Britain MU | MU | 0 | 00:48:33.000 | 0 |
| 2011-12-11 | 5 | National Trophy Series: Bradford | ME | 0 | 01:11:14.000 | 0 |
| 2011-11-27 | 8 | National Trophy Series Derby | ME | 0 | 01:04:25.000 | 0 |