Constituency
Affiliation in notional[ e] 2019 election[ 14]
Member returned in 2024
Notes
Name & Picture
Affiliation
Aberafan Maesteg
Labour
Stephen Kinnock
Labour
MP for predecessor seat of Aberavon .
Aberdeen North
Scottish National
Kirsty Blackman
Scottish National
Aberdeen South
Scottish National
Stephen Flynn
Scottish National
Aberdeenshire North and Moray East
Conservative
Seamus Logan
Scottish National
Defeated Douglas Ross , previously Conservative MP for Moray . David Duguid , incumbent for the predecessor seat of Banff and Buchan , did not stand
Airdrie and Shotts
Scottish National
Kenneth Stevenson
Labour
Defeated incumbent Anum Qaisar
Aldershot
Conservative
Alex Baker
Labour
Defeated incumbent Leo Docherty
Aldridge-Brownhills
Conservative
Wendy Morton
Conservative
Alloa and Grangemouth
Scottish National
Brian Leishman
Labour
Defeated John Nicolson , incumbent MP for the predecessor seat of Ochil and South Perthshire
Altrincham and Sale West
Conservative
Connor Rand
Labour
Previous incumbent Graham Brady did not stand
Alyn and Deeside
Labour
Mark Tami
Labour
Amber Valley
Conservative
Linsey Farnsworth
Labour
Defeated incumbent Nigel Mills
Angus and Perthshire Glens
Scottish National
Dave Doogan
Scottish National
MP for the predecessor seat of Angus .
Arbroath and Broughty Ferry
Scottish National
Stephen Gethins
Scottish National Party
Previous incumbent MP Stewart Hosie did not stand. Gethins was previously MP for North East Fife 2015–2019.
Argyll, Bute and South Lochaber
Scottish National
Brendan O'Hara
Scottish National Party
MP for predecessor seat of Argyll and Bute
Arundel and South Downs
Conservative
Andrew Griffith
Conservative
Ashfield
Conservative
Lee Anderson
Reform UK
Anderson retained seat. He was elected as a Conservative MP in 2019 and defected to Reform UK in March 2024, following his suspension from the Conservative Party .
Ashford
Conservative
Sojan Joseph
Labour
Defeated incumbent Damian Green
Ashton-under-Lyne
Labour
Angela Rayner
Labour
Aylesbury
Conservative
Laura Kyrke-Smith
Labour
Defeated incumbent Rob Butler
Ayr, Carrick and Cumnock
Scottish National
Elaine Stewart
Labour
Defeated incumbent Allan Dorans
Banbury
Conservative
Sean Woodcock
Labour
Defeated incumbent Victoria Prentis
Bangor Aberconwy
Conservative
Claire Hughes
Labour
Defeated Robin Millar , incumbent for the predecessor seat of Aberconwy
Barking
Labour
Nesil Caliskan
Labour
Previous incumbent Margaret Hodge did not stand
Barnsley North
Labour
Dan Jarvis
Labour
Barnsley South
Labour
Stephanie Peacock
Labour
Barrow and Furness
Conservative
Michelle Scrogham
Labour
Defeated incumbent Simon Fell
Basildon and Billericay
Conservative
Richard Holden
Conservative
Formerly MP for North West Durham . Previous incumbent John Baron did not stand
Basingstoke
Conservative
Luke Murphy
Labour
Defeated incumbent Maria Miller
Bassetlaw
Conservative
Jo White
Labour
Defeated incumbent Brendan Clarke-Smith
Bath
Liberal Democrats
Wera Hobhouse
Liberal Democrats
Bathgate and Linlithgow
Scottish National
Kirsteen Sullivan
Labour Co-op
Gain. Defeated Martyn Day , incumbent MP for predecessor seat of Linlithgow and East Falkirk
Battersea
Labour
Marsha de Cordova
Labour
Beaconsfield
Conservative
Joy Morrissey
Conservative
Beckenham and Penge
Labour
Liam Conlon
Labour
Notional hold following boundary changes. Bob Stewart , Conservative incumbent for the predecessor seat of Beckenham , did not stand.
Bedford
Labour
Mohammad Yasin
Labour
Belfast East
Democratic Unionist
Gavin Robinson
Democratic Unionist
Belfast North
Sinn Féin
John Finucane
Sinn Féin
Belfast South and Mid Down
Social Democratic and Labour
Claire Hanna
Social Democratic and Labour
MP for predecessor seat of Belfast South .
Belfast West
Sinn Féin
Paul Maskey
Sinn Féin
Bermondsey and Old Southwark
Labour
Neil Coyle
Labour
Berwickshire, Roxburgh and Selkirk
Conservative
John Lamont
Conservative
Bethnal Green and Stepney
Labour
Rushanara Ali
Labour
MP for predecessor seat of Bethnal Green and Bow
Beverley and Holderness
Conservative
Graham Stuart
Conservative
Bexhill and Battle
Conservative
Kieran Mullan
Conservative
Formerly MP for Crewe and Nantwich . Previous incumbent Huw Merriman did not stand.
Bexleyheath and Crayford
Conservative
Daniel Francis
Labour
Previous incumbent David Evennett did not stand
Bicester and Woodstock
Conservative
Calum Miller
Liberal Democrats
New seat
Birkenhead
Labour
Alison McGovern
Labour
Formerly MP for abolished seat of Wirral South . Previous incumbent Mick Whitley did not stand.
Birmingham Edgbaston
Labour
Preet Gill
Labour Co-op
Birmingham Erdington
Labour
Paulette Hamilton
Labour
Elected at 2022 by-election
Birmingham Hall Green and Moseley
Labour
Tahir Ali
Labour
MP for predecessor seat of Birmingham Hall Green
Birmingham Hodge Hill and Solihull North
Labour
Liam Byrne
Labour
MP for predecessor seat of Birmingham Hodge Hill
Birmingham Ladywood
Labour
Shabana Mahmood
Labour
Birmingham Northfield
Conservative
Laurence Turner
Labour
Defeated incumbent Gary Sambrook
Birmingham Perry Barr
Labour
Ayoub Khan
Independent
Defeated incumbent Khalid Mahmood
Birmingham Selly Oak
Labour
Alistair Carns
Labour
Previous incumbent Steve McCabe did not stand
Birmingham Yardley
Labour
Jess Phillips
Labour
Bishop Auckland
Conservative
Sam Rushworth
Labour
Previous incumbent Dehenna Davison did not stand
Blackburn
Labour
Adnan Hussain
Independent
Defeated incumbent Kate Hollern
Blackley and Middleton South
Labour
Graham Stringer
Labour
MP for predecessor seat of Blackley and Broughton
Blackpool North and Fleetwood
Conservative
Lorraine Beavers
Labour
Gain. Defeated Paul Maynard , incumbent for predecessor seat of Blackpool North and Cleveleys
Blackpool South
Conservative
Chris Webb
Labour
Won by Labour at 2024 by-election
Blaenau Gwent and Rhymney
Labour
Nick Smith
Labour
Blaydon and Consett
Labour
Liz Twist
Labour
Previously MP for the abolished seat of Blaydon . Incumbent of the predecessor seat of North West Durham , Conservative MP Richard Holden , stood successfully in Basildon and Billericay .
Blyth and Ashington
Labour
Ian Lavery
Labour
MP for predecessor seat of Wansbeck .
Bognor Regis and Littlehampton
Conservative
Alison Griffiths
Conservative
Previous incumbent Nick Gibb did not stand
Bolsover
Conservative
Natalie Fleet
Labour
Defeated incumbent Mark Fletcher
Bolton North East
Conservative
Kirith Entwistle
Labour
Previous incumbent MP Mark Logan did not stand
Bolton South and Walkden
Labour
Yasmin Qureshi
Labour
MP for predecessor seat of Bolton South East
Bolton West
Conservative
Phil Brickell
Labour
Defeated incumbent Chris Green
Bootle
Labour
Peter Dowd
Labour
Boston and Skegness
Conservative
Richard Tice
Reform UK
Defeated incumbent Matt Warman
Bournemouth East
Conservative
Tom Hayes
Labour
Defeated incumbent Tobias Ellwood
Bournemouth West
Conservative
Jessica Toale
Labour
Defeated incumbent Conor Burns
Bracknell
Conservative
Peter Swallow
Labour
Defeated incumbent James Sunderland
Bradford East
Labour
Imran Hussain
Labour
Bradford South
Labour
Judith Cummins
Labour
Bradford West
Labour
Naz Shah
Labour
Braintree
Conservative
James Cleverly
Conservative
Brecon, Radnor and Cwm Tawe
Conservative
David Chadwick
Liberal Democrats
Defeated Fay Jones , incumbent MP for predecessor seat of Brecon and Radnorshire
Brent East
Labour
Dawn Butler
Labour
MP for predecessor seat of Brent Central
Brent West
Labour
Barry Gardiner
Labour
MP for predecessor seat of Brent North
Brentford and Isleworth
Labour
Ruth Cadbury
Labour
Brentwood and Ongar
Conservative
Alex Burghart
Conservative
Bridgend
Conservative
Chris Elmore
Labour
Formerly MP for the abolished seat of Ogmore . Previous incumbent Jamie Wallis did not stand.
Bridgwater
Conservative
Ashley Fox
Conservative
Ian Liddell-Grainger , incumbent MP for the predecessor seat of Bridgwater and West Somerset , was defeated in Tiverton and Minehead
Bridlington and The Wolds
Conservative
Charlie Dewhirst
Conservative
Greg Knight , incumbent MP for the predecessor seat of East Yorkshire , did not stand
Brigg and Immingham
Conservative
Martin Vickers
Conservative
MP for the predecessor seat of Cleethorpes .
Brighton Kemptown and Peacehaven
Labour
Chris Ward
Labour
Previous incumbent Lloyd Russell-Moyle did not stand
Brighton Pavilion
Green
Siân Berry
Green
Previous incumbent Caroline Lucas did not stand
Bristol Central
Labour
Carla Denyer
Green
Defeated Thangam Debbonaire , incumbent MP for the predecessor seat of Bristol West
Bristol East
Labour
Kerry McCarthy
Labour
Bristol North East
Labour
Damien Egan
Labour
New seat. Elected for the abolished seat of Kingswood at 2024 by-election
Bristol North West
Labour
Darren Jones
Labour
Bristol South
Labour
Karin Smyth
Labour
Broadland and Fakenham
Conservative
Jerome Mayhew
Conservative
Bromley and Biggin Hill
Conservative
Peter Fortune
Conservative
Bob Neill , incumbent MP for the predecessor seat of Bromley and Chislehurst , did not stand
Bromsgrove
Conservative
Bradley Thomas
Conservative
Previous incumbent Sajid Javid did not stand
Broxbourne
Conservative
Lewis Cocking
Conservative
Previous incumbent Charles Walker did not stand
Broxtowe
Conservative
Juliet Campbell
Labour
Defeated incumbent Darren Henry
Buckingham and Bletchley
Conservative
Callum Anderson
Labour
Defeated contesting Conservative MP Iain Stewart (previously MP for Milton Keynes South ). Incumbent MP for the predecessor seat of Buckingham , Greg Smith , stood successfully in the new seat of Mid Buckinghamshire .
Burnley
Conservative
Oliver Ryan
Labour Co-op
Defeated incumbent Antony Higginbotham
Burton and Uttoxeter
Conservative
Jacob Collier
Labour
Defeated incumbent Kate Kniveton
Bury North
Conservative
James Frith
Labour
Defeated incumbent James Daly
Bury South
Conservative
Christian Wakeford
Labour
Wakeford retained the seat. He was elected as a Conservative MP in 2019 and defected to Labour in 2022.
Bury St Edmunds and Stowmarket
Conservative
Peter Prinsley
Labour
Jo Churchill , incumbent MP for the predecessor seat of Bury St Edmunds , did not stand
Caerfyrddin
Conservative
Ann Davies
Plaid Cymru
Defeated Simon Hart , incumbent for Carmarthen West and South Pembrokeshire
Caerphilly
Labour
Chris Evans
Labour Co-op
Previously MP for Islwyn . Previous incumbent, Wayne David , did not stand.
Caithness, Sutherland and Easter Ross
Scottish National
Jamie Stone
Liberal Democrats
Seat held (Notional gain following boundary changes)
Calder Valley
Conservative
Josh Fenton-Glynn
Labour
Previous incumbent, Craig Whittaker , did not stand
Camborne and Redruth
Conservative
Perran Moon
Labour
Previous incumbent, George Eustice , did not stand
Cambridge
Labour
Daniel Zeichner
Labour
Cannock Chase
Conservative
Josh Newbury
Labour
Defeated incumbent Amanda Milling
Canterbury
Labour
Rosie Duffield
Labour
Cardiff East
Labour
Jo Stevens
Labour
MP for predecessor seat of Cardiff Central
Cardiff North
Labour
Anna McMorrin
Labour
Cardiff South and Penarth
Labour
Stephen Doughty
Labour Co-op
Cardiff West
Labour
Alex Barros-Curtis
Labour
Previous incumbent, Kevin Brennan , did not stand
Carlisle
Conservative
Julie Minns
Labour
Defeated incumbent John Stevenson
Carshalton and Wallington
Conservative
Bobby Dean
Liberal Democrats
Defeated incumbent Elliot Colburn
Castle Point
Conservative
Rebecca Harris
Conservative
Central Ayrshire
Scottish National
Alan Gemmell
Labour
Previous incumbent, Philippa Whitford , did not stand
Central Devon
Conservative
Mel Stride
Conservative
Central Suffolk and North Ipswich
Conservative
Patrick Spencer
Conservative
Previous incumbent, Dan Poulter , who defected to Labour in April 2024, did not stand
Ceredigion Preseli
Plaid Cymru
Ben Lake
Plaid Cymru
MP for predecessor seat of Ceredigion
Chatham and Aylesford
Conservative
Tris Osborne
Labour
Previous incumbent, Tracey Crouch , did not stand
Cheadle
Conservative
Tom Morrison
Liberal Democrats
Defeated incumbent Mary Robinson
Chelmsford
Conservative
Marie Goldman
Liberal Democrats
Defeated incumbent Vicky Ford
Chelsea and Fulham
Conservative
Ben Coleman
Labour
Defeated incumbent Greg Hands
Cheltenham
Conservative
Max Wilkinson
Liberal Democrats
Defeated incumbent Alex Chalk
Chesham and Amersham
Conservative
Sarah Green
Liberal Democrats
Won by Liberal Democrats at 2021 by-election
Chester North and Neston
Labour
Samantha Dixon
Labour
MP for predecessor seat of City of Chester
Chester South and Eddisbury
Conservative
Aphra Brandreth
Conservative
Edward Timpson , previous incumbent for the predecessor seat of Eddisbury , did not stand
Chesterfield
Labour
Toby Perkins
Labour
Chichester
Conservative
Jess Brown-Fuller
Liberal Democrats
Defeated incumbent Gillian Keegan
Chingford and Woodford Green
Conservative
Iain Duncan Smith
Conservative
Chippenham
Conservative
Sarah Gibson
Liberal Democrats
Previous incumbent, Michelle Donelan , unsuccessfully contested the new seat of Melksham and Devizes
Chipping Barnet
Conservative
Dan Tomlinson
Labour
Defeated incumbent Theresa Villiers
Chorley
Speaker
Lindsay Hoyle
Speaker
Seat held
Christchurch
Conservative
Christopher Chope
Conservative
Cities of London and Westminster
Conservative
Rachel Blake
Labour Co-op
Previous incumbent, Nickie Aiken , did not stand
City of Durham
Labour
Mary Foy
Labour
Clacton
Conservative
Nigel Farage
Reform UK
Defeated incumbent Giles Watling
Clapham and Brixton Hill
Labour
Bell Ribeiro-Addy
Labour
MP for predecessor seat of Streatham
Clwyd East
Conservative
Becky Gittins
Labour
Defeated Rob Roberts , incumbent for the predecessor seat of Delyn who stood as an independent, having been elected as a Conservative in 2019. Also defeated James Davies , previously MP for the abolished constituency of Vale of Clwyd .
Clwyd North
Conservative
Gill German
Labour
Previous incumbent for the predecessor seat of Clwyd West , David Jones , did not stand
Coatbridge and Bellshill
Scottish National
Frank McNally
Labour
Defeated incumbent Steven Bonnar
Colchester
Conservative
Pam Cox
Labour
Previous incumbent, Will Quince , did not stand
Colne Valley
Conservative
Paul Davies
Labour
Defeated incumbent, Jason McCartney
Congleton
Conservative
Sarah Russell
Labour
Defeated incumbent, Fiona Bruce
Corby and East Northamptonshire
Conservative
Lee Barron
Labour
Defeated incumbent, Tom Pursglove
Coventry East
Labour
Mary Creagh
Labour
Previous incumbent, Colleen Fletcher , did not stand
Coventry North West
Labour
Taiwo Owatemi
Labour
Coventry South
Labour
Zarah Sultana
Labour
Cowdenbeath and Kirkcaldy
Scottish National
Melanie Ward
Labour
Defeated incumbent, Neale Hanvey
Cramlington and Killingworth
Labour
Emma Foody
Labour Co-op
Defeated Ian Levy , incumbent Conservative MP for the predecessor seat of Blyth Valley (notional hold following boundary changes)
Crawley
Conservative
Peter Lamb
Labour
Previous incumbent, Henry Smith , did not stand
Crewe and Nantwich
Conservative
Connor Naismith
Labour
Previous incumbent, Kieran Mullan , stood successfully in Bexhill and Battle
Croydon East
Labour
Natasha Irons
Labour
Sarah Jones , previous incumbent in the predecessor seat of Croydon Central , stood successfully in Croydon West .
Croydon South
Conservative
Chris Philp
Conservative
Croydon West
Labour
Sarah Jones
Labour
Previously MP for Croydon Central . Incumbent for the predecessor seat of Croydon North , Steve Reed , stood successfully in the new seat of Streatham and Croydon North .
Cumbernauld and Kirkintilloch
Scottish National
Katrina Murray
Labour
Defeated incumbent, Stuart McDonald
Dagenham and Rainham
Labour
Margaret Mullane
Labour
Previous incumbent, Jon Cruddas , did not stand
Darlington
Conservative
Lola McEvoy
Labour
Defeated incumbent, Peter Gibson
Dartford
Conservative
Jim Dickson
Labour
Defeated incumbent, Gareth Johnson
Daventry
Conservative
Stuart Andrew
Conservative
Moved constituencies – formerly MP for Pudsey . Previous incumbent, Chris Heaton-Harris , did not stand
Derby North
Conservative
Catherine Atkinson
Labour
Defeated incumbent, Amanda Solloway
Derby South
Labour
Baggy Shanker
Labour Co-op
Previous incumbent, Margaret Beckett , did not stand
Derbyshire Dales
Conservative
John Whitby
Labour
Defeated incumbent, Sarah Dines
Dewsbury and Batley
Labour
Iqbal Mohamed
Independent
Notional Labour seat in 2019 following boundary changes. Mark Eastwood , Conservative incumbent for the predecessor constituency of Dewsbury , stood unsuccessfully in Ossett and Denby Dale .
Didcot and Wantage
Conservative
Olly Glover
Liberal Democrats
Defeated incumbent, David Johnston
Doncaster Central
Labour
Sally Jameson
Labour Co-op
Previous incumbent, Rosie Winterton , did not stand
Doncaster East and the Isle of Axholme
Conservative
Lee Pitcher
Labour
Defeated Nick Fletcher , incumbent for the predecessor seat of Don Valley
Doncaster North
Labour
Ed Miliband
Labour
Dorking and Horley
Conservative
Chris Coghlan
Liberal Democrats
Paul Beresford , MP for the predecessor seat of Mole Valley , did not stand.
Dover and Deal
Conservative
Mike Tapp
Labour
Previous incumbent, Natalie Elphicke , who defected to Labour in May 2024, stood down
Droitwich and Evesham
Conservative
Nigel Huddleston
Conservative
MP for the predecessor seat of Mid Worcestershire
Dudley
Conservative
Sonia Kumar
Labour
Defeated Marco Longhi , incumbent for the predecessor seat of Dudley North
Dulwich and West Norwood
Labour
Helen Hayes
Labour
Dumfries and Galloway
Conservative
John Cooper
Conservative
Previous incumbent, Alister Jack , did not stand
Dumfriesshire, Clydesdale and Tweeddale
Conservative
David Mundell
Conservative
Dundee Central
Scottish National
Chris Law
Scottish National
MP for the predecessor seat of Dundee West
Dunfermline and Dollar
Scottish National
Graeme Downie
Labour
Douglas Chapman , MP for the predecessor seat of Dunfermline and West Fife , did not stand
Dunstable and Leighton Buzzard
Conservative
Alex Mayer
Labour
Defeated Andrew Selous , incumbent for the predecessor seat of South West Bedfordshire
Dwyfor Meirionnydd
Plaid Cymru
Liz Saville Roberts
Plaid Cymru
Ealing Central and Acton
Labour
Rupa Huq
Labour
Ealing North
Labour
James Murray
Labour Co-op
Ealing Southall
Labour
Deirdre Costigan
Labour
Previous incumbent, Virendra Sharma , did not stand
Earley and Woodley
Conservative
Yuan Yang
Labour
New seat
Easington
Labour
Grahame Morris
Labour
East Antrim
Democratic Unionist
Sammy Wilson
Democratic Unionist
East Grinstead and Uckfield
Conservative
Mims Davies
Conservative
New seat. Davies was previously MP for Mid Sussex .
East Ham
Labour
Stephen Timms
Labour
East Hampshire
Conservative
Damian Hinds
Conservative
East Kilbride and Strathaven
Scottish National
Joani Reid
Labour
Previous incumbent for the predecessor seat of East Kilbride, Strathaven and Lesmahagow , Lisa Cameron , who defected to the Conservative Party in 2023, did not stand
East Londonderry
Democratic Unionist
Gregory Campbell
Democratic Unionist
East Renfrewshire
Scottish National
Blair McDougall
Labour
Defeated incumbent, Kirsten Oswald
East Surrey
Conservative
Claire Coutinho
Conservative
East Thanet
Conservative
Polly Billington
Labour
Craig Mackinlay , incumbent for the predecessor seat of South Thanet , did not stand
East Wiltshire
Conservative
Danny Kruger
Conservative
MP for the predecessor constituency of Devizes
East Worthing and Shoreham
Conservative
Tom Rutland
Labour
Previous incumbent, Tim Loughton , did not stand
Eastbourne
Conservative
Josh Babarinde
Liberal Democrats
Defeated incumbent, Caroline Ansell
Eastleigh
Conservative
Liz Jarvis
Liberal Democrats
Previous incumbent, Paul Holmes stood in Hamble Valley
Edinburgh East and Musselburgh
Scottish National
Chris Murray
Labour
Defeated Tommy Sheppard , incumbent for the predecessor seat of Edinburgh East
Edinburgh North and Leith
Scottish National
Tracy Gilbert
Labour
Defeated incumbent, Deidre Brock
Edinburgh South
Labour
Ian Murray
Labour
Edinburgh South West
Scottish National
Scott Arthur
Labour
Defeated incumbent, Joanna Cherry
Edinburgh West
Liberal Democrats
Christine Jardine
Liberal Democrats
Edmonton and Winchmore Hill
Labour
Kate Osamor
Labour Co-op
MP for the predecessor seat of Edmonton
Ellesmere Port and Bromborough
Labour
Justin Madders
Labour
MP for the predecessor seat of Ellesmere Port and Neston
Eltham and Chislehurst
Conservative
Clive Efford
Labour
MP for the predecessor seat of Eltham . Notional gain following boundary changes.
Ely and East Cambridgeshire
Conservative
Charlotte Cane
Liberal Democrats
Defeated Lucy Frazer , incumbent for the predecessor seat of South East Cambridgeshire
Enfield North
Labour
Feryal Clark
Labour
Epping Forest
Conservative
Neil Hudson
Conservative
Previous incumbent, Eleanor Laing , did not stand
Epsom and Ewell
Conservative
Helen Maguire
Liberal Democrats
Previous incumbent, Chris Grayling , did not stand
Erewash
Conservative
Adam Thompson
Labour
Defeated incumbent, Maggie Throup
Erith and Thamesmead
Labour
Abena Oppong-Asare
Labour
Seat held
Esher and Walton
Conservative
Monica Harding
Liberal Democrats
Previous incumbent, Dominic Raab , did not stand
Exeter
Labour
Steve Race
Labour
Previous incumbent, Ben Bradshaw , did not stand
Exmouth and Exeter East
Conservative
David Reed
Conservative
Simon Jupp, MP for the predecessor seat of East Devon , stood unsuccessfully in Honiton and Sidmouth
Falkirk
Scottish National
Euan Stainbank
Labour
Previous incumbent, John McNally , did not stand
Fareham and Waterlooville
Conservative
Suella Braverman
Conservative
MP for the predecessor seat of Fareham
Farnham and Bordon
Conservative
Greg Stafford
Conservative
Jeremy Hunt , MP for the predecessor seat of South West Surrey , stood successfully in the new seat of Godalming and Ash .
Faversham and Mid Kent
Conservative
Helen Whately
Conservative
Feltham and Heston
Labour
Seema Malhotra
Labour Co-op
Fermanagh and South Tyrone
Sinn Féin
Pat Cullen
Sinn Féin
Previous incumbent, Michelle Gildernew , did not stand
Filton and Bradley Stoke
Conservative
Claire Hazelgrove
Labour
Defeated incumbent, Jack Lopresti
Finchley and Golders Green
Conservative
Sarah Sackman
Labour
Previous incumbent, Mike Freer , did not stand
Folkestone and Hythe
Conservative
Tony Vaughan
Labour
Defeated incumbent, Damian Collins
Forest of Dean
Conservative
Matt Bishop
Labour
Defeated incumbent, Mark Harper
Foyle
Social Democratic and Labour
Colum Eastwood
Social Democratic and Labour
Frome and East Somerset
Conservative
Anna Sabine
Liberal Democrats
New seat
Fylde
Conservative
Andrew Snowden
Conservative
Previous incumbent, Mark Menzies , did not stand
Gainsborough
Conservative
Edward Leigh
Conservative
Gateshead Central and Whickham
Labour
Mark Ferguson
Labour
Ian Mearns , incumbent for the predecessor seat of Gateshead , did not stand
Gedling
Conservative
Michael Payne
Labour
Defeated incumbent, Tom Randall
Gillingham and Rainham
Conservative
Naushabah Khan
Labour
Defeated incumbent, Rehman Chishti
Glasgow East
Scottish National
John Grady
Labour
Defeated incumbent, David Linden
Glasgow North
Scottish National
Martin Rhodes
Labour
Defeated Alison Thewliss , previously MP for the abolished seat of Glasgow Central . Incumbent Patrick Grady did not stand.
Glasgow North East
Scottish National
Maureen Burke
Labour
Defeated incumbent, Anne McLaughlin
Glasgow South
Scottish National
Gordon McKee
Labour
Defeated incumbent, Stewart McDonald
Glasgow South West
Scottish National
Zubir Ahmed
Labour
Defeated incumbent, Chris Stephens
Glasgow West
Scottish National
Patricia Ferguson
Labour
Defeated incumbent, Carol Monaghan
Glastonbury and Somerton
Conservative
Sarah Dyke
Liberal Democrats
Predecessor seat of Somerton and Frome gained by Liberal Democrats in 2023 by-election
Glenrothes and Mid Fife
Scottish National
Richard Baker
Labour
Previous incumbent, Peter Grant , did not stand
Gloucester
Conservative
Alex McIntyre
Labour
Defeated incumbent, Richard Graham
Godalming and Ash
Conservative
Jeremy Hunt
Conservative
New seat. Hunt was previously MP for South West Surrey .
Goole and Pocklington
Conservative
David Davis
Conservative
MP for the predecessor seat of Haltemprice and Howden
Gordon and Buchan
Conservative
Harriet Cross
Conservative
Defeated Richard Thomson , incumbent SNP MP for the predecessor constituency of Gordon . Notional hold following boundary changes.
Gorton and Denton
Labour
Andrew Gwynne
Labour Co-op
Previously Labour MP for the abolished seat of Denton and Reddish .
Gosport
Conservative
Caroline Dinenage
Conservative
Gower
Labour
Tonia Antoniazzi
Labour
Grantham and Bourne
Conservative
Gareth Davies
Conservative
MP for the predecessor seat of Grantham and Stamford
Gravesham
Conservative
Lauren Sullivan
Labour
Defeated incumbent, Adam Holloway
Great Grimsby and Cleethorpes
Conservative
Melanie Onn
Labour
Defeated Lia Nici-Townend , incumbent for the predecessor seat of Great Grimsby .
Great Yarmouth
Conservative
Rupert Lowe
Reform UK
Previous incumbent, Brandon Lewis , did not stand
Greenwich and Woolwich
Labour
Matthew Pennycook
Labour
Guildford
Conservative
Zöe Franklin
Liberal Democrats
Defeated incumbent, Angela Richardson
Hackney North and Stoke Newington
Labour
Diane Abbott
Labour
Hackney South and Shoreditch
Labour
Meg Hillier
Labour Co-op
Halesowen
Conservative
Alex Ballinger
Labour
Defeated James Morris , incumbent for the predecessor seat of Halesowen and Rowley Regis
Halifax
Labour
Kate Dearden
Labour Co-op
Incumbent Holly Lynch did not stand
Hamble Valley
Conservative
Paul Holmes
Conservative
New seat. Holmes was previously MP for Eastleigh .
Hamilton and Clyde Valley
Scottish National
Imogen Walker
Labour
Angela Crawley , MP for the predecessor seat of Lanark and Hamilton East , did not stand
Hammersmith and Chiswick
Labour
Andy Slaughter
Labour
MP for the predecessor seat of Hammersmith
Hampstead and Highgate
Labour
Tulip Siddiq
Labour
MP for the predecessor seat of Hampstead and Kilburn
Harborough, Oadby and Wigston
Conservative
Neil O'Brien
Conservative
Harlow
Conservative
Chris Vince
Labour Co-op
Incumbent Robert Halfon did not stand
Harpenden and Berkhamsted
Conservative
Victoria Collins
Liberal Democrats
Won new seat
Harrogate and Knaresborough
Conservative
Tom Gordon
Liberal Democrats
Defeated incumbent, Andrew Jones
Harrow East
Conservative
Bob Blackman
Conservative
Harrow West
Labour
Gareth Thomas
Labour Co-op
Hartlepool
Labour
Jonathan Brash
Labour
Defeated Conservative incumbent Jill Mortimer who was elected in 2021 by-election
Harwich and North Essex
Conservative
Bernard Jenkin
Conservative
Hastings and Rye
Conservative
Helena Dollimore
Labour Co-op
Defeated incumbent Sally-Ann Hart
Havant
Conservative
Alan Mak
Conservative
Hayes and Harlington
Labour
John McDonnell
Labour
Hazel Grove
Conservative
Lisa Smart
Liberal Democrats
Incumbent William Wragg did not stand
Hemel Hempstead
Conservative
David Taylor
Labour
Incumbent Mike Penning did not stand
Hendon
Conservative
David Pinto-Duschinsky
Labour
Incumbent Matthew Offord did not stand
Henley and Thame
Conservative
Freddie van Mierlo
Liberal Democrats
Incumbent John Howell did not stand
Hereford and South Herefordshire
Conservative
Jesse Norman
Conservative
Herne Bay and Sandwich
Conservative
Roger Gale
Conservative
MP for the predecessor seat of North Thanet
Hertford and Stortford
Conservative
Josh Dean
Labour
Defeated incumbent, Julie Marson
Hertsmere
Conservative
Oliver Dowden
Conservative
Hexham
Conservative
Joe Morris
Labour
Defeated incumbent, Guy Opperman
Heywood and Middleton North
Labour
Elsie Blundell
Labour
Notional hold following boundary changes. Incumbent Conservative MP Chris Clarkson stood unsuccessfully in Stratford-on-Avon
High Peak
Conservative
Jon Pearce
Labour
Defeated incumbent, Robert Largan
Hinckley and Bosworth
Conservative
Luke Evans
Conservative
Hitchin
Conservative
Alistair Strathern
Labour
Defeated Bim Afolami , incumbent for the predecessor seat of Hitchin and Harpenden ; Strathern won the 2023 Mid Bedfordshire by-election and a small part of that constituency was transferred to Hitchin.
Holborn and St Pancras
Labour
Keir Starmer
Labour
Honiton and Sidmouth
Conservative
Richard Foord
Liberal Democrats
Foord won the predecessor seat of Tiverton and Honiton in the 2022 by-election . He defeated Simon Jupp , previously MP for East Devon .
Hornchurch and Upminster
Conservative
Julia Lopez
Conservative
Hornsey and Friern Barnet
Labour
Catherine West
Labour
MP for the predecessor seat of Hornsey and Wood Green
Horsham
Conservative
John Milne
Liberal Democrats
Defeated incumbent, Jeremy Quin
Houghton and Sunderland South
Labour
Bridget Phillipson
Labour
Hove and Portslade
Labour
Peter Kyle
Labour
Huddersfield
Labour
Harpreet Uppal
Labour
Incumbent Barry Sheerman did not stand
Huntingdon
Conservative
Ben Obese-Jecty
Conservative
Incumbent Jonathan Djanogly did not stand
Hyndburn
Conservative
Sarah Smith
Labour
Defeated incumbent Sara Britcliffe
Ilford North
Labour
Wes Streeting
Labour
Ilford South
Labour
Jas Athwal
Labour
Incumbent Sam Tarry did not stand
Inverclyde and Renfrewshire West
Scottish National
Martin McCluskey
Labour
Defeated Ronnie Cowan , incumbent for the predecessor seat of Inverclyde
Inverness, Skye and West Ross-shire
Scottish National
Angus MacDonald
Liberal Democrats
Defeated Drew Hendry , incumbent for the predecessor seat of Inverness, Nairn, Badenoch and Strathspey
Ipswich
Conservative
Jack Abbott
Labour Co-op
Defeated incumbent, Tom Hunt
Isle of Wight East
Conservative
Joe Robertson
Conservative
New seat won
Isle of Wight West
Conservative
Richard Quigley
Labour
Defeated Bob Seely , incumbent MP for Isle of Wight
Islington North
Labour
Jeremy Corbyn
Independent
Seat held. Corbyn was elected for Labour in 2019, but had sat as an Independent since 2020.
Islington South and Finsbury
Labour
Emily Thornberry
Labour
Jarrow and Gateshead East
Labour
Kate Osborne
Labour
MP for the predecessor seat of Jarrow
Keighley and Ilkley
Conservative
Robbie Moore
Conservative
Kenilworth and Southam
Conservative
Jeremy Wright
Conservative
Kensington and Bayswater
Labour
Joe Powell
Labour
Notional hold. Defeated Felicity Buchan , incumbent Conservative MP for the predecessor seat of Kensington .
Kettering
Conservative
Rosie Wrighting
Labour
Defeated incumbent, Philip Hollobone
Kilmarnock and Loudoun
Scottish National
Lillian Jones
Labour
Defeated incumbent, Alan Brown
Kingston and Surbiton
Liberal Democrats
Ed Davey
Liberal Democrats
Kingston upon Hull East
Labour
Karl Turner
Labour
Kingston upon Hull North and Cottingham
Labour
Diana Johnson
Labour
MP for predecessor seat of Kingston upon Hull North
Kingston upon Hull West and Haltemprice
Conservative
Emma Hardy
Labour
Notional gain following boundary changes. Hardy was previously MP for the predecessor seat of Kingston upon Hull West and Hessle .
Kingswinford and South Staffordshire
Conservative
Mike Wood
Conservative
Previously MP for the abolished seat of Dudley South
Knowsley
Labour
Anneliese Midgley
Labour
Previous incumbent, George Howarth , did not stand
Lagan Valley
Democratic Unionist
Sorcha Eastwood
Alliance
Previous incumbent, Jeffrey Donaldson , did not stand
Lancaster and Wyre
Conservative
Cat Smith
Labour
Notional gain following boundary changes. Smith was previously MP for the predecessor seat of Lancaster and Fleetwood .
Leeds Central and Headingley
Labour
Alex Sobel
Labour Co-op
New seat. Sobel was previously MP for Leeds North West
Leeds East
Labour
Richard Burgon
Labour
Leeds North East
Labour
Fabian Hamilton
Labour
Leeds North West
Conservative
Katie White
Labour
Notional gain following boundary changes. Incumbent Labour MP, Alex Sobel , stood successfully for the new seat of Leeds Central and Headingley .
Leeds South
Labour
Hilary Benn
Labour
MP for the predecessor seat of Leeds Central
Leeds South West and Morley
Conservative
Mark Sewards
Labour
Defeated Andrea Jenkyns , incumbent for the predecessor seat of Morley and Outwood .
Leeds West and Pudsey
Labour
Rachel Reeves
Labour
Notional hold following boundary changes. Reeves was MP for the abolished seat of Leeds West . Previous incumbent for the predecessor seat of Pudsey , Stuart Andrew , stood in Daventry
Leicester East
Labour
Shivani Raja
Conservative
Defeated incumbent, Claudia Webbe , who stood as an Independent. She was elected for Labour in 2019, but had sat as an Independent since 2021.
Leicester South
Labour
Shockat Adam
Independent
Defeated incumbent, Jonathan Ashworth
Leicester West
Labour
Liz Kendall
Labour
Leigh and Atherton
Conservative
Jo Platt
Labour Co-op
Previous incumbent for the predecessor seat of Leigh , James Grundy , did not stand
Lewes
Conservative
James MacCleary
Liberal Democrats
Defeated incumbent, Maria Caulfield
Lewisham East
Labour
Janet Daby
Labour
Lewisham North
Labour
Vicky Foxcroft
Labour
MP for the predecessor seat of Lewisham Deptford
Lewisham West and East Dulwich
Labour
Ellie Reeves
Labour
MP for predecessor seat of Lewisham West and Penge
Leyton and Wanstead
Labour
Calvin Bailey
Labour
Previous incumbent, John Cryer , did not stand
Lichfield
Conservative
Dave Robertson
Labour
Defeated incumbent, Michael Fabricant
Lincoln
Conservative
Hamish Falconer
Labour
Defeated incumbent, Karl McCartney
Liverpool Garston
Labour
Maria Eagle
Labour
MP for the predecessor seat of Garston and Halewood
Liverpool Riverside
Labour
Kim Johnson
Labour
Liverpool Walton
Labour
Dan Carden
Labour
Liverpool Wavertree
Labour
Paula Barker
Labour
Liverpool West Derby
Labour
Ian Byrne
Labour
Livingston
Scottish National
Gregor Poynton
Labour
Defeated incumbent, Hannah Bardell
Llanelli
Labour
Nia Griffith
Labour
Lothian East
Scottish National
Douglas Alexander
Labour Co-op
Previous incumbent, Kenny MacAskill , stood in Alloa and Grangemouth for the Alba Party .
Loughborough
Conservative
Jeevun Sandher
Labour
Defeated incumbent, Jane Hunt
Louth and Horncastle
Conservative
Victoria Atkins
Conservative
Lowestoft
Conservative
Jessica Asato
Labour
Defeated Peter Aldous , incumbent for the predecessor seat of Waveney
Luton North
Labour
Sarah Owen
Labour
Luton South and South Bedfordshire
Labour
Rachel Hopkins
Labour
Macclesfield
Conservative
Tim Roca
Labour
Defeated incumbent, David Rutley
Maidenhead
Conservative
Joshua Reynolds
Liberal Democrats
Previous incumbent, Theresa May , did not stand
Maidstone and Malling
Conservative
Helen Grant
Conservative
MP for the predecessor seat of Maidstone and The Weald
Makerfield
Labour
Josh Simons
Labour
Previous incumbent, Yvonne Fovargue , did not stand
Maldon
Conservative
John Whittingdale
Conservative
Manchester Central
Labour
Lucy Powell
Labour Co-op
Manchester Rusholme
Labour
Afzal Khan
Labour
New seat. Khan was previously MP for Manchester Gorton
Manchester Withington
Labour
Jeff Smith
Labour
Mansfield
Conservative
Steve Yemm
Labour
Defeated incumbent, Ben Bradley
Melksham and Devizes
Conservative
Brian Mathew
Liberal Democrats
New seat. Mathew defeated Michelle Donelan , who was previously MP for Chippenham .
Melton and Syston
Conservative
Edward Argar
Conservative
New seat. Argar was previously MP for Charnwood .
Meriden and Solihull East
Conservative
Saqib Bhatti
Conservative
MP for the predecessor seat of Meriden
Merthyr Tydfil and Aberdare
Labour
Gerald Jones
Labour
MP for the predecessor seat of Merthyr Tydfil and Ryhmney
Mid and South Pembrokeshire
Conservative
Henry Tufnell
Labour
Defeated Stephen Crabb , incumbent for the predecessor seat of Preseli Pembrokeshire
Mid Bedfordshire
Conservative
Blake Stephenson
Conservative
Won by Alistair Strathern for Labour in 2023 by-election . Strathern stood in Hitchin in 2024.
Mid Buckinghamshire
Conservative
Greg Smith
Conservative
New seat. Smith was previously the MP for Buckingham .
Mid Cheshire
Conservative
Andrew Cooper
Labour
New seat
Mid Derbyshire
Conservative
Jonathan Davies
Labour
Previous incumbent, Pauline Latham , did not stand
Mid Dorset and North Poole
Conservative
Vikki Slade
Liberal Democrats
Defeated incumbent, Michael Tomlinson
Mid Dunbartonshire
Scottish National
Susan Murray
Liberal Democrats
Defeated Amy Callaghan , incumbent for the predecessor seat of East Dunbartonshire
Mid Leicestershire
Conservative
Peter Bedford
Conservative
Incumbent for the predecessor seat of Charnwood, Edward Argar , stood in the new seat of Melton and Syston
Mid Norfolk
Conservative
George Freeman
Conservative
Mid Sussex
Conservative
Alison Bennett
Liberal Democrats
Previous incumbent, Mims Davies , stood in the new seat of East Grinstead and Uckfield
Mid Ulster
Sinn Féin
Cathal Mallaghan
Sinn Féin
Previous incumbent, Francie Molloy , did not stand
Middlesbrough and Thornaby East
Labour
Andy McDonald
Labour
MP for the predecessor seat of Middlesbrough
Middlesbrough South and East Cleveland
Conservative
Luke Myer
Labour
Defeated incumbent, Simon Clarke
Midlothian
Scottish National
Kirsty McNeill
Labour Co-op
Defeated incumbent, Owen Thompson
Milton Keynes Central
Conservative
Emily Darlington
Labour
Iain Stewart , incumbent MP for the predecessor seat of Milton Keynes South , stood unsuccessfully in the new seat of Buckingham and Bletchley
Milton Keynes North
Conservative
Chris Curtis
Labour
Defeated incumbent, Ben Everitt
Mitcham and Morden
Labour
Siobhain McDonagh
Labour
Monmouthshire
Conservative
Catherine Fookes
Labour
Defeated incumbent, David TC Davies
Montgomeryshire and Glyndŵr
Conservative
Steve Witherden
Labour
Defeated Craig Williams , incumbent for the predecessor seat of Montgomeryshire
Moray West, Nairn and Strathspey
Scottish National
Graham Leadbitter
Scottish National
Notional hold following boundary changes. Douglas Ross , incumbent Conservative MP for the predecessor seat of Moray , stood unsuccessfully in Aberdeenshire North and Moray East
Morecambe and Lunesdale
Conservative
Lizzi Collinge
Labour
Defeated incumbent, David Morris
Motherwell, Wishaw and Carluke
Scottish National
Pamela Nash
Labour
Defeated Marion Fellows , incumbent for the predecessor seat of Motherwell and Wishaw
Na h-Eileanan an Iar
Scottish National
Torcuil Crichton
Labour
Defeated incumbent, Angus MacNeil
Neath and Swansea East
Labour
Carolyn Harris
Labour
Formerly MP for the abolished seat of Swansea East . Previous incumbent for the predecessor seat of Neath , Christina Rees , did not stand
New Forest East
Conservative
Julian Lewis
Conservative
New Forest West
Conservative
Desmond Swayne
Conservative
Newark
Conservative
Robert Jenrick
Conservative
Newbury
Conservative
Lee Dillon
Liberal Democrats
Defeated incumbent, Laura Farris
Newcastle upon Tyne Central and West
Labour
Chi Onwurah
Labour
MP for the predecessor seat of Newcastle upon Tyne Central
Newcastle upon Tyne East and Wallsend
Labour
Mary Glindon
Labour
Formerly MP for the abolished seat of North Tyneside . Previous incumbent for the predecessor seat of Newcastle upon Tyne East , Nick Brown , did not stand.
Newcastle upon Tyne North
Labour
Catherine McKinnell
Labour
Newcastle-under-Lyme
Conservative
Adam Jogee
Labour
Previous incumbent, Aaron Bell , did not stand
Newport East
Labour
Jessica Morden
Labour
Newport West and Islwyn
Labour
Ruth Jones
Labour
Formerly MP for the abolished seat of Newport West . Previous incumbent for the predecessor seat of Islwyn , Chris Evans , stood successfully for Caerphilly .
Newry and Armagh
Sinn Féin
Dáire Hughes
Sinn Féin
Previous incumbent, Mickey Brady , did not stand
Newton Abbot
Conservative
Martin Wrigley
Liberal Democrats
Defeated incumbent, Anne Marie Morris
Newton Aycliffe and Spennymoor
Conservative
Alan Strickland
Labour
Defeated Paul Howell , incumbent for the predecessor seat of Sedgefield
Normanton and Hemsworth
Labour
Jon Trickett
Labour
MP for the predecessor seat of Hemsworth
North Antrim
Democratic Unionist
Jim Allister
Traditional Unionist Voice
Defeated incumbent, Ian Paisley Jr
North Ayrshire and Arran
Scottish National
Irene Campbell
Labour
Defeated incumbent, Patricia Gibson
North Bedfordshire
Conservative
Richard Fuller
Conservative
MP for the predecessor seat of North East Bedfordshire
North Cornwall
Conservative
Ben Maguire
Liberal Democrats
Defeated incumbent, Scott Mann
North Cotswolds
Conservative
Geoffrey Clifton-Brown
Conservative
New seat. Clifton-Brown was previously MP for The Cotswolds
North Devon
Conservative
Ian Roome
Liberal Democrats
Defeated incumbent, Selaine Saxby
North Dorset
Conservative
Simon Hoare
Conservative
Seat held
North Down
Alliance
Alex Easton
Independent
Defeated incumbent, Stephen Farry
North Durham
Labour
Luke Akehurst
Labour
Previous incumbent, Kevan Jones , did not stand
North East Cambridgeshire
Conservative
Steve Barclay
Conservative
North East Derbyshire
Conservative
Louise Jones
Labour
Defeated incumbent, Lee Rowley
North East Fife
Scottish National
Wendy Chamberlain
Liberal Democrats
Seat held. Nominal gain following boundary changes.
North East Hampshire
Conservative
Alex Brewer
Liberal Democrats
Defeated incumbent, Ranil Jayawardena
North East Hertfordshire
Conservative
Chris Hinchliff
Labour
Previous incumbent, Oliver Heald , did not stand
North East Somerset and Hanham
Conservative
Dan Norris
Labour
Defeated Jacob Rees-Mogg , incumbent for the predecessor seat of North East Somerset
North Herefordshire
Conservative
Ellie Chowns
Green
Defeated incumbent, Bill Wiggin
North Norfolk
Conservative
Steffan Aquarone
Liberal Democrats
Defeated incumbent, Duncan Baker
North Northumberland
Conservative
David Smith
Labour
Defeated Anne-Marie Trevelyan , incumbent for the predecessor seat of Berwick-upon-Tweed
North Shropshire
Conservative
Helen Morgan
Liberal Democrats
Won by Liberal Democrats at 2021 by-election
North Somerset
Conservative
Sadik Al-Hassan
Labour
Defeated incumbent, Liam Fox
North Warwickshire and Bedworth
Conservative
Rachel Taylor
Labour
Defeated incumbent, Craig Tracey
North West Cambridgeshire
Conservative
Sam Carling
Labour
Defeated incumbent, Shailesh Vara
North West Essex
Conservative
Kemi Badenoch
Conservative
MP for predecessor seat of Saffron Walden
North West Hampshire
Conservative
Kit Malthouse
Conservative
North West Leicestershire
Conservative
Amanda Hack
Labour
Defeated incumbent, Andrew Bridgen , who had been elected as a Conservative MP in 2019, but stood as an Independent in 2024
North West Norfolk
Conservative
James Wild
Conservative
Northampton North
Conservative
Lucy Rigby
Labour
Previous incumbent, Michael Ellis , did not stand
Northampton South
Conservative
Mike Reader
Labour
Defeated incumbent, Andrew Lewer
Norwich North
Conservative
Alice Macdonald
Labour Co-op
Previous incumbent, Chloe Smith , did not stand
Norwich South
Labour
Clive Lewis
Labour
Nottingham East
Labour
Nadia Whittome
Labour
Nottingham North and Kimberley
Labour
Alex Norris
Labour Co-op
MP for the predecessor seat of Nottingham North
Nottingham South
Labour
Lilian Greenwood
Labour
Nuneaton
Conservative
Jodie Gosling
Labour
Defeated incumbent, Marcus Jones
Old Bexley and Sidcup
Conservative
Louie French
Conservative
Oldham East and Saddleworth
Labour
Debbie Abrahams
Labour
Oldham West, Chadderton and Royton
Labour
Jim McMahon
Labour Co-op
Orkney and Shetland
Liberal Democrats
Alistair Carmichael
Liberal Democrats
Orpington
Conservative
Gareth Bacon
Conservative
Ossett and Denby Dale
Conservative
Jade Botterill
Labour
Defeated Mark Eastwood , previous MP for Dewsbury . Simon Lightwood , incumbent MP for the predecessor seat of Wakefield , stood successfully for the new seat of Wakefield and Rothwell .
Oxford East
Labour
Anneliese Dodds
Labour Co-op
Oxford West and Abingdon
Liberal Democrats
Layla Moran
Liberal Democrats
Paisley and Renfrewshire North
Scottish National
Alison Taylor
Labour
Defeated incumbent, Gavin Newlands
Paisley and Renfrewshire South
Scottish National
Johanna Baxter
Labour
Previous incumbent, Mhairi Black , did not stand
Peckham
Labour
Miatta Fahnbulleh
Labour Co-op
Previous incumbent for the predecessor seat of Camberwell and Peckham , Harriet Harman , did not stand
Pendle and Clitheroe
Conservative
Jonathan Hinder
Labour
Defeated Andrew Stephenson , incumbent for the predecessor seat of Pendle
Penistone and Stocksbridge
Conservative
'Marie Tidball
Labour
Defeated incumbent, Miriam Cates
Penrith and Solway
Conservative
Markus Campbell-Savours
Labour
Defeated Mark Jenkinson , incumbent for the predecessor seat of Workington
Perth and Kinross-shire
Scottish National
Pete Wishart
Scottish National
MP for the predecessor seat of Perth and North Perthshire
Peterborough
Conservative
Andrew Pakes
Labour Co-op
Defeated incumbent, Paul Bristow
Plymouth Moor View
Conservative
Fred Thomas
Labour
Defeated incumbent, Johnny Mercer
Plymouth Sutton and Devonport
Labour
Luke Pollard
Labour Co-op
Pontefract, Castleford and Knottingley
Labour
Yvette Cooper
Labour
MP for the predecessor seat of Normanton, Pontefract and Castleford
Pontypridd
Labour
Alex Davies-Jones
Labour
Poole
Conservative
Neil Duncan-Jordan
Labour
Defeated incumbent, Robert Syms
Poplar and Limehouse
Labour
Apsana Begum
Labour
Portsmouth North
Conservative
Amanda Martin
Labour
Defeated incumbent, Penny Mordaunt
Portsmouth South
Labour
Stephen Morgan
Labour
Preston
Labour
Mark Hendrick
Labour Co-op
Putney
Labour
Fleur Anderson
Labour
Queen's Park and Maida Vale
Labour
Georgia Gould
Labour
Previous incumbent for the predecessor seat of Westminster North , Karen Buck , did not stand
Rawmarsh and Conisbrough
Labour
John Healey
Labour
MP for the predecessor seat of Wentworth and Dearne
Rayleigh and Wickford
Conservative
Mark Francois
Conservative
Reading Central
Labour
Matt Rodda
Labour
MP for the predecessor seat of Reading East
Reading West and Mid Berkshire
Conservative
Olivia Bailey
Labour
Previous incumbent for the predecessor seat of Reading West , Alok Sharma , did not stand
Redcar
Conservative
Anna Turley
Labour Co-op
Defeated incumbent, Jacob Young
Redditch
Conservative
Chris Bloore
Labour
Defeated incumbent, Rachel Maclean
Reigate
Conservative
Rebecca Paul
Conservative
Previous incumbent, Crispin Blunt , did not stand
Rhondda and Ogmore
Labour
Chris Bryant
Labour
MP for the predecessor seat of Rhondda
Ribble Valley
Conservative
Maya Ellis
Labour
Defeated incumbent, Nigel Evans
Richmond and Northallerton
Conservative
Rishi Sunak
Conservative
MP for the predecessor seat of Richmond (Yorks)
Richmond Park
Liberal Democrats
Sarah Olney
Liberal Democrats
Rochdale
Labour
Paul Waugh
Labour Co-op
Defeated incumbent, George Galloway , who had been elected four months prior in the 2024 by-election for the Workers Party
Rochester and Strood
Conservative
Lauren Edwards
Labour
Defeated incumbent, Kelly Tolhurst
Romford
Conservative
Andrew Rosindell
Conservative
Romsey and Southampton North
Conservative
Caroline Nokes
Conservative
Rossendale and Darwen
Conservative
Andy MacNae
Labour
Defeated incumbent, Jake Berry
Rother Valley
Conservative
Jake Richards
Labour
Defeated incumbent, Alexander Stafford
Rotherham
Labour
Sarah Champion
Labour
Rugby
Conservative
John Slinger
Labour
Previous incumbent, Mark Pawsey , did not stand
Ruislip, Northwood and Pinner
Conservative
David Simmonds
Conservative
Runcorn and Helsby
Labour
Mike Amesbury
Labour
MP for the predecessor seat of Weaver Vale
Runnymede and Weybridge
Conservative
Ben Spencer
Conservative
Rushcliffe
Conservative
James Naish
Labour
Defeated incumbent, Ruth Edwards
Rutherglen
Scottish National
Michael Shanks
Labour
Predecessor seat of Rutherglen and Hamilton West won by Labour at 2023 by-election
Rutland and Stamford
Conservative
Alicia Kearns
Conservative
MP for the predecessor seat of Rutland and Melton
Salford
Labour
Rebecca Long-Bailey
Labour
Salisbury
Conservative
John Glen
Conservative
Scarborough and Whitby
Conservative
Alison Hume
Labour
Previous incumbent, Robert Goodwill , did not stand
Scunthorpe
Conservative
Nic Dakin
Labour
Defeated incumbent, Holly Mumby-Croft
Sefton Central
Labour
Bill Esterson
Labour
Selby
Conservative
Keir Mather
Labour
Predecessor seat of Selby and Ainsty won by Labour at 2023 by-election
Sevenoaks
Conservative
Laura Trott
Conservative
Sheffield Brightside and Hillsborough
Labour
Gill Furniss
Labour
Sheffield Central
Labour
Abtisam Mohamed
Labour
Previous incumbent, Paul Blomfield , did not stand
Sheffield Hallam
Labour
Olivia Blake
Labour
Sheffield Heeley
Labour
Louise Haigh
Labour
Sheffield South East
Labour
Clive Betts
Labour
Sherwood Forest
Conservative
Michelle Welsh
Labour
Defeated incumbent, Mark Spencer
Shipley
Conservative
Anna Dixon
Labour
Defeated incumbent, Philip Davies
Shrewsbury
Conservative
Julia Buckley
Labour
Defeated incumbent, Daniel Kawczynski
Sittingbourne and Sheppey
Conservative
Kevin McKenna
Labour
Previous incumbent, Gordon Henderson , did not stand
Skipton and Ripon
Conservative
Julian Smith
Conservative
Sleaford and North Hykeham
Conservative
Caroline Johnson
Conservative
Slough
Labour
Tan Dhesi
Labour
Smethwick
Labour
Gurinder Josan
Labour
Previous incumbent for the predecessor seat of Warley , John Spellar , did not stand
Solihull West and Shirley
Conservative
Neil Shastri-Hurst
Conservative
Defeated incumbent, Julian Knight , who had been elected as a Conservative MP in 2019, but stood as an Independent in 2024
South Antrim
Democratic Unionist
Robin Swann
Ulster Unionist
Defeated incumbent, Paul Girvan
South Basildon and East Thurrock
Conservative
James McMurdock
Reform UK
Defeated incumbent, Stephen Metcalfe
South Cambridgeshire
Conservative
Pippa Heylings
Liberal Democrats
Previous incumbent, Anthony Browne , stood unsuccessfully in the new seat of St Neots and Mid Cambridgeshire
South Cotswolds
Conservative
Roz Savage
Liberal Democrats
Defeated James Gray , who was incumbent for the abolished seat of North Wiltshire
South Derbyshire
Conservative
Samantha Niblett
Labour
Defeated incumbent, Heather Wheeler
South Devon
Conservative
Caroline Voaden
Liberal Democrats
Defeated Anthony Mangnall , incumbent for the predecessor seat of Totnes
South Dorset
Conservative
Lloyd Hatton
Labour
Defeated incumbent, Richard Drax
South Down
Sinn Féin
Chris Hazzard
Sinn Féin
South East Cornwall
Conservative
Anna Gelderd
Labour
Defeated incumbent, Sheryll Murray
South Holland and the Deepings
Conservative
John Hayes
Conservative
South Leicestershire
Conservative
Alberto Costa
Conservative
South Norfolk
Conservative
Ben Goldsborough
Labour
Previous incumbent, Richard Bacon , did not stand
South Northamptonshire
Conservative
Sarah Bool
Conservative
Previous incumbent, Andrea Leadsom , did not stand
South Ribble
Conservative
Paul Foster
Labour
Defeated incumbent, Katherine Fletcher
South Shields
Labour
Emma Lewell-Buck
Labour
South Shropshire
Conservative
Stuart Anderson
Conservative
Previous incumbent for the predecessor seat of Ludlow , Philip Dunne , did not stand
South Suffolk
Conservative
James Cartlidge
Conservative
South West Devon
Conservative
Rebecca Smith
Conservative
Previous incumbent, Gary Streeter , did not stand
South West Hertfordshire
Conservative
Gagan Mohindra
Conservative
South West Norfolk
Conservative
Terry Jermy
Labour
Defeated incumbent, Liz Truss
South West Wiltshire
Conservative
Andrew Murrison
Conservative
Southampton Itchen
Conservative
Darren Paffey
Labour
Previous incumbent, Royston Smith , did not stand
Southampton Test
Labour
Satvir Kaur
Labour
Previous incumbent, Alan Whitehead , did not stand
Southend East and Rochford
Conservative
Bayo Alaba
Labour
Previous incumbent, James Duddridge , did not stand
Southend West and Leigh
Conservative
David Burton-Sampson
Labour
Defeated incumbent, Anna Firth
Southgate and Wood Green
Labour
Bambos Charalambous
Labour
MP for the predecessor seat of Enfield Southgate
Southport
Conservative
Patrick Hurley
Labour
Defeated incumbent, Damien Moore
Spelthorne
Conservative
Lincoln Jopp
Conservative
Previous incumbent, Kwasi Kwarteng , did not stand
Spen Valley
Conservative
Kim Leadbeater
Labour
MP for the predecessor seat of Batley and Spen
St Albans
Liberal Democrats
Daisy Cooper
Liberal Democrats
St Austell and Newquay
Conservative
Noah Law
Labour
Defeated incumbent, Steve Double
St Helens North
Labour
David Baines
Labour
Previous incumbent, Conor McGinn , did not stand
St Helens South and Whiston
Labour
Marie Rimmer
Labour
St Ives
Conservative
Andrew George
Liberal Democrats
Defeated incumbent, Derek Thomas
St Neots and Mid Cambridgeshire
Conservative
Ian Sollom
Liberal Democrats
New seat. Defeated Anthony Browne , incumbent for South Cambridgeshire
Stafford
Conservative
Leigh Ingham
Labour
Defeated incumbent, Theo Clarke
Staffordshire Moorlands
Conservative
Karen Bradley
Conservative
Stalybridge and Hyde
Labour
Jonathan Reynolds
Labour Co-op
Stevenage
Conservative
Kevin Bonavia
Labour
Previous incumbent, Stephen McPartland , did not stand
Stirling and Strathallan
Scottish National
Chris Kane
Labour
Defeated Alyn Smith , incumbent for the predecessor seat of Stirling
Stockport
Labour
Navendu Mishra
Labour
Stockton North
Labour
Chris McDonald
Labour
Previous incumbent, Alex Cunningham , did not stand
Stockton West
Conservative
Matt Vickers
Conservative
MP for the predecessor seat of Stockton South
Stoke-on-Trent Central
Conservative
Gareth Snell
Labour Co-op
Previous incumbent, Jo Gideon , did not stand
Stoke-on-Trent North
Conservative
David Williams
Labour
Defeated incumbent, Jonathan Gullis
Stoke-on-Trent South
Conservative
Allison Gardner
Labour
Defeated incumbent, Jack Brereton
Stone, Great Wyrley and Penkridge
Conservative
Gavin Williamson
Conservative
New seat. Previously MP for South Staffordshire
Stourbridge
Conservative
Cat Eccles
Labour
Defeated incumbent, Suzanne Webb
Strangford
Democratic Unionist
Jim Shannon
Democratic Unionist
Stratford and Bow
Labour
Uma Kumaran
Labour
New seat
Stratford-on-Avon
Conservative
Manuela Perteghella
Liberal Democrats
Previous incumbent, Nadhim Zahawi , did not stand
Streatham and Croydon North
Labour
Steve Reed
Labour Co-op
New seat. Previously MP for Croydon North .
Stretford and Urmston
Labour
Andrew Western
Labour
Stroud
Conservative
Simon Opher
Labour
Defeated incumbent, Siobhan Baillie
Suffolk Coastal
Conservative
Jenny Riddell-Carpenter
Labour
Defeated incumbent, Thérèse Coffey
Sunderland Central
Labour
Lewis Atkinson
Labour
Previous incumbent, Julie Elliott , did not stand
Surrey Heath
Conservative
Al Pinkerton
Liberal Democrats
Previous incumbent, Michael Gove , did not stand
Sussex Weald
Conservative
Nus Ghani
Conservative
MP for the predecessor seat of Wealden
Sutton and Cheam
Conservative
Luke Taylor
Liberal Democrats
Previous incumbent, Paul Scully , did not stand
Sutton Coldfield
Conservative
Andrew Mitchell
Conservative
Swansea West
Labour
Torsten Bell
Labour
Previous incumbent, Geraint Davies , did not stand
Swindon North
Conservative
Will Stone
Labour
Defeated incumbent, Justin Tomlinson
Swindon South
Conservative
Heidi Alexander
Labour
Defeated incumbent, Robert Buckland
Tamworth
Conservative
Sarah Edwards
Labour
Won by Labour at 2023 by-election . Defeated Eddie Hughes , previously Conservative MP for Walsall North .
Tatton
Conservative
Esther McVey
Conservative
Taunton and Wellington
Conservative
Gideon Amos
Liberal Democrats
Defeated Rebecca Pow , incumbent for the predecessor seat of Taunton Deane
Telford
Conservative
Shaun Davies
Labour
Previous incumbent, Lucy Allan , did not stand
Tewkesbury
Conservative
Cameron Thomas
Liberal Democrats
Defeated incumbent, Laurence Robertson
The Wrekin
Conservative
Mark Pritchard
Conservative
Thirsk and Malton
Conservative
Kevin Hollinrake
Conservative
Thornbury and Yate
Conservative
Claire Young
Liberal Democrats
Defeated incumbent, Luke Hall
Thurrock
Conservative
Jen Craft
Labour
Defeated incumbent, Jackie Doyle-Price
Tipton and Wednesbury
Conservative
Antonia Bance
Labour
Defeated Shaun Bailey , incumbent MP for the predecessor seat of West Bromwich West
Tiverton and Minehead
Conservative
Rachel Gilmour
Liberal Democrats
New seat. Defeated Ian Liddell-Grainger , incumbent MP Bridgwater and West Somerset .
Tonbridge
Conservative
Tom Tugendhat
Conservative
MP for the predecessor seat of Tonbridge and Malling
Tooting
Labour
Rosena Allin-Khan
Labour
Torbay
Conservative
Steve Darling
Liberal Democrats
Defeated incumbent, Kevin Foster
Torfaen
Labour
Nick Thomas-Symonds
Labour
Torridge and Tavistock
Conservative
Geoffrey Cox
Conservative
MP for the predecessor seat of Torridge and West Devon
Tottenham
Labour
David Lammy
Labour
Truro and Falmouth
Conservative
Jayne Kirkham
Labour Co-op
Defeated incumbent, Cherilyn Mackrory
Tunbridge Wells
Conservative
Mike Martin
Liberal Democrats
Previous incumbent, Greg Clark , did not stand
Twickenham
Liberal Democrats
Munira Wilson
Liberal Democrats
Tynemouth
Labour
Alan Campbell
Labour
Upper Bann
Democratic Unionist
Carla Lockhart
Democratic Unionist
Uxbridge and South Ruislip
Conservative
Danny Beales
Labour
Defeated incumbent, Steve Tuckwell who was elected at the 2023 by-election .
Vale of Glamorgan
Conservative
Kanishka Narayan
Labour
Defeated incumbent, Alun Cairns
Vauxhall and Camberwell Green
Labour
Florence Eshalomi
Labour Co-op
MP for the predecessor seat of Vauxhall
Wakefield and Rothwell
Conservative
Simon Lightwood
Labour Co-op
New seat. Previously MP for Wakefield (Labour gain at 2022 by-election )
Wallasey
Labour
Angela Eagle
Labour
Walsall and Bloxwich
Conservative
Valerie Vaz
Labour
Previously MP for the abolished seat of Walsall South . Incumbent for the predecessor seat of Walsall North , Eddie Hughes , who stood unsuccessfully in Tamworth .
Walthamstow
Labour
Stella Creasy
Labour Co-op
Warrington North
Labour
Charlotte Nichols
Labour
Warrington South
Labour
Sarah Hall
Labour Co-op
Notional hold. Defeated Conservative incumbent, Andy Carter
Warwick and Leamington
Labour
Matt Western
Labour
Washington and Gateshead South
Labour
Sharon Hodgson
Labour
MP for the predecessor seat of Washington and Sunderland West
Watford
Conservative
Matt Turmaine
Labour
Defeated incumbent, Dean Russell
Waveney Valley
Conservative
Adrian Ramsay
Green
New seat
Weald of Kent
Conservative
Katie Lam
Conservative
New seat
Wellingborough and Rushden
Conservative
Gen Kitchen
Labour
Won by Labour at 2024 by-election
Wells and Mendip Hills
Conservative
Tessa Munt
Liberal Democrats
Previous incumbent for the predecessor seat of Wells , James Heappey , did not stand
Welwyn Hatfield
Conservative
Andrew Lewin
Labour
Defeated incumbent, Grant Shapps
West Aberdeenshire and Kincardine
Conservative
Andrew Bowie
Conservative
West Bromwich
Conservative
Sarah Coombes
Labour
Previous incumbent for the predecessor seat of West Bromwich East , Nicola Richards , did not stand
West Dorset
Conservative
Edward Morello
Liberal Democrats
Defeated incumbent, Chris Loder
West Dunbartonshire
Scottish National
Douglas McAllister
Labour
Defeated incumbent, Martin Docherty-Hughes
West Ham and Beckton
Labour
James Asser
Labour
Previous incumbent for the predecessor seat of West Ham , Lyn Brown , did not stand
West Lancashire
Labour
Ashley Dalton
Labour
West Suffolk
Conservative
Nick Timothy
Conservative
Previous incumbent, Matt Hancock , did not stand
West Tyrone
Sinn Féin
Órfhlaith Begley
Sinn Féin
West Worcestershire
Conservative
Harriett Baldwin
Conservative
Westmorland and Lonsdale
Conservative
Tim Farron
Liberal Democrats
Seat held. Nominal gain following boundary changes.
Weston-super-Mare
Conservative
Dan Aldridge
Labour
Defeated incumbent, John Penrose
Wetherby and Easingwold
Conservative
Alec Shelbrooke
Conservative
MP for the predecessor seat of Elmet and Rothwell
Whitehaven and Workington
Conservative
Josh MacAlister
Labour
Previous incumbent for the predecessor seat of Copeland , Trudy Harrison , did not stand
Widnes and Halewood
Labour
Derek Twigg
Labour
MP for the predecessor seat of Halton
Wigan
Labour
Lisa Nandy
Labour
Wimbledon
Conservative
Paul Kohler
Liberal Democrats
Previous incumbent, Stephen Hammond , did not stand
Winchester
Conservative
Danny Chambers
Liberal Democrats
Previous incumbent, Steve Brine , did not stand
Windsor
Conservative
Jack Rankin
Conservative
Previous incumbent, Adam Afriyie , did not stand
Wirral West
Labour
Matthew Patrick
Labour
Previous incumbent, Margaret Greenwood , did not stand
Witham
Conservative
Priti Patel
Conservative
Witney
Conservative
Charlie Maynard
Liberal Democrats
Defeated incumbent, Robert Courts
Woking
Conservative
Will Forster
Liberal Democrats
Defeated incumbent, Jonathan Lord
Wokingham
Conservative
Clive Jones
Liberal Democrats
Previous incumbent, John Redwood , did not stand
Wolverhampton North East
Conservative
Sureena Brackenridge
Labour
Defeated incumbent, Jane Stevenson
Wolverhampton South East
Labour
Pat McFadden
Labour
Seat held. Nominal gain following boundary changes.
Wolverhampton West
Conservative
Warinder Juss
Labour
Previous incumbent for the predecessor seat of Wolverhampton South West , Stuart Anderson , stood successfully in South Shropshire
Worcester
Conservative
Tom Collins
Labour
Previous incumbent, Robin Walker , did not stand
Worsley and Eccles
Labour
Michael Wheeler
Labour
Previous incumbent, Barbara Keeley , did not stand
Worthing West
Conservative
Beccy Cooper
Labour
Defeated incumbent, Peter Bottomley
Wrexham
Conservative
Andrew Ranger
Labour
Defeated incumbent, Sarah Atherton
Wycombe
Conservative
Emma Reynolds
Labour
Defeated incumbent, Steve Baker
Wyre Forest
Conservative
Mark Garnier
Conservative
Wythenshawe and Sale East
Labour
Mike Kane
Labour
Yeovil
Conservative
Adam Dance
Liberal Democrats
Defeated incumbent, Marcus Fysh
Ynys Môn
Conservative
Llinos Medi
Plaid Cymru
Defeated incumbent, Virginia Crosbie
York Central
Labour
Rachael Maskell
Labour Co-op
York Outer
Conservative
Luke Charters
Labour
Defeated incumbent, Julian Sturdy