| Constituency |
Name |
Majority (vote) |
Majority (%) |
In 2024 election |
| Bath |
Wera Hobhouse |
11,218 |
23.3 |
Seat held |
| Bicester and Woodstock |
Calum Miller |
4,958 |
9.9 |
Won new seat |
| Brecon, Radnor and Cwm Tawe |
David Chadwick |
1,472 |
3.2 |
Defeated incumbent, Fay Jones (Conservative) |
| Caithness, Sutherland and Easter Ross |
Jamie Stone |
10,489 |
22.8 |
Seat held (Notional gain) |
| Carshalton and Wallington |
Bobby Dean |
7,905 |
16.9 |
Defeated incumbent, Elliot Colburn (Conservative) |
| Cheadle |
Tom Morrison |
12,235 |
24.1 |
Defeated incumbent, Mary Robinson (Conservative) |
| Chelmsford |
Marie Goldman |
4,753 |
9.4 |
Defeated incumbent, Vicky Ford (Conservative) |
| Cheltenham |
Max Wilkinson |
7,210 |
14.6 |
Defeated incumbent, Alex Chalk (Conservative) |
| Chesham and Amersham |
Sarah Green |
5,451 |
10.0 |
Held by-election gain |
| Chichester |
Jess Brown-Fuller |
12,172 |
23.4 |
Defeated incumbent, Gillian Keegan (Conservative) |
| Chippenham |
Sarah Gibson |
8,138 |
16.4 |
Previous incumbent, Michelle Donelan (Conservative) contested Melksham and Devizes |
| Didcot and Wantage |
Olly Glover |
6,233 |
11.4 |
Defeated incumbent, David Johnston (Conservative) |
| Dorking and Horley |
Chris Coghlan |
5,391 |
10.8 |
Won new seat |
| Eastbourne |
Josh Babarinde |
12,204 |
26.8 |
Defeated incumbent, Caroline Ansell (Conservative) |
| Eastleigh |
Liz Jarvis |
1,546 |
3.3 |
Previous incumbent, Paul Holmes (Conservative) stood in Hamble Valley |
| Edinburgh West |
Christine Jardine |
16,470 |
31.4 |
Seat held |
| Ely and East Cambridgeshire |
Charlotte Cane |
495 |
0.9 |
Defeated incumbent, Lucy Frazer (Conservative) |
| Epsom and Ewell |
Helen Maguire |
9,957 |
19.4 |
Previous incumbent, Chris Grayling (Conservative), did not stand |
| Esher and Walton |
Monica Harding |
12,003 |
22.3 |
Previous incumbent, Dominic Raab (Conservative), did not stand |
| Frome and East Somerset |
Anna Sabine |
5,415 |
11.6 |
Won new seat |
| Glastonbury and Somerton |
Sarah Dyke |
6,611 |
13.9 |
Held by-election gain |
| Guildford |
Zöe Franklin |
8,429 |
17.5 |
Defeated incumbent, Angela Richardson (Conservative) |
| Harpenden and Berkhamsted |
Victoria Collins |
10,708 |
19.7 |
Won new seat |
| Harrogate and Knaresborough |
Tom Gordon |
8,238 |
15.8 |
Defeated incumbent, Andrew Jones (Conservative) |
| Hazel Grove |
Lisa Smart |
6,500 |
14.1 |
Previous incumbent, William Wragg (Independent, previously Conservative) did not stand |
| Henley and Thame |
Freddie van Mierlo |
6,267 |
11.8 |
Previous incumbent John Howell (Conservative), did not stand |
| Honiton and Sidmouth |
Richard Foord |
6,700 |
13.2 |
Defeated incumbent, Simon Jupp (Conservative), held by-election gain. |
| Horsham |
John Milne |
2,517 |
4.5 |
Defeated incumbent, Jeremy Quin (Conservative) |
| Inverness, Skye and West Ross-shire |
Angus MacDonald |
2,160 |
4.5 |
Defeated incumbent, Drew Hendry (Scottish National Party) |
| Kingston and Surbiton |
Ed Davey |
17,235 |
34.0 |
Seat held |
| Lewes |
James MacCleary |
12,624 |
23.7 |
Defeated incumbent, Maria Caulfield (Conservative) |
| Maidenhead |
Joshua Reynolds |
2,963 |
5.9 |
Previous incumbent, Theresa May (Conservative), did not stand |
| Melksham and Devizes |
Brian Mathew |
2,401 |
4.7 |
Won new seat |
| Mid Dorset and North Poole |
Vikki Slade |
1,352 |
2.7 |
Defeated incumbent, Michael Tomlinson (Conservative) |
| Mid Dunbartonshire |
Susan Murray |
9,673 |
18.3 |
Defeated incumbent, Amy Callaghan (Scottish National Party) |
| Mid Sussex |
Alison Bennett |
6,662 |
12.5 |
Previous incumbent, Mims Davies (Conservative), stood in East Grinstead and Uckfield |
| Newbury |
Lee Dillon |
2,377 |
4.9 |
Defeated incumbent, Laura Farris (Conservative) |
| Newton Abbot |
Martin Wrigley |
2,246 |
4.7 |
Defeated incumbent, Anne Marie Morris (Conservative) |
| North Cornwall |
Ben Maguire |
9,957 |
19.4 |
Defeated incumbent, Scott Mann (Conservative) |
| North Devon |
Ian Roome |
6,744 |
13.1 |
Defeated incumbent, Selaine Saxby (Conservative) |
| North East Fife |
Wendy Chamberlain |
13,479 |
31.5 |
Seat held (Notional gain) |
| North East Hampshire |
Alex Brewer |
634 |
1.1 |
Defeated incumbent, Ranil Jayawardena (Conservative) |
| North Norfolk |
Steffan Aquarone |
2,585 |
5.5 |
Defeated incumbent, Duncan Baker (Conservative) |
| North Shropshire |
Helen Morgan |
15,311 |
30.9 |
Held by-election gain |
| Orkney and Shetland |
Alistair Carmichael |
7,807 |
37.7 |
Seat held |
| Oxford West and Abingdon |
Layla Moran |
14,894 |
32.4 |
Seat held |
| Richmond Park |
Sarah Olney |
17,155 |
32.9 |
Seat held |
| South Cambridgeshire |
Pippa Heylings |
10,641 |
19.4 |
Previous incumbent, Anthony Browne (Conservative), did not stand |
| South Cotswolds |
Roz Savage |
4,973 |
9.5 |
Defeated incumbent, James Gray (Conservative) |
| South Devon |
Caroline Voaden |
7,127 |
14.5 |
Defeated incumbent, Anthony Mangnall (Conservative) |
| St Albans |
Daisy Cooper |
19,834 |
38.4 |
Seat held |
| St Ives |
Andrew George |
13,786 |
28.7 |
Defeated incumbent, Derek Thomas (Conservative) |
| St Neots and Mid Cambridgeshire |
Ian Sollom |
4,621 |
8.7 |
Won new seat |
| Stratford-on-Avon |
Manuela Perteghella |
7,122 |
13.4 |
Previous incumbent, Nadhim Zahawi (Conservative), did not stand |
| Surrey Heath |
Al Pinkerton |
5,640 |
11.8 |
Previous incumbent, Michael Gove (Conservative), did not stand |
| Sutton and Cheam |
Luke Taylor |
3,801 |
8.0 |
Previous incumbent, Paul Scully (Conservative), did not stand |
| Taunton and Wellington |
Gideon Amos |
11,939 |
23.7 |
Defeated incumbent, Rebecca Pow (Conservative) |
| Tewkesbury |
Cameron Thomas |
6,262 |
12.9 |
Defeated incumbent, Laurence Robertson (Conservative) |
| Thornbury and Yate |
Claire Young |
3,014 |
5.6 |
Defeated incumbent, Luke Hall (Conservative) |
| Tiverton and Minehead |
Rachel Gilmour |
3,507 |
7.4 |
Won new seat |
| Torbay |
Steve Darling |
5,349 |
11.6 |
Defeated incumbent, Kevin Foster (Conservative) |
| Tunbridge Wells |
Mike Martin |
8,687 |
16.0 |
Previous incumbent, Greg Clark (Conservative), did not stand |
| Twickenham |
Munira Wilson |
21,457 |
40.0 |
Seat held |
| Wells and Mendip Hills |
Tessa Munt |
11,121 |
22.1 |
Won new seat |
| West Dorset |
Edward Morello |
7,789 |
14.8 |
Defeated incumbent, Chris Loder (Conservative) |
| Westmorland and Lonsdale |
Tim Farron |
21,472 |
43.3 |
Seat held |
| Wimbledon |
Paul Kohler |
12,610 |
22.9 |
Previous incumbent, Stephen Hammond (Conservative), did not stand |
| Winchester |
Danny Chambers |
13,821 |
24.2 |
Previous incumbent, Steve Brine (Conservative), did not stand |
| Witney |
Charlie Maynard |
4,339 |
8.6 |
Defeated incumbent, Robert Courts (Conservative) |
| Woking |
Will Forster |
11,246 |
23.4 |
Defeated incumbent, Jonathan Lord (Conservative) |
| Wokingham |
Clive Jones |
8,345 |
15.5 |
Previous incumbent, John Redwood (Conservative), did not stand |
| Yeovil |
Adam Dance |
12,268 |
25.1 |
Defeated incumbent, Marcus Fysh (Conservative) |