After two stages at the 2025 Totnes Vire, the GC battle is finely poised ahead of tomorrow’s decisive finale. Stage 1 saw Cameron McLaren (TAAP Kalas) edge out George Kimber (Spirit Racing Team) and Thomas Doig (Primera-TeamJobs) in a nail-biting sprint finish from a select breakaway. However, Kimber struck back emphatically on Stage 2’s punishing hill climb at Oddicombe Beach, posting the fastest time by four seconds and catapulting himself into the overall lead.
See the race preview here.

Report
Stage 1 | Colin Lewis Velopark Criterium
Stage 1 of the 2025 Totnes Vire provided a fiercely contested opening act, marked by aggressive racing and tactical intrigue. The circuit, unusually raced in reverse direction this year at Torbay, featured a headwind finish that contributed to heightened tension in the peloton from the off.
Early attacks set the tone, with Thomas Doig (Primera-TeamJobs), Cameron McLaren (TAAP Kalas), and Pedro Hutchinson (trainSharp Development Team) quickly forging clear. The trio swiftly established a twenty-second gap, holding it for around half an hour before the bunch drew nearer. Hutchinson, sensing the break would be caught, drifted back, leaving Doig and McLaren out front. Undeterred, they pressed on, re-establishing their advantage.
With the front pair resolute, a dynamic counterattack formed behind, featuring Travis Bramley (Plymouth Corinthian CC), Harvey Lawson (TAAP Kalas), Spencer Corder (Beeston CC), and Ben Goodwin (Stolen Goat Race Team). George Kimber (Spirit Racing Team) bridged decisively across. Despite initial doubts that a move involving Kimber could succeed, given his marked presence in the peloton, the five joined McLaren and Doig to make it seven up front.

This newly formed septet worked efficiently, maintaining a slender lead despite concerted chasing, notably from Primera-TeamJobs, who were focused on chasing Kimber, Doig enjoying a free ride at the back of the break.
In the finale, Lawson produced an outstanding late turn, setting the scene for a nail-biting sprint finish. Doig led it out, opting for the front position into the headwind, a decision that saw Kimber and McLaren surge past within the final metres. A tight photo finish ensued, ultimately awarding victory to McLaren, just ahead of Kimber and Doig.
Stephen Swindley (Royal Navy Cycling) managed a late effort from the bunch to secure eighth, while Thomas Bowden (Reflex Nopinz) and Piers Mahn (Halesowen A & CC) rounded out the top ten.

Stage 2 | Ken’s Oddicombe Hill Climb
Stage 2 of the 2025 Totnes Vire revived a challenging hill climb stage from the race’s history, taking riders from picturesque Oddicombe Beach up the lung-bursting, double-digit gradient ascent to Babbacombe Downs Road. This short, sharp test provided a decisive shake-up to the General Classification (GC) established after the morning’s stage.
After a tight sprint finish on Stage 1 saw Cameron McLaren (TAAP Kalas) in yellow, all eyes turned to the steep slopes of Stage 2, where raw climbing power would redefine the standings. Riders tackled the climb individually at one-minute intervals, offering a spectacle beside the iconic cliff railway as the Torbay coastline provided a dramatic backdrop.
George Kimber (Spirit Racing Team), who had narrowly missed out in the Stage 1 sprint, seized the moment to showcase his climbing prowess. Kimber stormed up the climb in an impressive 1 minute and 56 seconds—the only rider to break the two-minute barrier—vaulting himself into the overall lead with a cumulative GC time of 1:28:37.

