| | Run and Ride - Winter Classic | | Cannock Chase | Enthusiast (Shortened 3) | | 264 | Rotor RT | 9 / 83 | 90% | 1h25:06.00 | 1h17:27.00 | 9.9% | - | - | |
| | 2020 Midlands XC #1 | | Dudmaston | 17-18 | | 302 | Rotor RT | 4 / 8 | 57% | 1h21:37.00 | 1h15:14.00 | 8.5% | - | - | |
| | 2015 Midlands XC #4 | | Wyre Forest | U13 (Shortened) | | 816 | Wolverhampton Wheelers | 6 / 6 | 0% | 8:24.00 | 6:51.00 | 22.6% | - | - | |
| | 2016 Midlands XC #1 | | Sherwood Pines | 13-14 | | 161 | Wolverhampton Wheelers | 8 / 13 | 42% | 55:15.00 | 42:44.00 | 29.3% | - | - | |
| | 2016 Midlands XC #2 | | Cannock Chase | 13-14 | | 128 | Wolverhampton Wheelers | 13 / 18 | 29% | 50:10.00 | 38:16.00 | 31.1% | - | - | |
| | 2016 Midlands XC #3 | | Harlow Wood | 13-14 | | 109 | Wolverhampton Wheelers | 12 / 17 | 31% | 37:41.00 | 31:00.00 | 21.6% | - | - | |
| | Run and Ride - Summer Classic | | Cannock Chase | U13 (Shortened 2) | | 317 | Wolverhampton Wheelers | 5 / 12 | 64% | 14:15.00 | 12:15.00 | 16.3% | - | - | |
| | 2016 Midlands XC #4 | | Eckington Woods | 13-14 | | 87 | Wolverhampton Wheelers | 8 / 11 | 30% | 53:19.00 | 36:10.00 | 47.4% | - | - | |
| | 2016 Midlands XC #5 | | Eastridge | 13-14 | | 67 | Wolverhampton Wheelers | 7 / 11 | 40% | 48:53.00 | 38:19.00 | 27.6% | - | - | |
| | 2016 Midlands XC #6 | | Dudmaston | 13-14 | | 57 | Wolverhampton Wheelers | 3 / 9 | 75% | 40:27.00 | 40:12.00 | 0.6% | - | - | |
| | 2017 Midlands XC #1 | | Sherwood Pines | 13-14 | | 147 | Wolverhampton Wheelers | 5 / 27 | 85% | 46:31.00 | 43:09.00 | 7.8% | - | - | |
| | 2017 British Cycling MTB XC #1 | | Pembrey Country Park | 13-14 | | 571 | Wolverhampton Wheelers | 11 / 31 | 67% | 42:43.00 | 36:53.00 | 15.8% | - | - | |
| | 2017 Midlands XC #2 | | Swynnerton Old Park | 13-14 | | 82 | Wolverhampton Wheelers | 5 / 15 | 71% | 56:28.00 | 52:46.00 | 7% | - | - | |
| | 2017 Midlands XC #3 | | Cannock Chase | 13-14 | | 114 | Wolverhampton Wheelers | 4 / 23 | 86% | 39:31.00 | 37:17.00 | 6% | - | - | |
| | 2017 British Cycling MTB XC #2 | | Wasing | 13-14 | | 570 | Wolverhampton Wheelers | 13 / 40 | 69% | 1h02:09.00 | 55:10.00 | 12.7% | - | - | |
| | 2017 British Cycling MTB XC #3 | | Aske Moor | 13-14 | | 511 | Wolverhampton Wheelers | 26 / 38 | 32% | 55:56.80 | 4.20s | 79823.8% | - | - | |
| | 2017 Midlands XC #4 | | Dudmaston | 13-14 | | 85 | Wolverhampton Wheelers | 5 / 15 | 71% | 41:45.00 | 40:12.00 | 3.9% | - | - | |
| | 2017 British Cycling MTB XC #4 | | Dalby Forest | 13-14 | | 511 | Wolverhampton Wheelers | 13 / 33 | 63% | 50:54.10 | 43:04.00 | 18.2% | - | - | |
| | Run and Ride - Summer Classic | | Cannock Chase | U16 (Shortened 3) | | 1232 | Wolverhampton Wheelers | 2 / 6 | 80% | 37:08.00 | 37:03.00 | 0.2% | - | - | |
| | 2017 Midlands XC #7 | | Eckington Woods | 13-14 | | 67 | Wolverhampton Wheelers | 4 / 12 | 73% | 38:59.00 | 35:21.00 | 10.3% | - | - | |
| | British Cycling - UK XC National Champs '17 | | Cannock Chase | 13-14 | | 362 | Wolverhampton Wheelers | 19 / 41 | 55% | 1h03:03.00 | 51:38.50 | 22.1% | - | - | |
| | 2017 British Cycling MTB XC #5 | | Royal Welsh Showground | 13-14 | | 506 | Wolverhampton Wheelers | 14 / 23 | 41% | 43:54.90 | 37:30.90 | 17.1% | - | - | |
| | 2018 Midlands XC #1 | | Swynnerton Old Park | 15-16 | | 276 | Wolverhampton Wheelers | 9 / 16 | 47% | 1h32:16.00 | 1h06:45.00 | 38.2% | - | - | |
| | 2018 Midlands XC #2 | | Parkwood Springs | 15-16 | | 280 | Wolverhampton Wheelers | 9 / 16 | 47% | 1h02:36.00 | 53:35.00 | 16.8% | - | - | |
| | 2018 Midlands XC #3 | | Cannock Chase | 15-16 | | 65 | Wolverhampton Wheelers | 6 / 14 | 62% | 58:21.00 | 54:39.00 | 6.8% | - | - | |
| | 2018 Midlands XC #5 | | Eckington Woods | 15-16 | | 198 | Wolverhampton Wheelers | 8 / 10 | 22% | 1h00:08.00 | 50:24.00 | 19.3% | - | - | |
| | 2018 Midlands XC #6 | | Dudmaston | 15-16 | | 174 | Wolverhampton Wheelers | 3 / 9 | 75% | 1h01:38.00 | 59:07.00 | 4.3% | - | - | |
| | 2018 HSBC UK | CX National Trophy Series #1 | | Moorways Leisure Centre, Derbyshire | U16 | | 99 | Wolverhampton Wheelers | 51 / 106 | 52% | 31:08.60 | 27:45.00 | 12.2% | - | - | |
| | 2018 HSBC UK | CX National Trophy Series #6 | | Shrewsbury Sports Village | U16 | | 79 | Wolverhampton Wheelers | 44 / 90 | 52% | 37:16.10 | 32:14.20 | 15.6% | - | - | |
| | 2019 HSBC UK | XC National Series #1 | | Sherwood Pines | 15-16 | | 311 | Wolverhampton Wheelers | 17 / 69 | 76% | 1h06:36.00 | 1h02:02.00 | 7.4% | - | - | |
| | 2019 HSBC UK | XC National Series #2 | | Hadleigh Park | 15-16 | | 242 | Wolverhampton Wheelers | 19 / 52 | 65% | 1h01:56.00 | 53:24.00 | 16% | - | - | |
| | 2019 HSBC UK | XC National Series #3 | | Cannock Chase | 15-16 | | 317 | Wolverhampton Wheelers | 18 / 46 | 62% | 57:20.00 | 50:18.00 | 14% | - | - | |
| | 2019 Midlands XC #2 | | Cannock Chase | 15-16 | | 204 | Wolverhampton Wheelers | 4 / 13 | 75% | 1h02:55.00 | 59:47.00 | 5.2% | - | - | |
| | 2019 Midlands XC #1 | | Parkwood Springs | 15-16 | 996104 | 205 | Wolverhampton Wheelers | 8 / 18 | 59% | - | | - | - | - | |
| | 2019 Midlands XC #3 | | Kirton Off-road Centre | 15-16 | | 205 | Wolverhampton Wheelers | 5 / 14 | 69% | 1h04:04.00 | 59:22.00 | 7.9% | - | - | |
| | 2019 HSBC UK | XC National Series #5 | | Thickthorn, Norwich | 15-16 | | 314 | Wolverhampton Wheelers | 24 / 45 | 48% | 57:05.40 | 51:20.50 | 11.2% | - | - | |
| | 2019 Midlands XC #4 | | Eckington Woods | 15-16 | | 203 | Wolverhampton Wheelers | 3 / 8 | 71% | 57:56.00 | 54:19.00 | 6.7% | - | - | |
| | British Cycling - UK XC National Champs '19 | | Cannock Chase | 15-16 | | 221 | Wolverhampton Wheelers | 18 / 50 | 65% | 58:47.00 | 51:26.00 | 14.3% | - | - | |
| | 2019 Midlands XC #5 | | Dudmaston | 15-16 | | 205 | Wolverhampton Wheelers | 4 / 6 | 40% | 58:30.00 | 53:52.00 | 8.6% | - | - | |
| | 2018 British Cycling MTB XC #5 | | Royal Welsh Showground | 15-16 | | 134 | Wolverhampton Wheelers | 20 / 37 | 47% | 57:10.00 | 48:54.00 | 16.9% | - | - | |
| | British Cycling - UK CX National Champs '20 | | Shrewsbury Sports Village | 17-18 | | 82 | Wolverhampton Wheelers | 39 / 59 | 34% | - | 42:12.80 | - | - | - | |
| | 2019 HSBC UK | CX National Trophy Series #1 | | Moorways Leisure Centre, Derbyshire | 17-18 | | 62 | Wolverhampton Wheelers | 45 / 77 | 42% | 50:12.30 | 45:27.10 | 10.5% | - | - | |
| | British Cycling - UK CX National Champs '19 | | Cyclopark | 15-16 | | 79 | Wolverhampton Wheelers | 32 / 91 | 66% | 40:03.20 | 36:19.80 | 10.3% | - | - | |
| | 2023 Crank It Cycling #1 | | Sherwood Pines | Sport | | 574 | Wolverhampton Wheelers | 1 / 3 | 100% | 1h33:21.00 | 1h20:16.00 | 16.3% | - | - | |
| | 2023 Welsh MTB XC #1 | | Llandegla | Expert | | 7 | Wolverhampton Wheelers | 7 / 13 | 50% | 2h03:53.00 | 1h01:50.00 | 100.4% | - | - | |
| | 2023 British Cycling XC National Series #5 | | Cannock Chase | Open (Sport/Open race) | | 553 | Wolverhampton Wheelers | 3 / 60 | 97% | 1h08:58.00 | 1h05:35.00 | 5.2% | - | - | |
| | 2023 Shimano Lazer West Midlands Cyclo-Cross League #2 | | Shrewsbury Sports Village | U23 | | 524 | Wolverhampton Wheelers | 3 / 6 | 60% | 53:48.00 | 51:36.00 | 4.3% | - | - | |
| | 2023 Shimano Lazer West Midlands Cyclo-Cross League #7 | | Baggeridge Country Park | U23 | | 524 | Wolverhampton Wheelers | 10 / 10 | 0% | 59:34.00 | 49:32.00 | 20.3% | - | - | |
| | 2023 Shimano Lazer West Midlands Cyclo-Cross League #4 | | Heart of England Conference Centre | U23 | | 524 | Wolverhampton Wheelers | 8 / 11 | 30% | 1h01:19.00 | 56:44.00 | 8.1% | - | - | |
| | Run and Ride - Winter Classic | | Cannock Chase | Enthusiast | | 438 | Wolverhampton Wheelers | 2 / 84 | 99% | 1h08:35.67 | 1h08:20.91 | 0.4% | - | - | |
| | Run and Ride - Spring Classic | | Cannock Chase | Elite/Expert | | 62 | Wolverhampton | 6 / 8 | 29% | 1h21:55.55 | 1h07:59.43 | 20.5% | - | - | |
| | 2015 Midlands XC #6 | | Eastridge | U13 (U10/U13 course) | | 645 | WWCC | 5 / 5 | 0% | 30:01.00 | 20:53.00 | 43.7% | - | - | |
| | 2015 Midlands XC #5 | | Ringwood | U13 | 996104 | 804 | WWCC | 4 / 4 | 0% | - | | - | - | - | |
| | 2015 Midlands XC #7 | | Dudmaston | U13 (Shortened) | | 567 | WWCC | 6 / 9 | 38% | 27:50.00 | 20:34.00 | 35.3% | - | - | |
| | 2021 HSBC UK | XC National Series #5 | | Cannock Chase | 17-18 | | 58 | | 11 / 20 | 47% | -1LAP | 1h11:54.40 | - | - | - | |
| | 2022 Midlands XC #1 | | Swynnerton Old Park | Open | | 808 | | 3 / 7 | 67% | 1h07:03.00 | 1h03:55.00 | 4.9% | - | - | |
| | 2022 Midlands XC #2 | | Eastridge | Open | | 801 | | 5 / 11 | 60% | 1h00:01.00 | 54:45.00 | 9.6% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #4 | | Abbey Stadium, Redditch | U23 | | 276 | | 5 / 9 | 50% | 53:22.00 | 48:36.00 | 9.8% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #1 | | Shrewsbury Sports Village | 18-39 | | 276 | | 20 / 40 | 51% | 51:48.00 | 50:23.00 | 2.8% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #6 | | Hillcrest, Ullenhall | U23 | | 276 | | 2 / 3 | 50% | 55:04.00 | 52:42.00 | 4.5% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #12 | | Walsall Arboretum | U23 | | 276 | | 3 / 6 | 60% | 56:39.00 | 55:01.00 | 3% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #13 | | Chillington Hall | U23 | | 276 | | 2 / 4 | 67% | 59:50.00 | 53:12.00 | 12.5% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #9 | | Baggeridge Country Park | U23 | | 276 | | 5 / 11 | 60% | 57:48.00 | 51:43.00 | 11.8% | - | - | |
| | 2022 Shimano Lazer West Midlands Cyclo-Cross League #8 | | Aldersley Stadium | U23 | | 276 | | 5 / 7 | 33% | 58:20.00 | 51:08.00 | 14.1% | - | - | |
| | Run and Ride - Winter Classic | | Cannock Chase | Enthusiast | | 50056 | | 9 / 60 | 86% | 1h04:00.07 | 56:57.25 | 12.4% | - | - | |