| | 2023 Aberdeenshire Enduro Series #4 | | Tarland | E-MTB: 40+ | | 55 | | 4 / 30 | 90% | 21:44.30 | 20:59.60 | 3.6% | 19:44.30 | 10.1% | |
| | Struggle Events - Struggle Borderlands Road & Gravel Sportive | | Dales Bike Centre | Open (Gravel: 100km) | | 1184 | | n/a (sportive) | - | 5h36:24.00 | - | - | - | - | |
| | 2023 Aberdeenshire Enduro Series #3 | | Pitfichie | E-MTB: 40+ | | 44 | | 8 / 19 | 61% | 18:10.50 | 14:22.80 | 26.4% | 13:35.90 | 33.7% | |
| | 2023 Aberdeenshire Enduro Series #2 | | Aboyne | E-MTB: 40+ | | 43 | | 8 / 19 | 61% | 17:48.14 | 15:28.58 | 15% | 14:40.28 | 21.3% | |
| | Dirty Reiver - Dirty Reiver | | Kielder Forest | 40-49 (130km) | | 204 | | n/a (sportive) | - | 5h06:38.00 | - | - | - | - | |
| | 2022 Hope XC #7 | | Leeds Urban Bike Park | 40-49 | | 416 | | 8 / 14 | 46% | 1h18:25.00 | 1h18:25.00 | 0% | - | - | |
| | 2022 Aberdeenshire Enduro Series #2 - TransDeeside | | Deeside | 45+ | | 35 | | 4 / 21 | 85% | 19:03.60 | 16:57.76 | 12.4% | 14:39.68 | 30% | |
| | NRB Events - Yorkshire Pudding | | Birdsall estate | E-MTB: 40+ | | 92 | | 2 / 4 | 67% | 6:24.79 | 6:06.79 | 4.9% | 5:27.55 | 17.5% | |
| | Doon tha Brae events - Glenlivet Enduro | | Glenlivet Bike Park | E-MTB | | 40 | eguide Scotland | 6 / 19 | 72% | 18:50.76 | 17:17.71 | 9% | 16:27.50 | 14.5% | |
| | 2021 Aberdeenshire Enduro Series #3 | | Scolty Hill | E-MTB | | 30 | eguide Scotland | 11 / 12 | 9% | 14:08.25 | 11:43.94 | 20.5% | 11:11.30 | 26.4% | |
| | 2021 Aberdeenshire Enduro Series #2 | | Drumtochty | E-MTB | | 33 | | 9 / 15 | 43% | 19:47.73 | 17:24.42 | 13.7% | 16:34.63 | 19.4% | |
| | 2021 Aberdeenshire Enduro Series #1 | | Pitfichie | E-MTB (E-MTB) | | 38 | eguide Scotland | 12 / 17 | 31% | 18:05.22 | 14:44.50 | 22.7% | - | - | |
| | Tweedlove - Pirelli Glentress 7 | | Glentress | Solo: 40-49 | | 143 | | 3 / 61 | 97% | - | 6h27:22.00 | - | - | - | |
| | 2019 HSBC UK | XC National Series #1 | | Sherwood Pines | 40-49 | | 421 | VC York | 24 / 84 | 72% | 1h38:43.00 | 1h30:31.00 | 9.1% | - | - | |
| | 2018 Scottish XC #5 | | Dunoon | 40-49 | | 655 | VC York | DNF / 23 | 0% | DNF | 1h20:33.00 | - | - | - | |
| | 2018 Midlands XC #2 | | Parkwood Springs | 40-49 | | 234 | VC York | 42 / 45 | 7% | - | 1h09:58.00 | - | - | - | |
| | 2018 British Cycling MTB XC #2 | | Dalby Forest | 40-49 | | 309 | VC York | 9 / 47 | 83% | 1h49:22.00 | 1h37:30.00 | 12.2% | - | - | |
| | 2018 Scottish XC #2 | | Dalbeattie | 40-49 | | 659 | VC York | 6 / 29 | 82% | 1h38:42.00 | 1h30:12.00 | 9.4% | - | - | |
| | 2018 British Cycling MTB XC #1 | | Sherwood Pines | 40-49 | | 350 | VC York | 15 / 66 | 78% | 1h42:53.00 | 1h33:54.00 | 9.6% | - | - | |
| | British Cycling - UK XC National Champs '17 | | Cannock Chase | 40-49 | | 458 | VC York | 9 / 43 | 81% | 1h47:20.00 | 1h36:54.00 | 10.8% | - | - | |
| | 2017 Midlands XC #5 | | Parkwood Springs | 40-49 | | 154 | VC York | 1 / 36 | 100% | 1h10:04.00 | 1h10:04.00 | 0% | - | - | |
| | 2017 British Cycling MTB XC #4 | | Dalby Forest | 40-49 | | 480 | VC York | 36 / 37 | 3% | - | 1h42:38.00 | - | - | - | |
| | 2017 Nutcracker Altura XC #2 | | Gandale | 40-49 | | 402 | VC York | 1 / 18 | 100% | 1h34:35.00 | 1h34:35.00 | 0% | - | - | |
| | 2017 Nutcracker Altura XC #1 | | Dalby Forest | 40-49 | 406446 | 403 | VC York | 1 / 32 | 100% | 1h29:22.00 | 1h29:22.00 | 0% | - | - | |
| | 2016 Scottish XC #6 | | Forfar | 40-49 | | 225 | | 7 / 23 | 73% | 1h22:54.73 | 1h14:17.51 | 11.6% | - | - | |
| | 2016 Nutcracker Altura XC #5 | | Gandale | 40-49 | | ? | VC York | 4 / 25 | 88% | - | | - | - | - | |
| | 2016 Scottish XC #3 | | Cathkin Braes Country Park | 40-49 | | 224 | | 5 / 30 | 86% | 1h21:58.33 | 1h19:58.65 | 2.5% | - | - | |
| | 2016 British Cycling MTB XC #3 | | Dalby Forest | 40-49 | | 338 | Rapha CC | 13 / 50 | 76% | 1h23:41.00 | 1h14:27.00 | 12.4% | - | - | |
| | 2016 Midlands XC #2 | | Cannock Chase | 40-49 | | 34 | Rapha CC | 5 / 45 | 91% | 1h13:27.00 | 1h07:22.00 | 9% | - | - | |
| | 2016 Nutcracker Altura XC #1 | | Whinlatter | 40-49 | | 848 | | 12 / 53 | 79% | 1h26:57.00 | 1h16:51.00 | 13.1% | - | - | |
| | 2015 Nutcracker Altura XC #6 | | Dales Bike Centre | 40-49 | 406446 | 654 | Rapha CC | 4 / 22 | 86% | - | | - | - | - | |
| | 2015 Scottish XC #5 | | Badaguish | 40-49 | | 223 | | 2 / 18 | 94% | 1h27:55.30 | 1h26:39.44 | 1.5% | - | - | |
| | 2015 British Cycling MTB XC #5 | | Cannock Chase | 40-49 | | 330 | Rapha CC | 20 / 34 | 42% | 1h29:12.00 | 1h18:48.00 | 13.2% | - | - | |
| | 2015 North East XC MTB Series #7 | | Hamsterley Forest | 40-49 | | 183 | | 1 / 8 | 100% | 1h39:22.80 | 1h39:22.80 | 0% | - | - | |
| | British Cycling - UK XC National Champs '15 | | Hadleigh Park | 40-49 | | 310 | Rapha CC | 16 / 42 | 63% | 1h26:04.00 | 1h16:25.00 | 12.6% | - | - | |
| | 2015 Midlands XC #6 | | Eastridge | 40-49 | | 135 | Rapha CC | 7 / 24 | 74% | 1h26:47.00 | 1h18:50.00 | 10.1% | - | - | |
| | 2015 British Cycling MTB XC #4 | | Cathkin Braes Country Park | 40-49 | | 89 | Rapha CC | 12 / 27 | 58% | 1h42:56.00 | 1h31:59.00 | 11.9% | - | - | |
| | 2015 Nutcracker Altura XC #4 | | Parkwood Springs | 40-49 | | 305 | Rapha CC | 3 / 44 | 95% | 1h28:03.00 | 1h22:17.00 | 7% | - | - | |
| | 2015 Nutcracker Altura XC #3 | | Aske Moor | 40-49 | | 840 | Rapha CC | 1 / 47 | 100% | 1h19:54.00 | 1h19:54.00 | 0% | - | - | |
| | 2015 Midlands XC #2 | | Harlow Wood | 40-49 | | 51 | Rapha Cycle Club | 2 / 35 | 97% | 1h23:52.00 | 1h21:17.00 | 3.2% | - | - | |
| | Durty Events - Selkirk Marathon | | Selkirk | Open | 406446 | 31 | Rapha CC | 21 / 74 | 73% | 4h20:36.00 | 3h46:50.00 | 14.9% | - | - | |
| | 2015 Nutcracker Altura XC #2 | | Dalby Forest | 40-49 | 406446 | 708 | Rapha CC | 1 / 70 | 100% | 1h27:42.00 | 1h27:42.00 | 0% | - | - | |
| | 2014 Scottish XC #5 | | Dalbeattie | 40-49 | | 303 | | 1 / 19 | 100% | 1h40:33.02 | 1h40:33.02 | 0% | - | - | |
| | 2014 British Cycling MTB XC #4 | | Sherwood Pines | 40-49 | | 535 | York Cycleworks | 13 / 54 | 77% | 1h34:10.00 | 1h28:49.00 | 6% | - | - | |
| | 2014 Nutcracker Altura XC #4 | | Parkwood Springs | 40-49 | 406446 | 710 | | 7 / 47 | 87% | 1h38:10.00 | 1h27:13.00 | 12.6% | - | - | |
| | 2014 Nutcracker Altura XC #3 | | Aske Moor | 40-49 | 406446 | 710 | York Cycleworks RT | 3 / 57 | 96% | 1h28:29.00 | 1h20:20.00 | 10.2% | - | - | |
| | 2014 Midlands XC #2 | | Birchall Woods | 40-49 | | 351 | York Cycleworks | 7 / 42 | 85% | 1h17:19.00 | 1h10:56.00 | 9% | - | - | |
| | 2014 Nutcracker Altura XC #2 | | Gandale | 40-49 | | 710 | York Cycleworks RT | 8 / 56 | 87% | 1h32:11.00 | 1h22:38.00 | 11.6% | - | - | |
| | 2014 British Cycling MTB XC #1 | | Codham Park | 40-49 | | 433 | York Cycleworks | 24 / 60 | 61% | 1h32:26.00 | 1h22:57.00 | 11.4% | - | - | |