Constituency Affiliation in notional [lower-alpha 4] 2019 election [14] Member returned in 2024 Notes 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. 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