| | 2020 Mercedes-Benz UCI World Cup XC #2 | | Nové Mesto | U23 | 10010947139 & 1999 | 100 | | 40 / 92 | 57% | 1h24:18.00 | 1h15:57.00 | 11% | - | - | |
| | 2020 Mercedes-Benz UCI World Cup XC #1 | | Nové Mesto | U23 | 10010947139 & 1999 | 100 | | 20 / 88 | 78% | 1h28:13.00 | 1h24:11.00 | 4.8% | - | - | |
| | British Cycling - UK CX National Champs '19 | | Cyclopark | U23 | | 98 | TP Racing | 4 / 32 | 90% | 1h07:28.00 | 1h04:44.00 | 4.2% | - | - | |
| | 2018 HSBC UK | CX National Trophy Series #6 | | Shrewsbury Sports Village | U23 | | 53 | TP Racing | 2 / 16 | 93% | 1h04:30.00 | 1h04:00.00 | 0.8% | - | - | |
| | 2018 HSBC UK | CX National Trophy Series #1 | | Moorways Leisure Centre, Derbyshire | U23 | | 80 | TP Racing | 3 / 28 | 93% | 58:37.00 | 58:30.00 | 0.2% | - | - | |
| | British Cycling - UK XC National Champs '18 | | Hadleigh Park | U23 | | 105 | TEKKERZ CC | 4 / 16 | 80% | 1h23:44.00 | 1h20:01.00 | 4.6% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #3 | | Nové Mesto | U23 | 10010947139 & 1999 | ? | | DNF / 142 | 0% | DNF | 1h23:44.00 | - | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #2 | | Bikepark Albstadt | U23 | 10010947139 & 1999 | 125 | | 57 / 146 | 61% | 1h26:47.00 | 1h17:48.00 | 11.6% | - | - | |
| | 2018 British Cycling MTB XC #2 | | Dalby Forest | Elite | | 17 | 100% ME | 6 / 30 | 83% | 1h36:21.00 | 1h33:22.00 | 3.2% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #1 | | Stellenbosch, WC | U23 | 10010947139 & 1999 | 66 | | 52 / 70 | 26% | 1h29:34.00 | 1h18:23.00 | 14.3% | - | - | |
| | British Cycling - UK CX National Champs '18 | | Hetton Lyons Country Park | 19-22 | | 31 | Specialized Racing | 3 / 33 | 94% | 52:11.60 | 50:25.80 | 3.5% | - | - | |
| | 2017 HSBC UK | CX National Trophy Series #6 | | Trinity Park Showground, Suffolk | 19-22 | | 93 | Specialized Racing | 1 / 28 | 100% | 1h01:47.90 | 1h01:47.90 | 0% | - | - | |
| | 2017 HSBC UK | CX National Trophy Series #3 | | Shrewsbury Sports Village | 19-22 | | 67 | Specialized Racing | 2 / 19 | 94% | 1h03:24.00 | 1h01:45.00 | 2.7% | - | - | |
| | UCI - XCO World Championships '17 | | Cairns, QLD | 17-18 | 10010947139 & 1999 | 21 | UK | 40 / 71 | 44% | 1h15:56.00 | 1h07:56.00 | 11.8% | - | - | |
| | British Cycling - UK XC National Champs '17 | | Cannock Chase | 17-18 | | 201 | Specialized Racing | 1 / 26 | 100% | 1h13:48.00 | 1h13:48.00 | 0% | - | - | |
| | Run and Ride - Summer Classic | | Cannock Chase | Elite | | 1127 | Specialized Racing | 2 / 5 | 75% | 1h19:05.00 | 1h15:47.00 | 4.4% | - | - | |
| | 2017 British Cycling MTB XC #1 | | Pembrey Country Park | 17-18 | | 212 | Specialized Racing | 1 / 33 | 100% | 1h12:15.00 | 1h12:15.00 | 0% | - | - | |
| | 2017 Gorrick Saddle Skedaddle XC #3 | | Area 51 | 17-18 | | 510 | Specialized Racing | 1 / 3 | 100% | 1h22:37.00 | 1h22:37.00 | 0% | - | - | |
| | Hadleigh Park - Hadleigh Park International | | Hadleigh Park | 17-18 | GBR19990703 & 17 | 14 | GB NATIONAL TEAM | 32 / 35 | 9% | - | 1h02:20.00 | - | - | - | |
| | British Cycling - UK XC National Champs '16 | | Cathkin Braes Country Park | 17-18 | | 290 | Specialized Racing | 6 / 26 | 80% | 1h20:36.00 | 1h15:47.00 | 6.4% | - | - | |
| | British Cycling - UK XC National Champs '15 | | Hadleigh Park | 15-16 | | 201 | Specialized Racing | 1 / 46 | 100% | 50:15.00 | 50:15.00 | 0% | - | - | |
| | 2015 Pedalon Southern XC #5 | | Porridgepot Hill | 15-16 | GBR19990703 | 260 | Specialized Racing | 1 / 11 | 100% | 53:09.00 | 53:09.00 | 0% | - | - | |
| | 2015 British Cycling MTB XC #4 | | Cathkin Braes Country Park | 15-16 | | 132 | Specialized Racing | 1 / 39 | 100% | 1h00:03.00 | 1h00:03.00 | 0% | - | - | |
| | 2015 Pedalon Southern XC #4 | | Bordon | 15-16 | | 228 | Specialized Racing | 1 / 14 | 100% | 48:36.00 | 48:36.00 | 0% | - | - | |
| | 2015 British Cycling MTB XC #3 | | Fforest Fields | 15-16 | | 132 | Specialized Racing | 4 / 36 | 91% | 52:48.00 | 50:46.00 | 4% | - | - | |
| | 2015 Mud Sweat & Gears XC #4 | | Hadleigh Park | 15-16 | | 554 | Specialized Racing | 1 / 21 | 100% | 40:34.00 | 40:34.00 | 0% | - | - | |
| | 2015 British Cycling MTB XC #2 | | Newnham Park | 15-16 | | 301 | Specialized Racing | 2 / 33 | 97% | 46:27.00 | 45:30.00 | 2.1% | - | - | |
| | 2015 British Cycling MTB XC #1 | | Sherwood Pines | 15-16 | | 301 | Specialized Racing | 1 / 57 | 100% | 1h03:29.00 | 1h03:29.00 | 0% | - | - | |
| | 2015 Gorrick Saddle Skedaddle XC #4 | | Frith Hill | Expert | | 793 | Specialized Racing | 2 / 14 | 92% | 1h43:12.00 | 1h41:19.00 | 1.9% | - | - | |
| | 2015 Gorrick Saddle Skedaddle XC #3 | | Porridgepot Hill | Expert | | 985 | Specialized Racing | 4 / 13 | 75% | 1h35:33.00 | 1h28:01.00 | 8.6% | - | - | |
| | 2015 Pedalon Southern XC #1 | | Black Park | 15-16 | | 274 | Specialized Racing | 1 / 20 | 100% | 53:34.00 | 53:34.00 | 0% | - | - | |
| | 2015 Gorrick Saddle Skedaddle XC #1 | | Saddleback Hill | Expert | | 166 | Specialized Racing | 1 / 13 | 100% | 1h41:28.00 | 1h41:28.00 | 0% | - | - | |
| | 2014 British Cycling MTB XC #3 | | Margam Park | 15-16 | | 101 | Specialized Racing | 1 / 38 | 100% | 57:12.00 | 57:12.00 | 0% | - | - | |
| | 2014 Pedalon Southern XC #5 | | Queen Elizabeth Country Park | 15-16 | | 191 | Hargroves Cycles | 1 / 15 | 100% | 39:15.00 | 39:15.00 | 0% | - | - | |
| | 2014 Pedalon Southern XC #4 | | Porridgepot Hill | 15-16 | | 244 | Hargroves Cycles / Next / Specialized / Trant | 1 / 14 | 100% | 39:51.00 | 39:51.00 | 0% | - | - | |
| | 2014 British Cycling MTB XC #2 | | Wheal Velocity | 15-16 | | 151 | Specialized Racing | 1 / 30 | 100% | 1h03:29.00 | 1h03:29.00 | 0% | - | - | |
| | 2014 Pedalon Southern XC #3 | | Crow Hill | 15-16 | | 212 | Specialized Racing | 1 / 10 | 100% | 51:09.00 | 51:09.00 | 0% | - | - | |
| | 2014 British Cycling MTB XC #1 | | Codham Park | 15-16 | | 154 | Hargroves Cycles / Next / Specialized / Trant | 1 / 51 | 100% | 49:18.00 | 49:18.00 | 0% | - | - | |
| | 2014 Gorrick Saddle Skedaddle XC #2 | | Caesar's Camp | Sport | | 157 | Hargroves Cycles | 1 / 36 | 100% | 1h17:10.00 | 1h17:10.00 | 0% | - | - | |