Stage 1 winner McLaren found the steep gradients challenging, posting a time of 2:12 but maintaining second overall, now 11 seconds behind Kimber. Reflex Nopinz riders Samuel Nisbet and Ben Millar excelled, moving into third and fourth overall, with climb times of 2:00 and 2:01, respectively. Last year’s winner, Gabriel Dellar (Primera-TeamJobs), delivered a strong climb, moving into fifth on GC, just 27 seconds behind Kimber.
Notably, Jed Claxton (Wheal Velocity), a junior rider, punched above his category to record a joint ninth-fastest ascent alongside McLaren, marking himself out as one to watch.
Results
Stage 1
| Pos | Bib | First Name | Last Name | Team | Time | Bonus |
| 1 | 34 | Cameron | McLaren | TAAP Kalas | 01:26:51 | 00:00:15 |
| 2 | 32 | George | Kimber | Spirit Racing Team | 01:26:51 | 00:00:10 |
| 3 | 37 | Thomas | Doig | Primera-TeamJobs | 01:26:51 | 00:00:05 |
| 4 | 17 | Travis | Bramley | Plymouth Corinthian CC | 01:26:51 | |
| 5 | 2 | Spencer | Corder | Beeston Cycling Club | 01:26:51 | |
| 6 | 21 | Ben | Goodwin | Stolen Goat Race Team | 01:26:51 | |
| 7 | 22 | Harvey | Lawson | TAAP Kalas | 01:26:51 | |
| 8 | 12 | Stephen | Swindley | Royal Navy Cycling | 01:26:54 | |
| 9 | 19 | Thomas | Bowden | Reflex Nopinz | 01:27:01 | |
| 10 | 5 | Piers | Mahn | Halesowen A & CC | 01:27:01 | |
| 11 | 40 | Samuel | Nisbet | Reflex Nopinz | 01:27:01 | |
| 12 | 35 | Pedro | Hutchinson | trainSharp Development Team | 01:27:01 | |
| 13 | 1 | George | Safranauskas | 360cycling | 01:27:01 | |
| 14 | 31 | Ben | Meek | Reflex Nopinz | 01:27:01 | |
| 15 | 38 | Ben | Millar | Reflex Nopinz | 01:27:01 | |
| 16 | 33 | Alex | Murphy | Stolen Goat Race Team | 01:27:01 | |
| 17 | 42 | Thomas | Gardner | University of Exeter Cycling Club | 01:27:01 | |
| 18 | 3 | Elijah | Kwon | Edinburgh Bike Fitting RT | 01:27:01 | |
| 19 | 41 | Steve | Lampier | Primera-TeamJobs | 01:27:01 | |
| 20 | 39 | Daniel | Piercy | Stolen Goat Race Team | 01:27:01 | |
| 21 | 30 | Gabriel | Dellar | Primera-TeamJobs | 01:27:01 | |
| 22 | 9 | Sam | Beaton | Plymouth Corinthian CC | 01:27:05 | |
| 23 | 18 | Matty | Beecher | Primera-TeamJobs | 01:27:10 | |
| 24 | 48 | Harvey | Thomas | Reflex Nopinz | 01:27:11 | |
| 25 | 10 | Luke | Barfoot | Primera-TeamJobs | 01:27:11 | |
| 26 | 46 | George | Watch | Team PB Performance | 01:27:11 | |
| 27 | 8 | Henry | Cadwallader | Mid Devon CC | 01:27:11 | |
| 28 | 43 | Sebastien | Tyrie | Primera-TeamJobs | 01:27:43 | |
| 29 | 16 | Edward | Fraile-Whysall | Mid Devon CC | 01:28:01 | |
| 29 | 4 | Andrew | Whittemore | Exeter Wheelers | 01:28:51 | |
| 30 | 14 | Ben | Fish | TAAP Kalas | 01:28:51 | |
| 31 | 13 | Jack | Bartholomew | Stolen Goat Race Team | 01:32:51 | |
| 32 | 11 | Ed | Ayres | Reflex Nopinz | 01:32:51 | |
| 33 | 36 | James | Pearcy | Mid Devon CC | 01:32:51 | |
| 34 | 20 | Dexter | Mansel-Thomas | Schils – Doltcini Racing Team | 01:32:51 | |
| 35 | 7 | George | Whitlock | Mud Dock Racing | 01:32:51 | |
| 36 | 49 | Benjamin | Neal | Team Tor 2000 Kalas | 01:32:51 | |
| 37 | 6 | Nick | Makin | Hubo-Scott Cycling Team | 01:34:51 | |
| 38 | 45 | Joshua | Snow | Mid Devon CC | 01:34:51 | |
| 39 | 47 | Jed | Claxton | Wheal Velocity | 01:36:51 | |
| DNF | 29 | Robert | Hodge | Mid Devon CC | DNF | |
| DNS | 15 | James | Williams | Reflex Nopinz | DNS | |
| DNS | 44 | Joe | Reeves | Reflex Nopinz | DNS | |
| DNS | 28 | Ashley | Towey | Team Tor 2000 Kalas | DNS |
Stage 2
| Pos | Bib | First Name | Last Name | Team | Time |
| 1 | 32 | George | Kimber | Spirit Racing Team | 00:01:56 |
| 2 | 40 | Samuel | Nisbet | Reflex Nopinz | 00:02:00 |
| 3 | 38 | Ben | Millar | Reflex Nopinz | 00:02:01 |
| 4 | 30 | Gabriel | Dellar | Primera-TeamJobs | 00:02:03 |
| 5 | 1 | George | Safranauskas | 360cycling | 00:02:04 |
| 6 | 39 | Daniel | Piercy | Stolen Goat Race Team | 00:02:06 |
| 7 | 33 | Alex | Murphy | Stolen Goat Race Team | 00:02:09 |
| 8 | 42 | Thomas | Gardner | University of Exeter Cycling Club | 00:02:11 |
| 9 | 34 | Cameron | McLaren | TAAP Kalas | 00:02:12 |
| 10 | 47 | Jed | Claxton | Wheal Velocity | 00:02:12 |
| 11 | 48 | Harvey | Thomas | Reflex Nopinz | 00:02:12 |
| 12 | 11 | Ed | Ayres | Reflex Nopinz | 00:02:13 |
| 13 | 49 | Benjamin | Neal | Team Tor 2000 Kalas | 00:02:13 |
| 14 | 22 | Harvey | Lawson | TAAP Kalas | 00:02:14 |
| 15 | 8 | Henry | Cadwallader | Mid Devon CC | 00:02:16 |
| 16 | 9 | Sam | Beaton | Plymouth Corinthian CC | 00:02:16 |
| 17 | 12 | Stephen | Swindley | Royal Navy Cycling | 00:02:16 |
| 18 | 31 | Ben | Meek | Reflex Nopinz | 00:02:17 |
| 19 | 7 | George | Whitlock | Mud Dock Racing | 00:02:18 |
| 20 | 10 | Luke | Barfoot | Primera-TeamJobs | 00:02:19 |
| 21 | 14 | Ben | Fish | TAAP Kalas | 00:02:19 |
| 22 | 35 | Pedro | Hutchinson | trainSharp Development Team | 00:02:19 |
| 23 | 17 | Travis | Bramley | Plymouth Corinthian CC | 00:02:20 |
| 24 | 16 | Edward | Fraile-Whysall | Mid Devon CC | 00:02:21 |
| 25 | 46 | George | Watch | Team PB Performance | 00:02:21 |
| 26 | 18 | Matty | Beecher | Primera-TeamJobs | 00:02:22 |
| 27 | 5 | Piers | Mahn | Halesowen A & CC | 00:02:23 |
| 28 | 2 | Spencer | Corder | Beeston Cycling Club | 00:02:24 |
| 29 | 43 | Sebastien | Tyrie | Primera-TeamJobs | 00:02:25 |
| 30 | 37 | Thomas | Doig | Primera-TeamJobs | 00:02:26 |
| 31 | 41 | Steve | Lampier | Primera-TeamJobs | 00:02:27 |
| 32 | 13 | Jack | Bartholomew | Stolen Goat Race Team | 00:02:28 |
| 33 | 36 | James | Pearcy | Mid Devon CC | 00:02:28 |
| 34 | 3 | Elijah | Kwon | Edinburgh Bike Fitting RT | 00:02:30 |
| 35 | 21 | Ben | Goodwin | Stolen Goat Race Team | 00:02:32 |
| 36 | 19 | Thomas | Bowden | Reflex Nopinz | 00:02:33 |
| 37 | 4 | Andrew | Whittemore | Exeter Wheelers | 00:02:36 |
| 38 | 45 | Joshua | Snow | Mid Devon CC | 00:02:39 |
| 39 | 6 | Nick | Makin | Hubo-Scott Cycling Team | 00:03:03 |
General classification after stage 2
| Pos | Bib | First Name | Last Name | Team | GC Time |
| 1 | 32 | George | Kimber | Spirit Racing Team | 01:28:37 |
| 2 | 34 | Cameron | McLaren | TAAP Kalas | 01:28:48 |
| 3 | 40 | Samuel | Nisbet | Reflex Nopinz | 01:29:01 |
| 4 | 38 | Ben | Millar | Reflex Nopinz | 01:29:02 |
| 5 | 30 | Gabriel | Dellar | Primera-TeamJobs | 01:29:04 |
| 6 | 1 | George | Safranauskas | 360cycling | 01:29:05 |
| 7 | 22 | Harvey | Lawson | TAAP Kalas | 01:29:05 |
| 8 | 39 | Daniel | Piercy | Stolen Goat Race Team | 01:29:07 |
| 9 | 33 | Alex | Murphy | Stolen Goat Race Team | 01:29:10 |
| 10 | 12 | Stephen | Swindley | Royal Navy Cycling | 01:29:10 |
| 11 | 17 | Travis | Bramley | Plymouth Corinthian CC | 01:29:11 |
| 12 | 42 | Thomas | Gardner | University of Exeter Cycling Club | 01:29:12 |
| 13 | 37 | Thomas | Doig | Primera-TeamJobs | 01:29:12 |
| 14 | 2 | Spencer | Corder | Beeston Cycling Club | 01:29:15 |
| 15 | 31 | Ben | Meek | Reflex Nopinz | 01:29:18 |
| 16 | 35 | Pedro | Hutchinson | trainSharp Development Team | 01:29:20 |
| 17 | 9 | Sam | Beaton | Plymouth Corinthian CC | 01:29:21 |
| 18 | 21 | Ben | Goodwin | Stolen Goat Race Team | 01:29:23 |
| 19 | 48 | Harvey | Thomas | Reflex Nopinz | 01:29:23 |
| 20 | 5 | Piers | Mahn | Halesowen A & CC | 01:29:24 |
| 21 | 8 | Henry | Cadwallader | Mid Devon CC | 01:29:27 |
| 22 | 41 | Steve | Lampier | Primera-TeamJobs | 01:29:28 |
| 23 | 10 | Luke | Barfoot | Primera-TeamJobs | 01:29:30 |
| 24 | 3 | Elijah | Kwon | Edinburgh Bike Fitting RT | 01:29:31 |
| 25 | 46 | George | Watch | Team PB Performance | 01:29:32 |
| 26 | 18 | Matty | Beecher | Primera-TeamJobs | 01:29:32 |
| 27 | 19 | Thomas | Bowden | Reflex Nopinz | 01:29:34 |
| 28 | 43 | Sebastien | Tyrie | Primera-TeamJobs | 01:30:08 |
| 29 | 16 | Edward | Fraile-Whysall | Mid Devon CC | 01:30:22 |
| 30 | 14 | Ben | Fish | TAAP Kalas | 01:31:10 |
| 31 | 4 | Andrew | Whittemore | Exeter Wheelers | 01:31:27 |
| 32 | 11 | Ed | Ayres | Reflex Nopinz | 01:35:04 |
| 33 | 49 | Benjamin | Neal | Team Tor 2000 Kalas | 01:35:04 |
| 34 | 7 | George | Whitlock | Mud Dock Racing | 01:35:09 |
| 35 | 13 | Jack | Bartholomew | Stolen Goat Race Team | 01:35:19 |
| 36 | 36 | James | Pearcy | Mid Devon CC | 01:35:19 |
| 37 | 45 | Joshua | Snow | Mid Devon CC | 01:37:30 |
| 38 | 6 | Nick | Makin | Hubo-Scott Cycling Team | 01:37:54 |
| 39 | 47 | Jed | Claxton | Wheal Velocity | 01:39:03 |










