| | 2024 Southern XC #1 | | Matterley Estate | Elite | | 529 | Lettuce Club | 7 / 7 | 0% | 1h47:09.50 | 1h33:10.80 | 15% | - | - | |
| | British Cycling - UK CX National Champs '24 | | Callendar Estate | 23+ | | 53 | Lettuce Club | 24 / 35 | 32% | 26:25.00 | 59:26.00 | -55.6% | - | - | |
| | 2023 Scottish CX #1 | | Kinneil X | 18+ | | 20 | | 17 / 58 | 72% | 1h04:30.00 | 57:05.00 | 13% | - | - | |
| | 2023 British Cycling XC National Series #3 | | Holywell Estate | Sport (Short Track Junior/Senior race) | | 392 | Lettuce Club | 10 / 10 | 0% | 20:27.50 | 20:27.50 | 0% | - | - | |
| | 2023 Scottish XC #1 | | Comrie Croft | Elite | | 916 | Lettuce Club | 7 / 7 | 0% | 1h37:43.00 | 1h36:21.00 | 1.4% | - | - | |
| | 2022 Scottish CX #5 & Scottish Champs | | Dundee | 18+ | | 175 | | 25 / 59 | 59% | 1h06:22.00 | 1h00:18.00 | 10.1% | - | - | |
| | 2022 British Cycling CX National Trophy Series #2 | | Callendar Estate | Elite | | 62 | | 54 / 66 | 18% | 34:12.00 | 20:42.00 | 65.2% | - | - | |
| | 2022/23 Miche Wessex CX League #5 | | Prospect Park | 18+ | | 819 | Harts Cyclery | 21 / 49 | 58% | 1h04:31.18 | 1h02:03.20 | 4% | - | - | |
| | 2022 Scottish CX #1 | | Muir of Ord | 18+ | | 24 | | 9 / 32 | 74% | 1h04:51.00 | 59:29.00 | 9% | - | - | |
| | 2022 Scottish Enduro Series #2 | | Pitfichie | Open (SES100) | | 1160 | Hart's Cyclery | 33 / 56 | 42% | 14:07.37 | 11:34.64 | 22% | - | - | |
| | British Cycling - UK XC National Champs '22 | | Kirroughtree Forest | Elite | | 17 | | 27 / 34 | 21% | 1h48:53.00 | 1h33:17.00 | 16.7% | - | - | |
| | Tweedlove - Glentress 7 | | Glentress | Solo: U30 | | 157 | TEAM: Craig Owen | 14 / 29 | 54% | 6h02:56.00 | 3h50:33.00 | 57.4% | - | - | |
| | 2022 Scottish XC #3 | | Cathkin Braes Country Park | Elite/Expert | | 809 | | 9 / 11 | 20% | 1h47:30.00 | 1h29:10.00 | 20.6% | - | - | |
| | 2022 British Cycling XC National Series - Schwalbe #4 | | Cannock Chase | Elite | | 24 | Hart's Cyclery | DNF / 36 | 0% | DNF | 1h23:29.00 | - | - | - | |
| | 2022 British Cycling XC National Series - Schwalbe #3 | | Lochore Meadows Country Park | Elite | | 19 | Hart's Cyclery | 15 / 15 | 0% | -1LAP | 1h31:55.70 | - | - | - | |
| | 2021 HSBC UK | CX National Trophy Series #3 | | Falkirk | Elite | | 87 | Hart's Cyclery | 51 / 68 | 25% | -5LAP | 1h03:30.00 | - | - | - | |
| | 2021 Enduro World Series - Vittoria Tweed Valley | | Innerleithen | EWS100 (EWS100) | | 1100 | | 91 / 155 | 42% | 27:32.29 | 22:28.83 | 22.5% | - | - | |
| | 2021 HSBC UK | XC National Series #4 | | Newcastleton | Elite | | 18 | Hart's Cyclery | 13 / 19 | 33% | -1LAP | 1h28:45.10 | - | - | - | |
| | 2021 Scottish XC #2 | | Glentress | A Race | | 668 | | 8 / 26 | 72% | - | | - | - | - | |
| | 2020 Scottish XC #1 | | Linlithgow | Elite/Expert | | 810 | | 9 / 14 | 38% | 1h49:34.32 | 1h30:21.70 | 21.3% | - | - | |
| | 2019 Scottish XC #4 | | Kirkhill | Elite/Expert | | 355 | | 6 / 7 | 17% | 1h47:04.55 | 1h31:59.05 | 16.4% | - | - | |
| | 2019 HSBC UK | XC National Series #2 | | Hadleigh Park | Elite | | 37 | | 33 / 40 | 18% | - | 1h24:30.00 | - | - | - | |
| | 2019 Scottish XC #2 | | Dalbeattie | Elite/Expert | | 356 | | 4 / 7 | 50% | 1h38:15.00 | 1h30:15.00 | 8.9% | - | - | |
| | 2019 HSBC UK | XC National Series #1 | | Sherwood Pines | Elite | | 27 | Hart's Cyclery | 31 / 35 | 12% | - | 1h41:14.00 | - | - | - | |
| | 2019 Scottish XC #1 | | Cathkin Braes Country Park | Elite/Expert | | 357 | | 11 / 11 | 0% | - | 1h25:05.00 | - | - | - | |
| | 2018 HSBC UK | CX National Trophy Series #2 | | Beach Park, Irvine | Elite | | 20 | Hart's Cyclery | 36 / 51 | 30% | - | 1h01:11.00 | - | - | - | |
| | 2018 Scottish XC #6 | | Glentress | Elite/Expert | | 362 | Ronde CC | 9 / 10 | 11% | 1h43:50.72 | 1h30:10.73 | 15.2% | - | - | |
| | 2018 Scottish XC #5 | | Dunoon | 19-39 | | 356 | Harts Cyclery | DNF / 11 | 0% | DNF | 1h35:55.00 | - | - | - | |
| | 2018 Scottish XC #4 | | Lochore Meadows Country Park | Elite/Expert | | 356 | | 6 / 11 | 50% | 1h32:12.25 | 1h28:20.49 | 4.4% | - | - | |
| | 2018 British Cycling MTB XC #3 | | Glentress | Elite | | 22 | Hart's Cyclery | 15 / 23 | 36% | 1h57:46.00 | 1h37:10.00 | 21.2% | - | - | |
| | 2018 Scottish XC #3 | | Cathkin Braes Country Park | Elite/Expert | | 358 | | 11 / 13 | 17% | 1h35:27.61 | 1h23:21.92 | 14.5% | - | - | |
| | 2018 Scottish XC #2 | | Dalbeattie | Elite/Expert | | 358 | Harts Cyclery | DNF / 11 | 0% | DNF | 1h51:04.00 | - | - | - | |
| | 2018 British Cycling MTB XC #1 | | Sherwood Pines | Elite | | 33 | Hart's Cyclery | 32 / 34 | 6% | 2h07:07.00 | 1h45:47.00 | 20.2% | - | - | |
| | 2017 British Cycling MTB XC #4 | | Dalby Forest | Elite | | 28 | Hart's Cyclery | 29 / 29 | 0% | - | 1h36:03.00 | - | - | - | |
| | 2017 British Cycling MTB XC #3 | | Aske Moor | Elite | | 32 | Hart's Cyclery | 29 / 32 | 10% | - | 1h34:48.00 | - | - | - | |
| | 2017 Nutcracker Altura XC #2 | | Gandale | Elite | | 603 | Harts Cyclery | 3 / 4 | 33% | 2h00:06.00 | 1h45:58.00 | 13.3% | - | - | |
| | 2017 British Cycling MTB XC #1 | | Pembrey Country Park | Elite | | 38 | Hart's Cyclery | 31 / 37 | 17% | 2h08:10.00 | 1h46:01.00 | 20.9% | - | - | |
| | 2016 Scottish XC #6 | | Forfar | Elite/Expert | | 11 | | 10 / 10 | 0% | - | 1h29:31.59 | - | - | - | |
| | 2016 British Cycling MTB XC #5 | | Cannock Chase | Expert | | 225 | Hart's Cyclery | 24 / 38 | 38% | 1h41:09.00 | 1h27:56.00 | 15% | - | - | |
| | British Cycling - UK XC National Champs '16 | | Cathkin Braes Country Park | U23 | | 118 | Hart's Cyclery | 14 / 16 | 13% | - | 1h29:44.00 | - | - | - | |
| | 2016 British Cycling MTB XC #4 | | Fforest Fields | Expert | | 236 | Hart's Cyclery | 21 / 40 | 49% | 1h51:16.00 | 1h35:33.00 | 16.5% | - | - | |
| | 2016 Scottish XC #3 | | Cathkin Braes Country Park | Elite/Expert | | 6 | | 3 / 8 | 71% | 1h36:35.00 | 1h34:02.61 | 2.7% | - | - | |
| | 2016 British Cycling MTB XC #3 | | Dalby Forest | Expert | | 233 | Hart's Cyclery | 29 / 41 | 30% | 1h25:54.00 | 1h13:22.00 | 17.1% | - | - | |
| | 2016 British Cycling MTB XC #1 | | Pembrey Country Park | Expert | | 169 | Hart's Cyclery | 36 / 50 | 29% | 1h48:03.00 | 1h34:36.00 | 14.2% | - | - | |
| | 2016 Scottish XC #1 | | Laggan Wolftrax | Elite/Expert | | 7 | | 11 / 12 | 9% | 1h49:19.90 | 1h29:32.70 | 22.1% | - | - | |
| | 2015 Scottish XC #6 | | Forfar | Elite | | 30 | | 7 / 7 | 0% | - | 1h32:09.39 | - | - | - | |
| | 2015 Nutcracker Altura XC #6 | | Dales Bike Centre | Elite | | 303 | Ronde CC | 1 / 1 | - | - | | - | - | - | |
| | 2015 Scottish XC #5 | | Badaguish | Elite/Expert | | 32 | | 10 / 11 | 10% | - | 1h40:10.30 | - | - | - | |
| | 2015 Scottish XC #4 | | Lochore Meadows Country Park | Elite/Expert | | 29 | | 9 / 9 | 0% | - | 1h51:36.37 | - | - | - | |
| | 2015 British Cycling MTB XC #4 | | Cathkin Braes Country Park | Expert | | 330 | Ronde CC | 22 / 31 | 30% | 1h48:15.00 | 1h28:03.00 | 22.9% | - | - | |
| | 2015 British Cycling MTB XC #3 | | Fforest Fields | Expert | | 271 | Ronde CC | 50 / 66 | 25% | 1h48:24.00 | 1h24:43.00 | 28% | - | - | |
| | 2015 British Cycling MTB XC #2 | | Newnham Park | Expert | | 263 | Ronde CC | 64 / 67 | 5% | - | 1h17:39.00 | - | - | - | |
| | 2015 British Cycling MTB XC #1 | | Sherwood Pines | Expert | | 282 | Ronde CC | 72 / 88 | 18% | - | 1h38:06.00 | - | - | - | |
| | 2014 Scottish XC #5 | | Dalbeattie | Elite/Expert | | 5 | | 4 / 4 | 0% | - | 1h58:54.42 | - | - | - | |
| | 2014 Scottish XC #4 | | Lochore Meadows Country Park | Elite/Expert | | 2 | | 4 / 4 | 0% | - | 1h35:59.15 | - | - | - | |
| | 2014 Scottish XC #2 | | Cathkin Braes Country Park | Sport | | 123 | | 20 / 23 | 14% | - | 1h24:23.01 | - | - | - | |