| | 2021 Scottish XC #1 | | Cathkin Braes Country Park | Fast | | 14 | Scott racing | 1 / 40 | 100% | - | | - | - | - | |
| | 2014 Scottish Power Youth Mini DH #3 | | Newmilns | U14 | | 33 | Wolfpaxx Riders | 1 / 5 | 100% | 46.62s | 46.62s | 0% | 43.88s | 6.2% | |
| | 2015 Scottish Power Youth Mini DH #5 | | Aberfeldy | U14 | | 51 | | 1 / 15 | 100% | 55.69s | 55.69s | 0% | 52.49s | 6.1% | |
| | Scottish Cycling - Mini DH | | Fort William | U16 | | 91 | Stirling Bike Club | 1 / 10 | 100% | 1:01.89 | 1:01.89 | 0% | 1:01.89 | 0% | |
| | 2014 Scottish Power Youth Mini DH #5 | | Fort William | U14 | | 76 | | 3 / 11 | 80% | 1:07.43 | 1:03.21 | 6.7% | 1:03.21 | 6.7% | |
| | 2015 Scottish Power Youth Mini DH #6 | | Fort William | U14 | | 44 | Stirling Bike Club | 1 / 15 | 100% | 1:09.59 | 1:09.59 | 0% | 1:06.07 | 5.3% | |
| | 2016 Borders Mini DH #3 | | Innerleithen | 15-16 | 935435 | 74 | Stirling Bike Club | 1 / 12 | 100% | 1:22.98 | 1:22.98 | 0% | 1:19.55 | 4.3% | |
| | 2013 Inners Mini DH #2 | | Innerleithen | 10-12 | | ? | | 1 / 23 | 100% | 1:44.00 | 1:44.00 | 0% | 1:28.00 | 18.2% | |
| | 2013 Inners Mini DH #3 | | Innerleithen | 10-12 | | ? | | 3 / 18 | 88% | 2:08.00 | 2:06.00 | 1.6% | 1:30.00 | 42.2% | |
| | 2014 Scottish Power Youth Mini DH #4 | | Comrie Croft | U14 | | 51 | Wolfpax Riders | 3 / 21 | 90% | 3:03.06 | 2:57.19 | 3.3% | 2:15.27 | 35.3% | |
| | 2015 Scottish Power Youth Mini DH #3 | | Comrie Croft | U14 | | 64 | Stirling Bike Club | 1 / 16 | 100% | 3:04.00 | 3:04.00 | 0% | 2:41.00 | 14.3% | |
| | No Fuss Events - Kinlochleven Enduro | | Kinlochleven | 16-18 | | 1 | Wheels Cycles | 1 / 13 | 100% | 13:09.37 | 13:09.37 | 0% | 13:09.37 | 0% | |
| | Muckmedden - Fair City Enduro | | Perth | 14-15 | | 229 | | 1 / 14 | 100% | 14:07.00 | 14:07.00 | 0% | 12:19.00 | 14.6% | |
| | Tweedlove - King & Queen of the hill | | Glentress | 17-18 | | 96 | Wheels Cycling Centre | 6 / 17 | 69% | 18:31.98 | 17:09.56 | 8% | 15:42.19 | 18% | |
| | 2014 Scottish XC #4 | | Lochore Meadows Country Park | 13-14 | | 131 | | 4 / 13 | 75% | 20:14.60 | 19:41.27 | 2.8% | - | - | |
| | 2023 UCI World Cup XCC #4 | | Val di Sole | Elite | 10023937762 & 2001 | 35 | Cannondale Factory Racing | 30 / 40 | 26% | 20:16.00 | 19:45.00 | 2.6% | - | - | |
| | 2015 Scottish XC #5 | | Badaguish | 13-14 | | 51 | | 1 / 11 | 100% | 19:45.30 | 19:45.30 | 0% | - | - | |
| | 2023 UCI World Cup XCC #2 | | Lenzerheide | Elite | 10023937762 & 2001 | 39 | Cannondale Factory Racing | 32 / 40 | 21% | 20:48.00 | 19:47.00 | 5.1% | - | - | |
| | 2015 Scottish XC #2 | | Dalbeattie | 13-14 | | 51 | | 1 / 16 | 100% | 19:54.50 | 19:54.50 | 0% | - | - | |
| | 2014 Scottish XC #1 | | Forfar | 13-14 | | 30 | | 6 / 21 | 75% | 21:52.72 | 20:07.93 | 8.7% | - | - | |
| | 2023 UCI World Cup XCC #5 | | Pal Arinsal | Elite | 10023937762 & 2001 | 21 | Cannondale Factory Racing | 30 / 40 | 26% | 21:00.00 | 20:13.00 | 3.9% | - | - | |
| | British Cycling - UK XC National Champs '23 | | Tong | Elite (Short Track Junior/Senior race) | | 581 | Cannondale Factory Racing | 1 / 16 | 100% | 20:18.50 | 20:18.50 | 0% | - | - | |
| | 2023 UCI World Cup XCC #6 | | Les Gets | Elite | 10023937762 & 2001 | 24 | Cannondale Factory Racing | 11 / 40 | 74% | 20:47.00 | 20:33.00 | 1.1% | - | - | |
| | 2014 Scottish XC #3 | | Abriachan | 13-14 | | 131 | | 5 / 18 | 76% | 22:43.02 | 20:50.92 | 9% | - | - | |
| | 2023 UCI World Cup XCC #7 | | Snowshoe, WV | Elite | 10023937762 & 2001 | 23 | Cannondale Factory Racing | 5 / 40 | 90% | 21:04.00 | 20:54.00 | 0.8% | - | - | |
| | 2023 UCI World Cup XCC #3 | | Leogang | Elite | 10023937762 & 2001 | 33 | Cannondale Factory Racing | 7 / 40 | 85% | 21:19.00 | 21:08.00 | 0.9% | - | - | |
| | 2018 POC Scottish Enduro Series #6 | | Fort William | U19 | | 4 | Wheels Cycling Centre | 2 / 56 | 98% | 21:19.44 | 21:14.74 | 0.4% | 19:59.07 | 6.7% | |
| | 2023 UCI World Cup XCC #8 | | Mont-Sainte-Anne, QC | Elite | 10023937762 & 2001 | 22 | Cannondale Factory Racing | 8 / 40 | 82% | 22:13.00 | 22:05.00 | 0.6% | - | - | |
| | 2015 Scottish XC #4 | | Lochore Meadows Country Park | 13-14 | | 51 | | 2 / 10 | 89% | 23:02.81 | 23:02.75 | 0% | - | - | |
| | Muckmedden - Cream o' the Croft Funduro | | Comrie Croft | 13-16 | | 162 | Stirling Bike Club | 1 / 16 | 100% | 23:19.00 | 23:19.00 | 0% | 22:07.00 | 5.4% | |
| | Muckmedden - Cream o' the Croft Enduro | | Comrie Croft | 17-18 | | 28 | Strathearn MBC | 1 / 9 | 100% | 23:27.00 | 23:27.00 | 0% | 22:46.00 | 3% | |
| | 2014 Scottish XC #5 | | Dalbeattie | 13-14 | | 131 | | 4 / 12 | 73% | 25:18.16 | 23:43.48 | 6.7% | - | - | |
| | British Cycling - UK XC National Champs '22 | | Kirroughtree Forest | Elite (XCST) | | 171 | Scott racing | 1 / 23 | 100% | 24:11.90 | 24:11.90 | 0% | - | - | |
| | 2015 British Cycling MTB XC #2 | | Newnham Park | 13-14 | | 483 | Stirling Bike Club | 4 / 24 | 87% | 33:57.00 | 32:08.00 | 5.7% | - | - | |
| | 2015 Scottish XC #1 | | Cathkin Braes Country Park | 13-14 | | 51 | | 1 / 16 | 100% | 32:25.79 | 32:25.79 | 0% | - | - | |
| | Scottish CX - Linlithgow CX | | Linlithgow | 18+ | | 148 | | 2 / 44 | 98% | 51:26.00 | 33:05.00 | 55.5% | - | - | |
| | 2014 Scottish XC #2 | | Cathkin Braes Country Park | 13-14 | | 131 | | 4 / 20 | 84% | 35:49.53 | 34:02.52 | 5.2% | - | - | |
| | 2015 British Cycling MTB XC #3 | | Fforest Fields | 13-14 | | 364 | Stirling Bike Club | 5 / 29 | 86% | 38:29.00 | 36:08.00 | 6.5% | - | - | |
| | 2017 HSBC UK | CX National Trophy Series #3 | | Shrewsbury Sports Village | 17-18 | | 46 | Stirling Bike Club | 13 / 50 | 76% | 39:55.70 | 36:51.70 | 8.3% | - | - | |
| | 2019 Enduro World Series #8 | | Zermatt | U21 | GBR.2001.25220 | 439 | | 18 / 39 | 55% | 42:39.80 | 39:10.76 | 8.9% | 37:37.02 | 13.4% | |
| | 2017 HSBC UK | CX National Trophy Series #5 | | Peel Park, West Yorkshire | 17-18 | | 122 | Stirling Bike Club | 9 / 48 | 83% | 42:22.00 | 39:36.90 | 7% | - | - | |
| | 2015 Scottish XC #3 | | Laggan Wolftrax | 13-14 | | 51 | Stirling Bike Club | 1 / 15 | 100% | 39:53.00 | 39:53.00 | 0% | - | - | |
| | 2015 British Cycling MTB XC #5 | | Cannock Chase | 13-14 | | 358 | Stirling Bike Club | 3 / 24 | 91% | 42:35.00 | 40:43.00 | 4.6% | - | - | |
| | British Cycling - UK CX National Champs '18 | | Hetton Lyons Country Park | 17-18 | | 53 | Stirling Bike Club | 12 / 49 | 77% | 48:17.70 | 44:12.30 | 9.3% | - | - | |
| | 2017 British Cycling MTB XC #5 | | Royal Welsh Showground | 15-16 | | 351 | Stirling Bike Club | 1 / 33 | 100% | 47:17.00 | 47:17.00 | 0% | - | - | |
| | 2015 British Cycling MTB XC #4 | | Cathkin Braes Country Park | 13-14 | | 259 | Stirling Bike Club | 3 / 20 | 89% | 50:30.00 | 48:36.00 | 3.9% | - | - | |
| | 2016 Scottish XC #6 | | Forfar | 15-16 | | 151 | | 1 / 8 | 100% | 51:20.61 | 51:20.61 | 0% | - | - | |
| | 2016 Scottish XC #1 | | Laggan Wolftrax | 15-16 | | 151 | | 3 / 10 | 78% | 53:57.60 | 52:03.10 | 3.7% | - | - | |
| | 2016 Scottish XC #2 | | Dunoon | 15-16 | | 151 | | 1 / 11 | 100% | 52:28.00 | 52:28.00 | 0% | - | - | |
| | 2016 British Cycling MTB XC #5 | | Cannock Chase | 15-16 | | 108 | Stirling Bike Club | 4 / 46 | 93% | 54:22.00 | 52:54.00 | 2.8% | - | - | |
| | British Cycling - UK XC National Champs '15 | | Hadleigh Park | 13-14 | | 367 | Stirling Bike Club | 3 / 31 | 93% | 55:29.00 | 53:20.00 | 4% | - | - | |
| | 2016 British Cycling MTB XC #2 | | Newnham Park | 15-16 | | 141 | Stirling Bike Club | 6 / 46 | 89% | 59:39.00 | 56:57.00 | 4.7% | - | - | |
| | 2016 British Cycling MTB XC #3 | | Dalby Forest | 15-16 | | 108 | Stirling Bike Club | 7 / 44 | 86% | 58:27.00 | 56:57.00 | 2.6% | - | - | |
| | 2017 British Cycling MTB XC #1 | | Pembrey Country Park | 15-16 | | 353 | Stirling Bike Club | 1 / 51 | 100% | 57:02.00 | 57:02.00 | 0% | - | - | |
| | 2018 British Cycling MTB XC #5 | | Royal Welsh Showground | 17-18 | | 142 | Stirling Bike Club | 2 / 18 | 94% | 58:13.00 | 57:08.00 | 1.9% | - | - | |
| | 2018 Scottish XC #6 | | Glentress | 17-18 | | 450 | Stirling Bike Club | 1 / 5 | 100% | 57:33.41 | 57:33.41 | 0% | - | - | |
| | 2017 British Cycling MTB XC #3 | | Aske Moor | 15-16 | | 351 | Stirling Bike Club | 1 / 42 | 100% | 57:34.00 | 57:34.00 | 0% | - | - | |
| | 2016 Scottish XC #3 | | Cathkin Braes Country Park | 15-16 | | 151 | | 11 / 17 | 38% | 1h14:06.33 | 58:19.01 | 27.1% | - | - | |
| | 2016 British Cycling MTB XC #1 | | Pembrey Country Park | 15-16 | | 212 | Stirling Bike Club | 11 / 57 | 82% | 1h03:06.00 | 58:50.00 | 7.3% | - | - | |
| | 2017 Scottish XC #2 | | Dunoon | 15-16 | | 64 | Stirling Bike Club | 1 / 10 | 100% | 59:34.00 | 59:34.00 | 0% | - | - | |
| | 2014 British Cycling MTB XC #5 | | Cannock Chase | 13-14 | | 385 | Stirling Bike Club | 16 / 35 | 56% | 1h09:04.00 | 1h01:01.00 | 13.2% | - | - | |
| | 2019 HSBC UK | XC National Series #3 | | Cannock Chase | 17-18 | | 61 | Stirling Bike Club | 1 / 30 | 100% | 1h01:20.00 | 1h01:20.00 | 0% | - | - | |
| | 2017 British Cycling MTB XC #4 | | Dalby Forest | 15-16 | | 351 | Stirling Bike Club | 1 / 35 | 100% | 1h01:37.00 | 1h01:37.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '16 | | Cathkin Braes Country Park | 15-16 | | 79 | Stirling Bike Club | 10 / 38 | 76% | 1h06:51.00 | 1h02:12.00 | 7.5% | - | - | |
| | 2019 HSBC UK | CX National Trophy Series #3 | | Beach Park, Irvine | U23 | | 52 | Stirling Bike Club | 15 / 21 | 30% | - | 1h03:17.00 | - | - | - | |
| | 2019 HSBC UK | XC National Series #2 | | Hadleigh Park | 17-18 | | 61 | Stirling Bike Club | 1 / 37 | 100% | 1h03:26.00 | 1h03:26.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '17 | | Cannock Chase | 15-16 | | 601 | Stirling Bike Club | 2 / 48 | 98% | 1h03:59.00 | 1h03:42.00 | 0.4% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #6 | | Pal Arinsal | U23 | 10023937762 & 2001 | 13 | | 4 / 91 | 97% | 1h05:29.00 | 1h04:14.00 | 2% | - | - | |
| | British Cycling - UK XC National Champs '19 | | Cannock Chase | 17-18 | | 101 | Stirling Bike Club | DNS / 28 | 0% | DNS | 1h04:17.00 | - | - | - | |
| | 2017 British Cycling MTB XC #2 | | Wasing | 15-16 | | 351 | Stirling Bike Club | 1 / 46 | 100% | 1h06:31.00 | 1h06:31.00 | 0% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #4 | | Leogang | U23 | 10023937762 & 2001 | 20 | Great Britain | 12 / 94 | 88% | 1h09:42.00 | 1h06:54.00 | 4.2% | - | - | |
| | UCI - XCO World Championships '19 | | Mont-Sainte-Anne, QC | 17-18 | 10023937762 & 2001 | 4 | UK | 1 / 68 | 100% | 1h07:31.00 | 1h07:31.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '18 | | Hadleigh Park | 17-18 | | 202 | Stirling Bike Club | 2 / 19 | 94% | 1h09:36.00 | 1h07:33.00 | 3% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #5 | | Lenzerheide | U23 | 10023937762 & 2001 | 17 | | 3 / 122 | 98% | 1h09:04.00 | 1h08:08.00 | 1.4% | - | - | |
| | UCI - XCO World Championships '20 | | Leogang | U23 | 10023937762 & 2001 | 21 | UK | 18 / 73 | 76% | 1h16:14.00 | 1h08:15.00 | 11.7% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #3 | | Nové Mesto | U23 | 10023937762 & 2001 | 22 | Great Britain | 33 / 161 | 80% | 1h14:00.00 | 1h08:41.00 | 7.7% | - | - | |
| | 2016 British Cycling MTB XC #4 | | Fforest Fields | 15-16 | | 157 | Stirling Bike Club | 44 / 46 | 4% | - | 1h08:45.00 | - | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #5 | | Lenzerheide | U23 | 10023937762 & 2001 | 19 | | 5 / 95 | 96% | 1h10:00.00 | 1h09:24.00 | 0.9% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #2 | | Bikepark Albstadt | U23 | 10023937762 & 2001 | 26 | Great Britain | 10 / 151 | 94% | 1h12:19.00 | 1h10:01.00 | 3.3% | - | - | |
| | 2022 British Cycling XC National Series - Schwalbe #1 | | Tong | Elite | | 1 | Scott racing | 1 / 31 | 100% | 1h10:10.50 | 1h10:10.50 | 0% | - | - | |
| | 2018 Scottish XC #3 | | Cathkin Braes Country Park | 17-18 | | 450 | | 1 / 6 | 100% | 1h10:20.17 | 1h10:20.17 | 0% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #9 | | Val di Sole | U23 | 10023937762 & 2001 | 15 | | 17 / 125 | 87% | 1h14:19.00 | 1h10:29.00 | 5.4% | - | - | |
| | UCI - XCO World Championships '22 | | Les Gets | U23 | 10023937762 & 2001 | 4 | UK | 39 / 100 | 62% | 1h17:03.00 | 1h10:35.00 | 9.2% | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #1 | | Bikepark Albstadt | U23 | 10023937762 & 2001 | 14 | | 41 / 133 | 70% | 1h18:01.00 | 1h11:49.00 | 8.6% | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #4 | | Les Gets | U23 | 10023937762 & 2001 | 22 | | 10 / 112 | 92% | 1h15:00.00 | 1h12:25.00 | 3.6% | - | - | |
| | 2019 Scottish XC #1 | | Cathkin Braes Country Park | 17-18 | | 454 | | 1 / 11 | 100% | 1h12:37.80 | 1h12:37.80 | 0% | - | - | |
| | 2019 HSBC UK | XC National Series #1 | | Sherwood Pines | 17-18 | | 61 | Stirling Bike Club | 1 / 37 | 100% | 1h12:50.00 | 1h12:50.00 | 0% | - | - | |
| | 2019 Scottish XC #5 | | Lochore Meadows Country Park | 17-18 | | 454 | | 1 / 8 | 100% | 1h12:58.97 | 1h12:58.97 | 0% | - | - | |
| | British Cycling - UK XC National Champs '21 | | Newnham Park | U23 | | 61 | Scott racing | 2 / 20 | 95% | 1h14:33.10 | 1h13:14.80 | 1.8% | - | - | |
| | 2018 Scottish XC #4 | | Lochore Meadows Country Park | 17-18 | | 450 | | 1 / 7 | 100% | 1h13:44.06 | 1h13:44.06 | 0% | - | - | |
| | UCI - XCO World Championships '18 | | Lenzerheide | 17-18 | 10023937762 & 2001 | 42 | Great Britain | 16 / 110 | 86% | 1h18:49.00 | 1h13:45.00 | 6.9% | - | - | |
| | UCI - XCO World Championships '23 | | Glentress | U23 | 10023937762 & 2001 | 7 | UK | 1 / 90 | 100% | 1h13:53.00 | 1h13:53.00 | 0% | - | - | |
| | 2020 Mercedes-Benz UCI World Cup XC #2 | | Nové Mesto | U23 | 10023937762 & 2001 | 21 | | 31 / 92 | 67% | 1h22:39.00 | 1h15:57.00 | 8.8% | - | - | |
| | 2018 British Cycling MTB XC #4 | | Phoenix Bike Park, Kentford | 17-18 | | 101 | Stirling Bike Club | 1 / 17 | 100% | 1h16:44.00 | 1h16:44.00 | 0% | - | - | |
| | 2018 British Cycling MTB XC #2 | | Dalby Forest | 17-18 | | 203 | Stirling Bike Club | 1 / 27 | 100% | 1h16:59.00 | 1h16:59.00 | 0% | - | - | |
| | 2023 UCI World Cup XCO #3 | | Leogang | Elite | 10023937762 & 2001 | 37 | Cannondale Factory Racing | 26 / 116 | 78% | 1h21:05.00 | 1h17:41.00 | 4.4% | - | - | |
| | 2019 Scottish XC #3 | | Linlithgow | 17-18 | | 454 | | 1 / 5 | 100% | 1h17:51.00 | 1h17:51.00 | 0% | - | - | |
| | 2023 UCI World Cup XCO #7 | | Snowshoe, WV | Elite | 10023937762 & 2001 | 23 | Cannondale Factory Racing | 30 / 93 | 68% | 1h21:41.00 | 1h18:38.00 | 3.9% | - | - | |
| | 2023 UCI World Cup XCO #4 | | Val di Sole | Elite | 10023937762 & 2001 | 38 | Cannondale Factory Racing | DNF / 111 | 0% | DNF | 1h20:22.00 | - | - | - | |
| | British Cycling - UK XC National Champs '23 | | Tong | Elite | | 2 | Cannondale Factory Racing | 1 / 16 | 100% | 1h21:15.00 | 1h21:15.00 | 0% | - | - | |