| | 2014 British Cycling MTB XC #4 | | Sherwood Pines | Elite | | 95 | Trek Factory Racing (TFR) | 2 / 22 | 95% | 1h35:46.00 | 1h34:52.00 | 1% | - | - | |
| | 2014 British Cycling MTB XC #5 | | Cannock Chase | Elite | | 51 | Trek Factory Racing (TFR) | 18 / 21 | 15% | - | 1h42:51.00 | - | - | - | |
| | 2015 British Cycling MTB XC #2 | | Newnham Park | Elite | | 62 | | 1 / 27 | 100% | 1h24:20.00 | 1h24:20.00 | 0% | - | - | |
| | 2015 British Cycling MTB XC #1 | | Sherwood Pines | Elite | | 102 | | 4 / 28 | 89% | 1h54:54.00 | 1h52:19.00 | 2.3% | - | - | |
| | 2015 British Cycling MTB XC #4 | | Cathkin Braes Country Park | Elite | | 101 | Liv Cycling UK | 1 / 19 | 100% | 1h37:33.00 | 1h37:33.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '15 | | Hadleigh Park | Senior | | 51 | Liv Cycling UK | 1 / 19 | 100% | 1h36:42.00 | 1h36:42.00 | 0% | - | - | |
| | 2015 Enduro World Series #8 | | Finale Ligure | Open | | 424 | LIV CYCLING | 15 / 40 | 64% | 46:59.21 | 40:50.38 | 15.1% | 35:42.00 | 31.6% | |
| | 2016 Midlands XC #3 | | Harlow Wood | Elite | | 272 | OMX Pro Team | 1 / 6 | 100% | 1h02:52.00 | 1h02:52.00 | 0% | - | - | |
| | 2016 British Cycling MTB XC #3 | | Dalby Forest | Elite | | 51 | Novus OMX Pro Team (OMX) | 2 / 24 | 96% | 1h24:41.00 | 1h20:29.00 | 5.2% | - | - | |
| | British Cycling - UK XC National Champs '16 | | Cathkin Braes Country Park | Senior | | 41 | Novus OMX Pro Team (OMX) | 1 / 17 | 100% | 1h42:23.00 | 1h42:23.00 | 0% | - | - | |
| | 2017 British Cycling MTB XC #4 | | Dalby Forest | Elite | | 51 | OMX Pro Team | 1 / 15 | 100% | 1h54:40.00 | 1h54:40.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '17 | | Cannock Chase | Elite | | 51 | OMX Pro Team | 1 / 14 | 100% | 1h41:51.00 | 1h41:51.00 | 0% | - | - | |
| | PMBA Enduro - HopeTech Women's Enduro | | Gisburn Forest | Elite | | 5 | OMX Pro Team | 1 / 5 | 100% | 6:05.36 | 6:05.36 | 0% | | 0% | |
| | 2018 British Cycling MTB XC #2 | | Dalby Forest | Elite | | 51 | Team KMC SUNTOUR | 1 / 16 | 100% | 1h27:09.00 | 1h27:09.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '18 | | Hadleigh Park | Senior Champs | | 41 | KMC-EKOI-SRSUNTOUR | 1 / 12 | 100% | 1h19:09.00 | 1h19:09.00 | 0% | - | - | |
| | 2019 HSBC UK | XC National Series #1 | | Sherwood Pines | Elite | | 36 | KMC - EKOI - ORBEA | 1 / 23 | 100% | 1h37:19.00 | 1h37:19.00 | 0% | - | - | |
| | 2019 HSBC UK | XC National Series #3 | | Cannock Chase | Elite | | 31 | KMC - EKOI - ORBEA | 1 / 21 | 100% | 1h29:23.00 | 1h29:23.00 | 0% | - | - | |
| | British Cycling - UK XC National Champs '19 | | Cannock Chase | Elite | | 41 | KMC - EKOI - ORBEA | 1 / 19 | 100% | 1h30:04.00 | 1h30:04.00 | 0% | - | - | |
| | International Olympic Committee - Ready Steady Tokyo - 2020 Olympic XCO Test Event | | Tokyo | Elite | | 12 | UK | 7 / 43 | 86% | 1h19:41.00 | 1h16:12.00 | 4.6% | - | - | |
| | 2021 HSBC UK | CX National Trophy Series #4 | | Herrington Country Park, Sunderland | Elite | | 30 | Scott racing | 6 / 26 | 80% | 51:16.10 | 49:31.20 | 3.5% | - | - | |
| | 2021 HSBC UK | CX National Trophy Series #5 | | Cyclopark | Elite | | 13 | Scott racing | 3 / 28 | 93% | 53:07.00 | 52:21.00 | 1.5% | - | - | |
| | British Cycling - UK CX National Champs '22 | | South of England Event Centre, Crawley | Elite | | 11 | Scott racing | 2 / 25 | 96% | 55:05.00 | 50:58.00 | 8.1% | - | - | |
| | 2022 British Cycling XC National Series - Schwalbe #2 | | Newcastleton | Elite | | 41 | Scott racing | 1 / 17 | 100% | 1h19:46.40 | 1h19:46.40 | 0% | - | - | |
| | British Cycling - UK XC National Champs '22 | | Kirroughtree Forest | Elite (XCST) | | 153 | Scott racing | 1 / 13 | 100% | 23:23.20 | 23:23.20 | 0% | - | - | |
| | British Cycling - UK XC National Champs '22 | | Kirroughtree Forest | Elite | | 43 | Scott racing | 1 / 17 | 100% | 1h28:30.00 | 1h28:30.00 | 0% | - | - | |
| | 2022 British Cycling CX National Trophy Series #4 | | Torbay Velopark | 18+ | | 3 | Scott racing | 1 / 24 | 100% | 52:28.00 | 31:29.00 | 66.7% | - | - | |
| | 2022 British Cycling CX National Trophy Series #5 | | Broughton Park | 18+ | | 3 | Scott racing | 2 / 21 | 95% | 52:07.50 | 24:49.20 | 110% | - | - | |
| | British Cycling - UK CX National Champs '23 | | Westmorland County Showground | 18+ (Female: 18+) | | 6 | Scott racing | 1 / 21 | 100% | 56:11.40 | 13:59.50 | 301.6% | - | - | |
| | British Cycling - UK XC National Champs '23 | | Tong | Elite (Short Track Junior/Senior women's race) | | 551 | LAPIERRE MAVIC UNITY | 2 / 11 | 90% | 19:07.50 | 18:29.10 | 3.5% | - | - | |
| | British Cycling - UK XC National Champs '23 | | Tong | Elite (Women's race) | | 31 | LAPIERRE MAVIC UNITY | 3 / 13 | 83% | 1h26:23.50 | 1h18:10.45 | 10.5% | - | - | |
| | 2017 UCI World Cup XC #1 | | Nové Mesto | Elite | 10005621435 & 1990 | 29 | OMX Pro Team | 10 / 79 | 88% | 1h31:43.00 | 1h28:45.00 | 3.3% | - | - | |
| | 2017 UCI World Cup XC #2 | | Bikepark Albstadt | Elite | 10005621435 & 1990 | 10 | OMX Pro Team | 20 / 79 | 76% | 1h44:15.00 | 1h38:25.00 | 5.9% | - | - | |
| | 2017 UCI World Cup XC #4 | | Lenzerheide | Elite | 10005621435 & 1990 | 16 | OMX Pro Team | 1 / 75 | 100% | 1h29:10.00 | 1h29:10.00 | 0% | - | - | |
| | 2017 UCI World Cup XC #3 | | Vallnord | Elite | 10005621435 & 1990 | 14 | OMX Pro Team | 17 / 62 | 74% | 1h31:44.00 | 1h26:04.00 | 6.6% | - | - | |
| | 2017 UCI World Cup XC #5 | | Mont-Sainte-Anne, QC | Elite | 10005621435 & 1990 | 6 | OMX Pro Team | 8 / 38 | 81% | 1h20:37.00 | 1h17:50.00 | 3.6% | - | - | |
| | 2017 UCI World Cup XC #6 | | Val di Sole | Elite | 10005621435 & 1990 | 6 | OMX Pro Team | 24 / 70 | 67% | 1h33:36.00 | 1h26:58.00 | 7.6% | - | - | |
| | UCI - XCO World Championships '17 | | Cairns, QLD | Elite | 10005621435 & 1990 | 12 | UK | 2 / 54 | 98% | 1h29:40.00 | 1h27:17.00 | 2.7% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #1 | | Stellenbosch, WC | Elite | 10005621435 & 1990 | 5 | KMC-EKOI-SRSUNTOUR | 12 / 55 | 80% | 1h36:09.00 | 1h33:14.00 | 3.1% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #3 | | Nové Mesto | Elite | 10005621435 & 1990 | ? | KMC-EKOI-SRSUNTOUR | 20 / 72 | 73% | 1h25:47.00 | 1h20:37.00 | 6.4% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #5 | | Vallnord | Elite | 10005621435 & 1990 | ? | | DNS / 59 | 0% | DNS | 1h22:58.00 | - | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #2 | | Bikepark Albstadt | Elite | 10005621435 & 1990 | 11 | KMC-EKOI-SRSUNTOUR | 8 / 77 | 91% | 1h40:47.00 | 1h36:17.00 | 4.7% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #4 | | Val di Sole | Elite | 10005621435 & 1990 | 13 | KMC-EKOI-SRSUNTOUR | 17 / 77 | 79% | 1h35:36.00 | 1h30:51.00 | 5.2% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #6 | | Mont-Sainte-Anne, QC | Elite | 10005621435 & 1990 | 15 | KMC-EKOI-SRSUNTOUR | 21 / 41 | 50% | 1h42:39.00 | 1h29:27.00 | 14.8% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XCC #5 | | Mont-Sainte-Anne, QC | Elite | 10005621435 & 1990 | 15 | KMC-EKOI-SRSUNTOUR | 25 / 38 | 35% | 21:00.00 | 19:32.00 | 7.5% | - | - | |
| | 2018 Mercedes-Benz UCI World Cup XC #7 | | La Bresse | Elite | 10005621435 & 1990 | 16 | KMC-EKOI-SRSUNTOUR | 35 / 63 | 45% | 1h43:09.00 | 1h33:03.00 | 10.9% | - | - | |
| | UCI - XCO World Championships '18 | | Lenzerheide | Elite | 10005621435 & 1990 | 14 | Great Britain | 20 / 67 | 71% | 1h42:48.00 | 1h34:55.00 | 8.3% | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #1 | | Bikepark Albstadt | Elite | 10005621435 & 1990 | 11 | KMC - EKOI - ORBEA | DNF / 77 | 0% | DNF | 1h26:03.00 | - | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #2 | | Nové Mesto | Elite | 10005621435 & 1990 | 14 | KMC - EKOI - ORBEA | 42 / 78 | 47% | 1h36:41.00 | 1h27:31.00 | 10.5% | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #5 | | Val di Sole | Elite | 10005621435 & 1990 | 18 | KMC - EKOI - ORBEA | 27 / 75 | 65% | 1h29:36.00 | 1h21:59.00 | 9.3% | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #4 | | Les Gets | Elite | 10005621435 & 1990 | 16 | KMC - EKOI - ORBEA | 36 / 73 | 51% | 1h34:12.00 | 1h26:29.00 | 8.9% | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #3 | | Vallnord | Elite | 10005621435 & 1990 | 20 | KMC - EKOI - ORBEA | 11 / 72 | 86% | 1h25:18.00 | 1h22:59.00 | 2.8% | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #6 | | Lenzerheide | Elite | 10005621435 & 1990 | 20 | KMC - EKOI - ORBEA | 13 / 69 | 82% | 1h26:07.00 | 1h21:09.00 | 6.1% | - | - | |
| | 2019 Mercedes-Benz UCI World Cup XC #7 | | Snowshoe, WV | Elite | 10005621435 & 1990 | 17 | KMC - EKOI - ORBEA | 3 / 59 | 97% | 1h18:18.00 | 1h17:51.00 | 0.6% | - | - | |
| | UCI - XCO World Championships '19 | | Mont-Sainte-Anne, QC | Elite | 10005621435 & 1990 | 20 | UK | 6 / 63 | 92% | 1h31:45.00 | 1h28:51.00 | 3.3% | - | - | |
| | 2020 Mercedes-Benz UCI World Cup XC #1 | | Nové Mesto | Elite | 10005621435 & 1990 | 44 | KMC-ORBEA | DNF / 73 | 0% | DNF | 1h22:06.00 | - | - | - | |
| | 2020 Mercedes-Benz UCI World Cup XCC #1 | | Nové Mesto | Elite | 10005621435 & 1990 | 19 | KMC-ORBEA | 31 / 40 | 23% | 21:53.00 | | 0% | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #2 | | Nové Mesto | Elite | 10005621435 & 1990 | 10 | | 15 / 101 | 86% | 1h30:47.00 | 1h25:13.00 | 6.5% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #9 | | Val di Sole | Elite | 10005621435 & 1990 | 51 | | 9 / 79 | 90% | 1h26:23.00 | 1h20:23.00 | 7.5% | - | - | |
| | UCI - XCO World Championships '22 | | Les Gets | Elite | 10005621435 & 1990 | 28 | UK | 10 / 78 | 88% | 1h27:20.00 | 1h22:08.00 | 6.3% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #1 | | Petropolis | Elite | 10005621435 & 1990 | 60 | | 26 / 56 | 55% | 1h40:05.00 | 1h29:41.00 | 11.6% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #2 | | Bikepark Albstadt | Elite | 10005621435 & 1990 | 67 | | 45 / 83 | 46% | 1h29:08.00 | 1h19:39.00 | 11.9% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #3 | | Nové Mesto | Elite | 10005621435 & 1990 | 71 | Great Britain | 32 / 86 | 64% | 1h29:00.00 | 1h21:17.00 | 9.5% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #4 | | Leogang | Elite | 10005621435 & 1990 | 67 | Great Britain | 37 / 56 | 35% | 1h27:31.00 | 1h15:42.00 | 15.6% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #5 | | Lenzerheide | Elite | 10005621435 & 1990 | 73 | | 12 / 76 | 85% | 1h20:51.00 | 1h17:31.00 | 4.3% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XC #6 | | Pal Arinsal | Elite | 10005621435 & 1990 | 64 | | 12 / 65 | 83% | 1h19:04.00 | 1h15:21.00 | 4.9% | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #1 | | Bikepark Albstadt | Elite | 10005621435 & 1990 | 3 | | 46 / 106 | 57% | 1h31:32.00 | 1h21:38.00 | 12.1% | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #4 | | Les Gets | Elite | 10005621435 & 1990 | 22 | | 14 / 75 | 82% | 1h33:02.00 | 1h27:23.00 | 6.5% | - | - | |
| | 2021 Mercedes-Benz UCI World Cup XC #5 | | Lenzerheide | Elite | 10005621435 & 1990 | 21 | | 19 / 74 | 75% | 1h24:30.00 | 1h19:16.00 | 6.6% | - | - | |
| | 2023 UCI World Cup XCO #1 | | Nové Mesto | Elite | 10005621435 & 1990 | 32 | LAPIERRE MAVIC UNITY | 30 / 93 | 68% | 1h28:00.00 | 1h23:01.00 | 6% | - | - | |
| | 2023 UCI World Cup XCO #2 | | Lenzerheide | Elite | 10005621435 & 1990 | 29 | LAPIERRE MAVIC UNITY | 32 / 85 | 63% | 1h30:49.00 | 1h24:41.00 | 7.2% | - | - | |
| | 2023 UCI World Cup XCO #3 | | Leogang | Elite | 10005621435 & 1990 | 30 | LAPIERRE MAVIC UNITY | 31 / 85 | 64% | 1h22:59.00 | 1h16:38.00 | 8.3% | - | - | |
| | UCI - XCO World Championships '23 | | Glentress | Elite | 10005621435 & 1990 | 35 | UK | 37 / 64 | 43% | 1h34:42.00 | 1h24:14.00 | 12.4% | - | - | |
| | 2023 UCI World Cup XCO #5 | | Pal Arinsal | Elite | 10005621435 & 1990 | 49 | LAPIERRE MAVIC UNITY | 40 / 75 | 47% | 1h24:49.00 | 1h14:09.00 | 14.4% | - | - | |
| | 2023 UCI World Cup XCO #6 | | Les Gets | Elite | 10005621435 & 1990 | 53 | LAPIERRE MAVIC UNITY | 40 / 71 | 44% | 1h25:14.00 | 1h14:51.00 | 13.9% | - | - | |
| | 2023 UCI World Cup XCO #7 | | Snowshoe, WV | Elite | 10005621435 & 1990 | 44 | LAPIERRE MAVIC UNITY | 24 / 58 | 60% | 1h27:29.00 | 1h21:56.00 | 6.8% | - | - | |
| | 2023 UCI World Cup XCC #7 | | Snowshoe, WV | Elite | 10005621435 & 1990 | 38 | LAPIERRE MAVIC UNITY | 34 / 40 | 15% | 21:59.00 | 19:54.00 | 10.5% | - | - | |
| | 2023 UCI World Cup XCC #1 | | Nové Mesto | Elite | 10005621435 & 1990 | 33 | LAPIERRE MAVIC UNITY | 20 / 40 | 51% | 19:20.00 | 19:02.00 | 1.6% | - | - | |
| | 2023 UCI World Cup XCC #2 | | Lenzerheide | Elite | 10005621435 & 1990 | 28 | LAPIERRE MAVIC UNITY | 14 / 41 | 68% | 21:06.00 | 20:34.00 | 2.6% | - | - | |
| | 2023 UCI World Cup XCC #3 | | Leogang | Elite | 10005621435 & 1990 | 29 | LAPIERRE MAVIC UNITY | 29 / 40 | 28% | 22:17.00 | 20:37.00 | 8.1% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XCC #1 | | Petropolis | Elite | 10005621435 & 1990 | 35 | | 30 / 40 | 26% | 21:50.00 | 19:55.00 | 9.6% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XCC #4 | | Leogang | Elite | 10005621435 & 1990 | 32 | Great Britain | 27 / 40 | 33% | -2LAP | 21:21.00 | - | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XCC #6 | | Pal Arinsal | Elite | 10005621435 & 1990 | 32 | | 14 / 40 | 67% | 21:45.00 | 20:50.00 | 4.4% | - | - | |
| | 2022 Mercedes-Benz UCI World Cup XCC #9 | | Val di Sole | Elite | 10005621435 & 1990 | 24 | | 16 / 40 | 62% | 21:48.00 | 20:56.00 | 4.1% | - | - | |
| | 2023 UCI World Cup XCC #8 | | Mont-Sainte-Anne, QC | Elite | 10005621435 & 1990 | 40 | LAPIERRE MAVIC UNITY | 16 / 40 | 62% | 20:21.00 | 19:40.00 | 3.5% | - | - | |
| | 2023 UCI World Cup XCO #8 | | Mont-Sainte-Anne, QC | Elite | 10005621435 & 1990 | 46 | LAPIERRE MAVIC UNITY | 28 / 57 | 52% | 1h39:14.00 | 1h28:09.00 | 12.6% | - | - | |
| | 2015 UCI World Cup XC #5 | | Windham, NY | Elite | GBR19900907 | 16 | | 13 / 54 | 77% | 1h38:26.00 | 1h33:25.00 | 5.4% | - | - | |
| | 2015 UCI World Cup XC #1 | | Nové Mesto | Elite | GBR19900907 | 31 | | 16 / 78 | 81% | 1h40:28.00 | 1h34:29.00 | 6.3% | - | - | |
| | 2015 UCI World Cup XC #2 | | Bikepark Albstadt | Elite | GBR19900907 | 16 | | 21 / 74 | 73% | 1h41:37.00 | 1h36:07.00 | 5.7% | - | - | |
| | 2015 UCI World Cup XC #3 | | Lenzerheide | Elite | GBR19900907 | 25 | | 10 / 59 | 84% | 1h36:34.00 | 1h32:15.00 | 4.7% | - | - | |
| | 2015 UCI World Cup XC #4 | | Mont-Sainte-Anne, QC | Elite | GBR19900907 | 15 | | 27 / 53 | 50% | 1h40:43.00 | 1h28:15.00 | 14.1% | - | - | |
| | 2015 UCI World Cup XC #6 | | Val di Sole | Elite | GBR19900907 | 14 | | 51 / 72 | 30% | - | 1h30:56.00 | - | - | - | |
| | 2014 UCI World Cup XC #3 | | Nové Mesto | Elite | GBR19900907 | 67 | Trek Factory Racing | DNS / 88 | 0% | DNS | 1h26:50.00 | - | - | - | |
| | 2014 UCI World Cup XC #5 | | Mont-Sainte-Anne, QC | Elite | GBR19900907 | 57 | Trek Factory Racing | 11 / 57 | 82% | 1h48:58.00 | 1h43:03.00 | 5.7% | - | - | |
| | 2014 UCI World Cup XC #6 | | Windham, NY | Elite | GBR19900907 | 47 | Trek Factory Racing | 13 / 55 | 78% | 1h29:09.00 | 1h25:47.00 | 3.9% | - | - | |
| | 2014 UCI World Cup XC #7 | | Méribel | Elite | GBR19900907 | 48 | Trek Factory Racing | 13 / 63 | 81% | 1h40:33.00 | 1h36:19.00 | 4.4% | - | - | |
| | 2013 UCI World Cup XC #2 | | Nové Mesto | Elite | GBR19900907 | 16 | Trek Factory Racing | 12 / 65 | 83% | 1h30:16.00 | 1h25:50.00 | 5.2% | - | - | |
| | 2013 UCI World Cup XC #3 | | Val di Sole | Elite | GBR19900907 | 14 | Trek Factory Racing | DNF / 59 | 0% | DNF | 1h36:37.00 | - | - | - | |
| | 2013 UCI World Cup XC #1 | | Bikepark Albstadt | Elite | GBR19900907 | 11 | Trek Factory Racing | 25 / 75 | 68% | 1h41:25.00 | 1h33:52.00 | 8% | - | - | |
| | UCI - XCO World Championships '14 | | Hafjell Bike Park | Elite | GBR19900907 | 47 | UK | 12 / 67 | 83% | 1h35:47.00 | 1h31:30.00 | 4.7% | - | - | |
| | UCI - XCO World Championships '15 | | Vallnord | Elite | GBR19900907 | 27 | UK | 21 / 57 | 64% | 2h03:20.00 | 1h52:44.00 | 9.4% | - | - | |