Skip to content

2010 vs 2015 general election: what changed

How vote shares and seats changed between the 2010 and 2015 UK general elections, nationally and in every nation and region, plus every constituency. Conservative–Labour swing: 0.3 points to Labour.

Con–Lab swing
0.3 ptsto Labour
2010
Con 306largest party
2015
Con 330largest party
United Kingdom
PartyShare 2010Share 2015ChangeSeats 2010Seats 2015Change
Conservative36.1%36.8%+0.8306330+24
Labour29.0%30.5%+1.5258232−26
Scottish National Party1.7%4.7%+3.1656+50
Liberal Democrats23.0%7.9%−15.2578−49
Democratic Unionist Party0.6%0.6%0880
Sinn Féin0.6%0.6%054−1
Plaid Cymru0.6%0.6%0330
Social Democratic and Labour Party0.4%0.3%0330
Ulster Unionist Party—0.4%——2+2
UK Independence Party3.1%12.6%+9.501+1
Green1.0%3.8%+2.8110
Independent1.0%0.3%−0.7110
Speaker0.08%0.1%0110
Alliance Party of Northern Ireland0.1%0.2%+0.110−1
British National Party1.9%0.01%−1.9000

Nations and regions

RegionTop party 2010Top party 2015Con–Lab swingSeats
EnglandCon 297Con 3181.1 pts to Lab533 → 533
ScotlandLab 41SNP 567.9 pts to Con59 → 59
WalesLab 26Lab 250.2 pts to Con40 → 40
Northern IrelandDUP 8DUP 80.6 pts to Con18 → 18
North EastLab 25Lab 260.9 pts to Lab29 → 29
North WestLab 47Lab 512.9 pts to Lab75 → 75
Yorkshire and the HumberLab 32Lab 332.5 pts to Lab54 → 54
East MidlandsCon 31Con 320.2 pts to Con46 → 46
West MidlandsCon 33Con 340.0 pts to Lab59 → 59
East of EnglandCon 52Con 520.2 pts to Lab58 → 58
LondonLab 38Lab 453.4 pts to Lab73 → 73
South EastCon 74Con 780.3 pts to Lab84 → 84
South WestCon 36Con 510.7 pts to Con55 → 55

Seat by seat: 111 changed hands

Download CSV
Aldershot: Con → ConAldridge-Brownhills: Con → ConAltrincham and Sale West: Con → ConAmber Valley: Con → ConArundel and South Downs: Con → ConAshfield: Lab → LabAshford: Con → ConAshton-under-Lyne: Lab → LabAylesbury: Con → ConBanbury: Con → ConBarking: Lab → LabBarnsley Central: Lab → LabBarnsley East: Lab → LabBarrow and Furness: Lab → LabBasildon and Billericay: Con → ConBasingstoke: Con → ConBassetlaw: Lab → LabBath: LD → ConBatley and Spen: Lab → LabBattersea: Con → ConBeaconsfield: Con → ConBeckenham: Con → ConBedford: Con → ConBermondsey and Old Southwark: LD → LabBerwick-upon-Tweed: LD → ConBethnal Green and Bow: Lab → LabBeverley and Holderness: Con → ConBexhill and Battle: Con → ConBexleyheath and Crayford: Con → ConBirkenhead: Lab → LabBirmingham, Edgbaston: Lab → LabBirmingham, Erdington: Lab → LabBirmingham, Hall Green: Lab → LabBirmingham, Hodge Hill: Lab → LabBirmingham, Ladywood: Lab → LabBirmingham, Northfield: Lab → LabBirmingham, Perry Barr: Lab → LabBirmingham, Selly Oak: Lab → LabBirmingham, Yardley: LD → LabBishop Auckland: Lab → LabBlackburn: Lab → LabBlackley and Broughton: Lab → LabBlackpool North and Cleveleys: Con → ConBlackpool South: Lab → LabBlaydon: Lab → LabBlyth Valley: Lab → LabBognor Regis and Littlehampton: Con → ConBolsover: Lab → LabBolton North East: Lab → LabBolton South East: Lab → LabBolton West: Lab → ConBootle: Lab → LabBoston and Skegness: Con → ConBosworth: Con → ConBournemouth East: Con → ConBournemouth West: Con → ConBracknell: Con → ConBradford East: LD → LabBradford South: Lab → LabBradford West: Lab → LabBraintree: Con → ConBrent Central: LD → LabBrent North: Lab → LabBrentford and Isleworth: Con → LabBrentwood and Ongar: Con → ConBridgwater and West Somerset: Con → ConBrigg and Goole: Con → ConBrighton, Kemptown: Con → ConBrighton, Pavilion: Grn → GrnBristol East: Lab → LabBristol North West: Con → ConBristol South: Lab → LabBristol West: LD → LabBroadland: Con → ConBromley and Chislehurst: Con → ConBromsgrove: Con → ConBroxbourne: Con → ConBroxtowe: Con → ConBuckingham: Spk → SpkBurnley: LD → LabBurton: Con → ConBury North: Con → ConBury South: Lab → LabBury St Edmunds: Con → ConCalder Valley: Con → ConCamberwell and Peckham: Lab → LabCamborne and Redruth: Con → ConCambridge: LD → LabCannock Chase: Con → ConCanterbury: Con → ConCarlisle: Con → ConCarshalton and Wallington: LD → LDCastle Point: Con → ConCentral Devon: Con → ConCentral Suffolk and North Ipswich: Con → ConCharnwood: Con → ConChatham and Aylesford: Con → ConCheadle: LD → ConChelmsford: Con → ConChelsea and Fulham: Con → ConCheltenham: LD → ConChesham and Amersham: Con → ConChesterfield: Lab → LabChichester: Con → ConChingford and Woodford Green: Con → ConChippenham: LD → ConChipping Barnet: Con → ConChorley: Lab → LabChristchurch: Con → ConCities of London and Westminster: Con → ConCity of Chester: Con → LabCity of Durham: Lab → LabClacton: Con → UKIPCleethorpes: Con → ConColchester: LD → ConColne Valley: Con → ConCongleton: Con → ConCopeland: Lab → LabCorby: Con → ConCoventry North East: Lab → LabCoventry North West: Lab → LabCoventry South: Lab → LabCrawley: Con → ConCrewe and Nantwich: Con → ConCroydon Central: Con → ConCroydon North: Lab → LabCroydon South: Con → ConDagenham and Rainham: Lab → LabDarlington: Lab → LabDartford: Con → ConDaventry: Con → ConDenton and Reddish: Lab → LabDerby North: Lab → ConDerby South: Lab → LabDerbyshire Dales: Con → ConDevizes: Con → ConDewsbury: Con → LabDon Valley: Lab → LabDoncaster Central: Lab → LabDoncaster North: Lab → LabDover: Con → ConDudley North: Lab → LabDudley South: Con → ConDulwich and West Norwood: Lab → LabEaling Central and Acton: Con → LabEaling North: Lab → LabEaling, Southall: Lab → LabEasington: Lab → LabEast Devon: Con → ConEast Ham: Lab → LabEast Hampshire: Con → ConEast Surrey: Con → ConEast Worthing and Shoreham: Con → ConEast Yorkshire: Con → ConEastbourne: LD → ConEastleigh: LD → ConEddisbury: Con → ConEdmonton: Lab → LabEllesmere Port and Neston: Lab → LabElmet and Rothwell: Con → ConEltham: Lab → LabEnfield North: Con → LabEnfield, Southgate: Con → ConEpping Forest: Con → ConEpsom and Ewell: Con → ConErewash: Con → ConErith and Thamesmead: Lab → LabEsher and Walton: Con → ConExeter: Lab → LabFareham: Con → ConFaversham and Mid Kent: Con → ConFeltham and Heston: Lab → LabFilton and Bradley Stoke: Con → ConFinchley and Golders Green: Con → ConFolkestone and Hythe: Con → ConForest of Dean: Con → ConFylde: Con → ConGainsborough: Con → ConGarston and Halewood: Lab → LabGateshead: Lab → LabGedling: Lab → LabGillingham and Rainham: Con → ConGloucester: Con → ConGosport: Con → ConGrantham and Stamford: Con → ConGravesham: Con → ConGreat Grimsby: Lab → LabGreat Yarmouth: Con → ConGreenwich and Woolwich: Lab → LabGuildford: Con → ConHackney North and Stoke Newington: Lab → LabHackney South and Shoreditch: Lab → LabHalesowen and Rowley Regis: Con → ConHalifax: Lab → LabHaltemprice and Howden: Con → ConHalton: Lab → LabHammersmith: Lab → LabHampstead and Kilburn: Lab → LabHarborough: Con → ConHarlow: Con → ConHarrogate and Knaresborough: Con → ConHarrow East: Con → ConHarrow West: Lab → LabHartlepool: Lab → LabHarwich and North Essex: Con → ConHastings and Rye: Con → ConHavant: Con → ConHayes and Harlington: Lab → LabHazel Grove: LD → ConHemel Hempstead: Con → ConHemsworth: Lab → LabHendon: Con → ConHenley: Con → ConHereford and South Herefordshire: Con → ConHertford and Stortford: Con → ConHertsmere: Con → ConHexham: Con → ConHeywood and Middleton: Lab → LabHigh Peak: Con → ConHitchin and Harpenden: Con → ConHolborn and St Pancras: Lab → LabHornchurch and Upminster: Con → ConHornsey and Wood Green: LD → LabHorsham: Con → ConHoughton and Sunderland South: Lab → LabHove: Con → LabHuddersfield: Lab → LabHuntingdon: Con → ConHyndburn: Lab → LabIlford North: Con → LabIlford South: Lab → LabIpswich: Con → ConIsle of Wight: Con → ConIslington North: Lab → LabIslington South and Finsbury: Lab → LabJarrow: Lab → LabKeighley: Con → ConKenilworth and Southam: Con → ConKensington: Con → ConKettering: Con → ConKingston and Surbiton: LD → ConKingston upon Hull East: Lab → LabKingston upon Hull North: Lab → LabKingston upon Hull West and Hessle: Lab → LabKingswood: Con → ConKnowsley: Lab → LabLancaster and Fleetwood: Con → LabLeeds Central: Lab → LabLeeds East: Lab → LabLeeds North East: Lab → LabLeeds North West: LD → LDLeeds West: Lab → LabLeicester East: Lab → LabLeicester South: Lab → LabLeicester West: Lab → LabLeigh: Lab → LabLewes: LD → ConLewisham East: Lab → LabLewisham West and Penge: Lab → LabLewisham, Deptford: Lab → LabLeyton and Wanstead: Lab → LabLichfield: Con → ConLincoln: Con → ConLiverpool, Riverside: Lab → LabLiverpool, Walton: Lab → LabLiverpool, Wavertree: Lab → LabLiverpool, West Derby: Lab → LabLoughborough: Con → ConLouth and Horncastle: Con → ConLudlow: Con → ConLuton North: Lab → LabLuton South: Lab → LabMacclesfield: Con → ConMaidenhead: Con → ConMaidstone and The Weald: Con → ConMakerfield: Lab → LabMaldon: Con → ConManchester Central: Lab → LabManchester, Gorton: Lab → LabManchester, Withington: LD → LabMansfield: Lab → LabMeon Valley: Con → ConMeriden: Con → ConMid Bedfordshire: Con → ConMid Derbyshire: Con → ConMid Dorset and North Poole: LD → ConMid Norfolk: Con → ConMid Sussex: Con → ConMid Worcestershire: Con → ConMiddlesbrough: Lab → LabMiddlesbrough South and East Cleveland: Lab → LabMilton Keynes North: Con → ConMilton Keynes South: Con → ConMitcham and Morden: Lab → LabMole Valley: Con → ConMorecambe and Lunesdale: Con → ConMorley and Outwood: Lab → ConNew Forest East: Con → ConNew Forest West: Con → ConNewark: Con → ConNewbury: Con → ConNewcastle upon Tyne Central: Lab → LabNewcastle upon Tyne East: Lab → LabNewcastle upon Tyne North: Lab → LabNewcastle-under-Lyme: Lab → LabNewton Abbot: Con → ConNormanton, Pontefract and Castleford: Lab → LabNorth Cornwall: LD → ConNorth Devon: LD → ConNorth Dorset: Con → ConNorth Durham: Lab → LabNorth East Bedfordshire: Con → ConNorth East Cambridgeshire: Con → ConNorth East Derbyshire: Lab → LabNorth East Hampshire: Con → ConNorth East Hertfordshire: Con → ConNorth East Somerset: Con → ConNorth Herefordshire: Con → ConNorth Norfolk: LD → LDNorth Shropshire: Con → ConNorth Somerset: Con → ConNorth Swindon: Con → ConNorth Thanet: Con → ConNorth Tyneside: Lab → LabNorth Warwickshire: Con → ConNorth West Cambridgeshire: Con → ConNorth West Durham: Lab → LabNorth West Hampshire: Con → ConNorth West Leicestershire: Con → ConNorth West Norfolk: Con → ConNorth Wiltshire: Con → ConNorthampton North: Con → ConNorthampton South: Con → ConNorwich North: Con → ConNorwich South: LD → LabNottingham East: Lab → LabNottingham North: Lab → LabNottingham South: Lab → LabNuneaton: Con → ConOld Bexley and Sidcup: Con → ConOldham East and Saddleworth: Lab → LabOldham West and Royton: Lab → LabOrpington: Con → ConOxford East: Lab → LabOxford West and Abingdon: Con → ConPendle: Con → ConPenistone and Stocksbridge: Lab → LabPenrith and The Border: Con → ConPeterborough: Con → ConPlymouth, Moor View: Lab → ConPlymouth, Sutton and Devonport: Con → ConPoole: Con → ConPoplar and Limehouse: Lab → LabPortsmouth North: Con → ConPortsmouth South: LD → ConPreston: Lab → LabPudsey: Con → ConPutney: Con → ConRayleigh and Wickford: Con → ConReading East: Con → ConReading West: Con → ConRedcar: LD → LabRedditch: Con → ConReigate: Con → ConRibble Valley: Con → ConRichmond (Yorks): Con → ConRichmond Park: Con → ConRochdale: Lab → LabRochester and Strood: Con → ConRochford and Southend East: Con → ConRomford: Con → ConRomsey and Southampton North: Con → ConRossendale and Darwen: Con → ConRother Valley: Lab → LabRotherham: Lab → LabRugby: Con → ConRuislip, Northwood and Pinner: Con → ConRunnymede and Weybridge: Con → ConRushcliffe: Con → ConRutland and Melton: Con → ConSaffron Walden: Con → ConSalford and Eccles: Lab → LabSalisbury: Con → ConScarborough and Whitby: Con → ConScunthorpe: Lab → LabSedgefield: Lab → LabSefton Central: Lab → LabSelby and Ainsty: Con → ConSevenoaks: Con → ConSheffield Central: Lab → LabSheffield South East: Lab → LabSheffield, Brightside and Hillsborough: Lab → LabSheffield, Hallam: LD → LDSheffield, Heeley: Lab → LabSherwood: Con → ConShipley: Con → ConShrewsbury and Atcham: Con → ConSittingbourne and Sheppey: Con → ConSkipton and Ripon: Con → ConSleaford and North Hykeham: Con → ConSlough: Lab → LabSolihull: LD → ConSomerton and Frome: LD → ConSouth Basildon and East Thurrock: Con → ConSouth Cambridgeshire: Con → ConSouth Derbyshire: Con → ConSouth Dorset: Con → ConSouth East Cambridgeshire: Con → ConSouth East Cornwall: Con → ConSouth Holland and The Deepings: Con → ConSouth Leicestershire: Con → ConSouth Norfolk: Con → ConSouth Northamptonshire: Con → ConSouth Ribble: Con → ConSouth Shields: Lab → LabSouth Staffordshire: Con → ConSouth Suffolk: Con → ConSouth Swindon: Con → ConSouth Thanet: Con → ConSouth West Bedfordshire: Con → ConSouth West Devon: Con → ConSouth West Hertfordshire: Con → ConSouth West Norfolk: Con → ConSouth West Surrey: Con → ConSouth West Wiltshire: Con → ConSouthampton, Itchen: Lab → ConSouthampton, Test: Lab → LabSouthend West: Con → ConSouthport: LD → LDSpelthorne: Con → ConSt Albans: Con → ConSt Austell and Newquay: LD → ConSt Helens North: Lab → LabSt Helens South and Whiston: Lab → LabSt Ives: LD → ConStafford: Con → ConStaffordshire Moorlands: Con → ConStalybridge and Hyde: Lab → LabStevenage: Con → ConStockport: Lab → LabStockton North: Lab → LabStockton South: Con → ConStoke-on-Trent Central: Lab → LabStoke-on-Trent North: Lab → LabStoke-on-Trent South: Lab → LabStone: Con → ConStourbridge: Con → ConStratford-on-Avon: Con → ConStreatham: Lab → LabStretford and Urmston: Lab → LabStroud: Con → ConSuffolk Coastal: Con → ConSunderland Central: Lab → LabSurrey Heath: Con → ConSutton and Cheam: LD → ConSutton Coldfield: Con → ConTamworth: Con → ConTatton: Con → ConTaunton Deane: LD → ConTelford: Lab → ConTewkesbury: Con → ConThe Cotswolds: Con → ConThe Wrekin: Con → ConThirsk and Malton: Con → ConThornbury and Yate: LD → ConThurrock: Con → ConTiverton and Honiton: Con → ConTonbridge and Malling: Con → ConTooting: Lab → LabTorbay: LD → ConTorridge and West Devon: Con → ConTotnes: Con → ConTottenham: Lab → LabTruro and Falmouth: Con → ConTunbridge Wells: Con → ConTwickenham: LD → ConTynemouth: Lab → LabUxbridge and South Ruislip: Con → ConVauxhall: Lab → LabWakefield: Lab → LabWallasey: Lab → LabWalsall North: Lab → LabWalsall South: Lab → LabWalthamstow: Lab → LabWansbeck: Lab → LabWantage: Con → ConWarley: Lab → LabWarrington North: Lab → LabWarrington South: Con → ConWarwick and Leamington: Con → ConWashington and Sunderland West: Lab → LabWatford: Con → ConWaveney: Con → ConWealden: Con → ConWeaver Vale: Con → ConWellingborough: Con → ConWells: LD → ConWelwyn Hatfield: Con → ConWentworth and Dearne: Lab → LabWest Bromwich East: Lab → LabWest Bromwich West: Lab → LabWest Dorset: Con → ConWest Ham: Lab → LabWest Lancashire: Lab → LabWest Suffolk: Con → ConWest Worcestershire: Con → ConWestminster North: Lab → LabWestmorland and Lonsdale: LD → LDWeston-Super-Mare: Con → ConWigan: Lab → LabWimbledon: Con → ConWinchester: Con → ConWindsor: Con → ConWirral South: Lab → LabWirral West: Con → LabWitham: Con → ConWitney: Con → ConWoking: Con → ConWokingham: Con → ConWolverhampton North East: Lab → LabWolverhampton South East: Lab → LabWolverhampton South West: Con → LabWorcester: Con → ConWorkington: Lab → LabWorsley and Eccles South: Lab → LabWorthing West: Con → ConWycombe: Con → ConWyre and Preston North: Con → ConWyre Forest: Con → ConWythenshawe and Sale East: Lab → LabYeovil: LD → ConYork Central: Lab → LabYork Outer: Con → ConBelfast East: APNI → DUPBelfast North: DUP → DUPBelfast South: SDLP → SDLPBelfast West: SF → SFEast Antrim: DUP → DUPEast Londonderry: DUP → DUPFermanagh and South Tyrone: SF → UUPFoyle: SDLP → SDLPLagan Valley: DUP → DUPMid Ulster: SF → SFNewry and Armagh: SF → SFNorth Antrim: DUP → DUPNorth Down: Ind → IndSouth Antrim: DUP → UUPSouth Down: SDLP → SDLPStrangford: DUP → DUPUpper Bann: DUP → DUPWest Tyrone: SF → SFAberdeen North: Lab → SNPAberdeen South: Lab → SNPAirdrie and Shotts: Lab → SNPAngus: SNP → SNPArgyll and Bute: LD → SNPAyr, Carrick and Cumnock: Lab → SNPBanff and Buchan: SNP → SNPBerwickshire, Roxburgh and Selkirk: LD → SNPCaithness, Sutherland and Easter Ross: LD → SNPCentral Ayrshire: Lab → SNPCoatbridge, Chryston and Bellshill: Lab → SNPCumbernauld, Kilsyth and Kirkintilloch East: Lab → SNPDumfries and Galloway: Lab → SNPDumfriesshire, Clydesdale and Tweeddale: Con → ConDundee East: SNP → SNPDundee West: Lab → SNPDunfermline and West Fife: Lab → SNPEast Dunbartonshire: LD → SNPEast Kilbride, Strathaven and Lesmahagow: Lab → SNPEast Lothian: Lab → SNPEast Renfrewshire: Lab → SNPEdinburgh East: Lab → SNPEdinburgh North and Leith: Lab → SNPEdinburgh South: Lab → LabEdinburgh South West: Lab → SNPEdinburgh West: LD → SNPNa h-Eileanan an Iar: SNP → SNPFalkirk: Lab → SNPGlasgow Central: Lab → SNPGlasgow East: Lab → SNPGlasgow North: Lab → SNPGlasgow North East: Lab → SNPGlasgow North West: Lab → SNPGlasgow South: Lab → SNPGlasgow South West: Lab → SNPGlenrothes: Lab → SNPGordon: LD → SNPInverclyde: Lab → SNPInverness, Nairn, Badenoch and Strathspey: LD → SNPKilmarnock and Loudoun: Lab → SNPKirkcaldy and Cowdenbeath: Lab → SNPLanark and Hamilton East: Lab → SNPLinlithgow and East Falkirk: Lab → SNPLivingston: Lab → SNPMidlothian: Lab → SNPMoray: SNP → SNPMotherwell and Wishaw: Lab → SNPNorth Ayrshire and Arran: Lab → SNPNorth East Fife: LD → SNPOchil and South Perthshire: Lab → SNPOrkney and Shetland: LD → LDPaisley and Renfrewshire North: Lab → SNPPaisley and Renfrewshire South: Lab → SNPPerth and North Perthshire: SNP → SNPRoss, Skye and Lochaber: LD → SNPRutherglen and Hamilton West: Lab → SNPStirling: Lab → SNPWest Aberdeenshire and Kincardine: LD → SNPWest Dunbartonshire: Lab → SNPYnys Môn: Lab → LabDelyn: Lab → LabAlyn and Deeside: Lab → LabWrexham: Lab → LabLlanelli: Lab → LabGower: Lab → ConSwansea West: Lab → LabSwansea East: Lab → LabAberavon: Lab → LabCardiff Central: LD → LabCardiff North: Con → ConRhondda: Lab → LabTorfaen: Lab → LabMonmouth: Con → ConNewport East: Lab → LabNewport West: Lab → LabArfon: PC → PCAberconwy: Con → ConClwyd West: Con → ConVale of Clwyd: Lab → ConDwyfor Meirionnydd: PC → PCClwyd South: Lab → LabMontgomeryshire: Con → ConCeredigion: LD → LDPreseli Pembrokeshire: Con → ConCarmarthen West and South Pembrokeshire: Con → ConCarmarthen East and Dinefwr: PC → PCBrecon and Radnorshire: LD → ConNeath: Lab → LabCynon Valley: Lab → LabMerthyr Tydfil and Rhymney: Lab → LabBlaenau Gwent: Lab → LabBridgend: Lab → LabOgmore: Lab → LabPontypridd: Lab → LabCaerphilly: Lab → LabIslwyn: Lab → LabVale of Glamorgan: Con → ConCardiff West: Lab → LabCardiff South and Penarth: Lab → Lab
Coloured: seats that changed hands, in the colour of the new winner.

Constituency20102015Majority 2015Con–Lab swing
AberavonLabLab33.1%−0.3
AberconwyConCon13.3%−1.0
Aberdeen NorthLabSNP gain30.5%−9.1
Aberdeen SouthLabSNP gain14.9%−6.0
Airdrie and ShottsLabSNP gain19.8%−11.5
AldershotConCon32.3%+1.2
Aldridge-BrownhillsConCon29.7%+4.9
Altrincham and Sale WestConCon26.3%+0.1
Alyn and DeesideLabLab8.1%+0.4
Amber ValleyConCon9.2%−4.0
AngusSNPSNP25.2%−3.2
ArfonPCPC13.7%+1.8
Argyll and ButeLDSNP gain16.3%−1.6
Arundel and South DownsConCon46.4%−0.2
AshfieldLabLab18.6%+3.6
AshfordConCon33.6%+1.7
Ashton-under-LyneLabLab27.6%+2.0
AylesburyConCon31.0%+2.0
Ayr, Carrick and CumnockLabSNP gain21.6%−7.1
BanburyConCon31.7%+1.0
Banff and BuchanSNPSNP31.4%−3.1
BarkingLabLab35.5%+2.4
Barnsley CentralLabLab34.0%+5.4
Barnsley EastLabLab31.2%+4.8
Barrow and FurnessLabLab1.8%−5.0
Basildon and BillericayConCon29.0%+0.3
BasingstokeConCon20.8%+4.6
BassetlawLabLab17.9%+0.7
BathLDCon gain8.1%−0.1
Batley and SpenLabLab12.0%+1.7
BatterseaConCon15.6%−1.7
BeaconsfieldConCon49.5%−1.2
BeckenhamConCon37.9%+2.8
BedfordConCon2.4%+0.3
Belfast EastAPNIDUP gain6.5%−1.4
Belfast NorthDUPDUP13.1%0
Belfast SouthSDLPSDLP2.3%−0.7
Belfast WestSFSF35.0%−0.1
Bermondsey and Old SouthwarkLDLab gain8.7%+9.6
Berwick-upon-TweedLDCon gain12.2%−1.3
Berwickshire, Roxburgh and SelkirkLDSNP gain0.6%−3.8
Bethnal Green and BowLabLab46.0%+8.5
Beverley and HoldernessConCon23.2%+1.4
Bexhill and BattleConCon36.4%−0.5
Bexleyheath and CrayfordConCon21.0%+1.5
BirkenheadLabLab52.8%+4.6
Birmingham, EdgbastonLabLab6.6%+1.7
Birmingham, ErdingtonLabLab14.8%+2.8
Birmingham, Hall GreenLabLab42.1%+12.1
Birmingham, Hodge HillLabLab56.9%+8.3
Birmingham, LadywoodLabLab60.9%+8.6
Birmingham, NorthfieldLabLab5.9%−0.4
Birmingham, Perry BarrLabLab35.9%+3.5
Birmingham, Selly OakLabLab18.7%+5.6
Birmingham, YardleyLDLab gain16.0%+7.3
Bishop AucklandLabLab8.9%−1.9
BlackburnLabLab29.0%+3.7
Blackley and BroughtonLabLab45.5%+5.5
Blackpool North and CleveleysConCon8.5%−1.6
Blackpool SouthLabLab8.0%+1.4
Blaenau GwentLabLab40.1%+0.9
BlaydonLabLab31.7%−1.0
Blyth ValleyLabLab24.0%−1.6
Bognor Regis and LittlehamptonConCon29.6%−0.1
BolsoverLabLab26.8%+0.7
Bolton North EastLabLab10.1%+0.4
Bolton South EastLabLab26.8%+4.2
Bolton WestLabCon gain1.7%−0.9
BootleLabLab63.6%+4.4
Boston and SkegnessConCon10.0%+0.7
BosworthConCon20.5%+0.6
Bournemouth EastConCon32.6%+1.3
Bournemouth WestConCon29.7%−0.1
BracknellConCon38.9%−1.6
Bradford EastLDLab gain17.1%+14.7
Bradford SouthLabLab17.2%+2.5
Bradford WestLabLab28.3%+10.0
BraintreeConCon35.0%−1.3
Brecon and RadnorshireLDCon gain12.7%−0.2
Brent CentralLDLab gain41.8%+5.9
Brent NorthLabLab20.7%+2.7
Brentford and IsleworthConLab gain0.8%+2.2
Brentwood and OngarConCon42.0%+0.4
BridgendLabLab4.9%−0.5
Bridgwater and West SomersetConCon26.8%−0.1
Brigg and GooleConCon25.8%−7.0
Brighton, KemptownConCon1.5%+0.8
Brighton, PavilionGrnGrn14.6%−0.4
Bristol EastLabLab8.6%+0.2
Bristol North WestConCon9.5%+1.2
Bristol SouthLabLab14.0%−0.8
Bristol WestLDLab gain8.8%+5.7
BroadlandConCon31.7%+0.3
Bromley and ChislehurstConCon30.8%+3.1
BromsgroveConCon31.6%−4.9
BroxbourneConCon36.3%+1.8
BroxtoweConCon8.0%−3.6
BuckinghamSpkSpk42.7%0
BurnleyLDLab gain8.2%+4.7
BurtonConCon22.2%−4.8
Bury NorthConCon0.8%+2.1
Bury SouthLabLab10.4%+1.8
Bury St EdmundsConCon35.9%−2.5
CaerphillyLabLab25.0%0
Caithness, Sutherland and Easter RossLDSNP gain11.2%−4.7
Calder ValleyConCon8.3%+2.1
Camberwell and PeckhamLabLab50.1%+2.0
Camborne and RedruthConCon15.3%+3.0
CambridgeLDLab gain1.2%+10.8
Cannock ChaseConCon10.5%−1.7
CanterburyConCon18.3%+5.2
Cardiff CentralLDLab gain12.9%+9.1
Cardiff NorthConCon4.2%−1.9
Cardiff South and PenarthLabLab16.0%+2.7
Cardiff WestLabLab15.5%+2.0
CarlisleConCon6.5%−2.3
Carmarthen East and DinefwrPCPC14.2%−0.5
Carmarthen West and South PembrokeshireConCon15.0%−3.3
Carshalton and WallingtonLDLD3.2%+5.7
Castle PointConCon19.7%−3.9
Central AyrshireLabSNP gain26.8%−9.1
Central DevonConCon39.1%+2.6
Central Suffolk and North IpswichConCon37.2%−1.3
CeredigionLDLD8.2%+2.2
CharnwoodConCon32.4%−1.2
Chatham and AylesfordConCon26.6%−6.4
CheadleLDCon gain12.2%+2.3
ChelmsfordConCon33.9%+0.7
Chelsea and FulhamConCon39.8%+1.1
CheltenhamLDCon gain12.1%−1.4
Chesham and AmershamConCon45.4%+4.2
ChesterfieldLabLab29.8%+3.3
ChichesterConCon42.7%−0.3
Chingford and Woodford GreenConCon19.1%+5.5
ChippenhamLDCon gain18.2%−2.6
Chipping BarnetConCon14.4%+4.6
ChorleyLabLab8.8%+1.8
ChristchurchConCon36.7%−1.0
Cities of London and WestminsterConCon26.7%+1.6
City of ChesterConLab gain0.2%+2.9
City of DurhamLabLab25.1%−3.0
ClactonConUKIP gain7.8%+2.9
CleethorpesConCon17.5%−4.0
Clwyd SouthLabLab6.9%−0.7
Clwyd WestConCon17.7%−0.4
Coatbridge, Chryston and BellshillLabSNP gain22.7%−15.5
ColchesterLDCon gain11.5%−1.1
Colne ValleyConCon9.5%+0.6
CongletonConCon32.9%−2.2
CopelandLabLab6.5%−1.3
CorbyConCon4.3%−0.4
Coventry North EastLabLab29.1%+1.0
Coventry North WestLabLab10.0%−1.8
Coventry SouthLabLab7.3%−0.5
CrawleyConCon13.4%−0.5
Crewe and NantwichConCon7.3%+2.3
Croydon CentralConCon0.3%+2.7
Croydon NorthLabLab39.9%+4.0
Croydon SouthConCon29.7%+0.6
Cumbernauld, Kilsyth and Kirkintilloch EastLabSNP gain29.9%−13.4
Cynon ValleyLabLab30.9%−3.4
Dagenham and RainhamLabLab11.6%+5.6
DarlingtonLabLab7.7%−0.1
DartfordConCon23.6%−1.2
DaventryConCon40.1%+0.3
DelynLabLab7.8%+0.8
Denton and ReddishLabLab27.2%+0.5
Derby NorthLabCon gain0.1%−0.7
Derby SouthLabLab21.6%+3.4
Derbyshire DalesConCon29.7%+1.5
DevizesConCon42.3%+0.1
DewsburyConLab gain2.7%+2.8
Don ValleyLabLab20.9%+6.3
Doncaster CentralLabLab25.0%+6.7
Doncaster NorthLabLab29.8%+3.9
DoverConCon12.5%−1.0
Dudley NorthLabLab11.0%+4.7
Dudley SouthConCon11.2%−0.5
Dulwich and West NorwoodLabLab31.4%+3.5
Dumfries and GallowayLabSNP gain11.5%−9.7
Dumfriesshire, Clydesdale and TweeddaleConCon1.5%−7.9
Dundee EastSNPSNP39.8%−6.6
Dundee WestLabSNP gain38.2%−12.0
Dunfermline and West FifeLabSNP gain18.5%−9.8
Dwyfor MeirionnyddPCPC18.2%−0.4
Ealing Central and ActonConLab gain0.5%+4.2
Ealing NorthLabLab25.4%+3.0
Ealing, SouthallLabLab43.3%+10.8
EasingtonLabLab42.3%+1.4
East AntrimDUPDUP17.3%−0.8
East DevonConCon22.4%+0.7
East DunbartonshireLDSNP gain4.0%−7.5
East HamLabLab65.5%+5.1
East HampshireConCon48.7%−0.8
East Kilbride, Strathaven and LesmahagowLabSNP gain27.3%−11.0
East LondonderryDUPDUP22.5%−0.6
East LothianLabSNP gain11.5%−6.7
East RenfrewshireLabSNP gain6.6%−4.2
East SurreyConCon40.4%+1.1
East Worthing and ShorehamConCon30.0%+0.9
East YorkshireConCon29.9%−1.3
EastbourneLDCon gain1.4%+2.1
EastleighLDCon gain16.5%+0.2
EddisburyConCon27.4%+1.4
Edinburgh EastLabSNP gain19.3%−6.3
Edinburgh North and LeithLabSNP gain9.7%−3.7
Edinburgh SouthLabLab5.4%+4.2
Edinburgh South WestLabSNP gain15.8%−5.8
Edinburgh WestLDSNP gain5.9%−2.6
EdmontonLabLab37.3%+6.7
Ellesmere Port and NestonLabLab13.4%+1.8
Elmet and RothwellConCon14.7%−3.3
ElthamLabLab6.2%+1.1
Enfield NorthConLab gain2.4%+3.1
Enfield, SouthgateConCon10.4%+3.4
Epping ForestConCon36.4%+0.5
Epsom and EwellConCon42.8%+0.8
ErewashConCon7.4%−1.1
Erith and ThamesmeadLabLab22.4%+4.5
Esher and WaltonConCon50.2%−1.0
ExeterLabLab13.3%+4.0
FalkirkLabSNP gain32.7%−10.8
FarehamConCon40.7%−0.4
Faversham and Mid KentConCon36.4%+0.7
Feltham and HestonLabLab23.2%+6.8
Fermanagh and South TyroneSFUUP gain1.0%0
Filton and Bradley StokeConCon20.0%−2.9
Finchley and Golders GreenConCon11.2%+0.6
Folkestone and HytheConCon25.1%+2.6
Forest of DeanConCon22.2%+0.3
FoyleSDLPSDLP16.3%−0.2
FyldeConCon30.4%+1.1
GainsboroughConCon31.4%+1.1
Garston and HalewoodLabLab55.4%+6.0
GatesheadLabLab39.0%+1.5
GedlingLabLab6.2%+1.2
Gillingham and RainhamConCon22.4%−1.9
Glasgow CentralLabSNP gain19.5%−9.0
Glasgow EastLabSNP gain24.5%−15.3
Glasgow NorthLabSNP gain25.2%−8.7
Glasgow North EastLabSNP gain24.4%−17.0
Glasgow North WestLabSNP gain23.6%−10.8
Glasgow SouthLabSNP gain25.2%−10.1
Glasgow South WestLabSNP gain24.3%−14.0
GlenrothesLabSNP gain29.2%−16.1
GloucesterConCon13.8%−4.5
GordonLDSNP gain14.9%−3.6
GosportConCon35.9%−3.0
GowerLabCon gain0.1%−3.3
Grantham and StamfordConCon35.3%−1.8
GraveshamConCon16.7%+1.5
Great GrimsbyLabLab13.5%+5.7
Great YarmouthConCon13.8%−2.0
Greenwich and WoolwichLabLab25.6%+0.5
GuildfordConCon41.6%+1.6
Hackney North and Stoke NewingtonLabLab48.1%+3.8
Hackney South and ShoreditchLabLab50.9%+4.3
Halesowen and Rowley RegisConCon7.0%−1.2
HalifaxLabLab1.0%−1.2
Haltemprice and HowdenConCon33.2%+0.7
HaltonLabLab45.1%+3.8
HammersmithLabLab13.6%+3.1
Hampstead and KilburnLabLab2.1%+1.0
HarboroughConCon37.4%−0.6
HarlowConCon18.9%−3.8
Harrogate and KnaresboroughConCon30.7%−1.6
Harrow EastConCon9.7%−1.3
Harrow WestLabLab4.7%−1.0
HartlepoolLabLab7.7%+0.2
Harwich and North EssexConCon31.3%−2.2
Hastings and RyeConCon9.4%−2.7
HavantConCon31.1%−1.2
Hayes and HarlingtonLabLab34.9%+4.7
Hazel GroveLDCon gain15.2%−1.3
Hemel HempsteadConCon29.1%0
HemsworthLabLab28.5%+3.0
HendonConCon7.5%−3.6
HenleyConCon45.9%−0.3
Hereford and South HerefordshireConCon35.7%−0.4
Hertford and StortfordConCon38.2%+0.9
HertsmereConCon36.9%+0.2
HexhamConCon27.8%−1.8
Heywood and MiddletonLabLab10.9%+5.5
High PeakConCon9.6%−0.2
Hitchin and HarpendenConCon36.2%+2.4
Holborn and St PancrasLabLab31.0%+2.7
Hornchurch and UpminsterConCon23.7%+0.9
Hornsey and Wood GreenLDLab gain19.1%+12.2
HorshamConCon43.3%−0.3
Houghton and Sunderland SouthLabLab33.6%+3.9
HoveConLab gain2.4%+3.1
HuddersfieldLabLab18.2%+3.6
HuntingdonConCon34.7%+1.6
HyndburnLabLab10.3%+1.5
Ilford NorthConLab gain1.2%+6.3
Ilford SouthLabLab38.1%+8.0
InverclydeLabSNP gain24.8%−11.8
Inverness, Nairn, Badenoch and StrathspeyLDSNP gain18.8%−3.6
IpswichConCon7.7%−1.6
Isle of WightConCon19.5%+3.6
Islington NorthLabLab43.1%+1.4
Islington South and FinsburyLabLab28.7%+2.9
IslwynLabLab29.4%−0.7
JarrowLabLab36.0%+2.7
KeighleyConCon6.2%0
Kenilworth and SouthamConCon43.0%−1.9
KensingtonConCon21.1%+1.7
KetteringConCon26.7%−3.7
Kilmarnock and LoudounLabSNP gain25.3%−10.3
Kingston and SurbitonLDCon gain4.8%+1.2
Kingston upon Hull EastLabLab29.4%+2.2
Kingston upon Hull NorthLabLab36.5%+5.9
Kingston upon Hull West and HessleLabLab29.4%+4.7
KingswoodConCon18.7%−6.8
Kirkcaldy and CowdenbeathLabSNP gain18.9%−15.9
KnowsleyLabLab68.3%+4.8
Lagan ValleyDUPDUP32.7%−0.8
Lanark and Hamilton EastLabSNP gain18.3%−10.1
Lancaster and FleetwoodConLab gain3.0%+1.9
Leeds CentralLabLab37.7%+4.3
Leeds EastLabLab32.8%+2.8
Leeds North EastLabLab15.0%+2.7
Leeds North WestLDLD6.7%+8.5
Leeds WestLabLab27.9%+2.7
Leicester EastLabLab38.2%+4.4
Leicester SouthLabLab38.8%+7.3
Leicester WestLabLab20.9%+4.8
LeighLabLab31.2%+2.1
LewesLDCon gain2.1%+1.8
Lewisham EastLabLab33.4%+7.0
Lewisham West and PengeLabLab26.4%+5.4
Lewisham, DeptfordLabLab45.4%+2.6
Leyton and WansteadLabLab36.7%+7.6
LichfieldConCon35.3%−0.4
LincolnConCon3.1%−0.4
Linlithgow and East FalkirkLabSNP gain21.0%−9.4
Liverpool, RiversideLabLab55.3%+4.7
Liverpool, WaltonLabLab72.3%+5.6
Liverpool, WavertreeLabLab59.3%+6.8
Liverpool, West DerbyLabLab66.7%+6.8
LivingstonLabSNP gain29.3%−10.2
LlanelliLabLab18.4%−0.6
LoughboroughConCon17.7%−5.3
Louth and HorncastleConCon29.8%−0.4
LudlowConCon39.4%+2.0
Luton NorthLabLab22.3%+2.4
Luton SouthLabLab13.5%+4.0
MacclesfieldConCon29.9%−1.6
MaidenheadConCon54.0%−0.8
Maidstone and The WealdConCon21.4%+1.7
MakerfieldLabLab29.4%+1.9
MaldonConCon45.9%−0.8
Manchester CentralLabLab47.7%+3.4
Manchester, GortonLabLab57.3%+9.2
Manchester, WithingtonLDLab gain29.8%+7.3
MansfieldLabLab11.3%−0.6
Meon ValleyConCon46.2%−0.1
MeridenConCon35.7%−2.3
Merthyr Tydfil and RhymneyLabLab35.2%+3.8
Mid BedfordshireConCon40.2%−1.2
Mid DerbyshireConCon26.8%−1.5
Mid Dorset and North PooleLDCon gain22.7%−3.1
Mid NorfolkConCon33.1%−0.9
Mid SussexConCon42.2%+0.9
Mid UlsterSFSF33.3%−0.1
Mid WorcestershireConCon39.3%−1.5
MiddlesbroughLabLab38.2%+6.6
Middlesbrough South and East ClevelandLabLab5.0%+0.7
MidlothianLabSNP gain20.4%−8.4
Milton Keynes NorthConCon16.9%−0.1
Milton Keynes SouthConCon14.7%−2.7
Mitcham and MordenLabLab37.5%+3.1
Mole ValleyConCon46.2%−0.9
MonmouthConCon23.1%−0.4
MontgomeryshireConCon15.8%−2.6
MoraySNPSNP18.4%−6.1
Morecambe and LunesdaleConCon10.6%−4.3
Morley and OutwoodLabCon gain0.9%−1.6
Motherwell and WishawLabSNP gain24.7%−13.8
Na h-Eileanan an IarSNPSNP25.7%−3.7
NeathLabLab25.7%−2.4
New Forest EastConCon38.8%−0.5
New Forest WestConCon43.5%−0.1
NewarkConCon35.3%−1.9
NewburyConCon46.0%−0.2
Newcastle upon Tyne CentralLabLab36.1%+4.8
Newcastle upon Tyne EastLabLab31.9%+1.4
Newcastle upon Tyne NorthLabLab22.6%0
Newcastle-under-LymeLabLab1.5%−1.0
Newport EastLabLab13.4%−0.3
Newport WestLabLab8.7%−0.1
Newry and ArmaghSFSF8.4%−0.2
Newton AbbotConCon23.3%−0.7
Normanton, Pontefract and CastlefordLabLab33.6%+5.2
North AntrimDUPDUP27.6%−0.4
North Ayrshire and ArranLabSNP gain25.2%−9.3
North CornwallLDCon gain13.7%−1.0
North DevonLDCon gain13.3%−2.4
North DorsetConCon39.6%−1.0
North DownIndInd25.6%−2.2
North DurhamLabLab34.0%+2.3
North East BedfordshireConCon43.7%−2.0
North East CambridgeshireConCon32.6%−3.4
North East DerbyshireLabLab3.9%−0.6
North East FifeLDSNP gain9.6%−2.0
North East HampshireConCon55.4%−2.6
North East HertfordshireConCon36.5%+0.3
North East SomersetConCon24.9%−7.7
North HerefordshireConCon41.6%+0.2
North NorfolkLDLD8.2%+2.8
North ShropshireConCon31.4%+1.0
North SomersetConCon39.2%−0.5
North SwindonConCon22.6%−4.3
North ThanetConCon23.3%+0.1
North TynesideLabLab36.7%+2.2
North WarwickshireConCon6.3%−3.1
North West CambridgeshireConCon32.4%−0.5
North West DurhamLabLab23.5%+0.6
North West HampshireConCon43.4%+0.2
North West LeicestershireConCon22.1%−3.8
North West NorfolkConCon29.4%+5.7
North WiltshireConCon41.6%−1.3
Northampton NorthConCon8.2%−1.7
Northampton SouthConCon9.8%+2.8
Norwich NorthConCon10.2%−0.5
Norwich SouthLDLab gain15.8%+5.0
Nottingham EastLabLab33.8%+6.1
Nottingham NorthLabLab33.6%+4.9
Nottingham SouthLabLab16.0%+5.8
NuneatonConCon10.7%−3.0
Ochil and South PerthshireLabSNP gain17.6%−4.9
OgmoreLabLab37.0%−0.6
Old Bexley and SidcupConCon33.8%+0.5
Oldham East and SaddleworthLabLab13.5%+4.0
Oldham West and RoytonLabLab34.2%+7.0
Orkney and ShetlandLDLD3.6%−1.0
OrpingtonConCon40.8%+4.4
Oxford EastLabLab30.1%+3.3
Oxford West and AbingdonConCon16.7%−0.6
Paisley and Renfrewshire NorthLabSNP gain18.0%−9.5
Paisley and Renfrewshire SouthLabSNP gain12.3%−9.3
PendleConCon12.3%−2.2
Penistone and StocksbridgeLabLab14.4%+3.9
Penrith and The BorderConCon45.3%−2.4
Perth and North PerthshireSNPSNP17.8%−5.2
PeterboroughConCon4.1%+3.4
Plymouth, Moor ViewLabCon gain2.4%−3.1
Plymouth, Sutton and DevonportConCon1.1%+0.8
PontypriddLabLab23.7%+0.6
PooleConCon33.3%−1.2
Poplar and LimehouseLabLab33.2%+10.1
Portsmouth NorthConCon23.2%−3.3
Portsmouth SouthLDCon gain12.5%+2.2
Preseli PembrokeshireConCon12.3%−0.3
PrestonLabLab36.1%+4.8
PudseyConCon8.8%−2.7
PutneyConCon23.8%+0.4
Rayleigh and WickfordConCon32.4%+0.6
Reading EastConCon12.9%+2.1
Reading WestConCon13.7%−0.6
RedcarLDLab gain25.4%+4.4
RedditchConCon16.0%−1.4
ReigateConCon43.5%−1.0
RhonddaLabLab23.6%−2.5
Ribble ValleyConCon26.0%+1.1
Richmond (Yorks)ConCon36.2%+4.7
Richmond ParkConCon38.9%−0.6
RochdaleLabLab27.4%+5.4
Rochester and StroodConCon13.6%−1.8
Rochford and Southend EastConCon21.7%+2.4
RomfordConCon28.2%+3.2
Romsey and Southampton NorthConCon36.6%+0.5
Ross, Skye and LochaberLDSNP gain12.3%−2.1
Rossendale and DarwenConCon11.5%−1.0
Rother ValleyLabLab15.5%+3.9
RotherhamLabLab22.3%+6.2
RugbyConCon21.1%−4.2
Ruislip, Northwood and PinnerConCon39.5%−0.8
Runnymede and WeybridgeConCon44.2%−0.9
RushcliffeConCon25.1%+2.7
Rutherglen and Hamilton WestLabSNP gain17.3%−11.7
Rutland and MeltonConCon39.8%−1.7
Saffron WaldenConCon43.4%+0.2
Salford and EcclesLabLab29.0%+4.7
SalisburyConCon40.3%+0.7
Scarborough and WhitbyConCon13.0%+1.8
ScunthorpeLabLab8.5%+0.8
SedgefieldLabLab17.7%−2.0
Sefton CentralLabLab24.2%+8.1
Selby and AinstyConCon25.7%−1.0
SevenoaksConCon39.0%−0.2
Sheffield CentralLabLab39.2%+6.4
Sheffield South EastLabLab29.5%+1.4
Sheffield, Brightside and HillsboroughLabLab34.5%+1.0
Sheffield, HallamLDLD4.2%+14.8
Sheffield, HeeleyLabLab30.8%+3.4
SherwoodConCon9.2%−4.4
ShipleyConCon19.0%+0.5
Shrewsbury and AtchamConCon17.7%+2.8
Sittingbourne and SheppeyConCon24.6%−2.2
Skipton and RiponConCon38.1%+1.2
Sleaford and North HykehamConCon38.9%−2.1
SloughLabLab15.2%+1.8
SolihullLDCon gain23.6%−2.6
Somerton and FromeLDCon gain33.6%−2.8
South AntrimDUPUUP gain2.6%−0.6
South Basildon and East ThurrockConCon16.9%−2.6
South CambridgeshireConCon33.5%+1.9
South DerbyshireConCon22.6%−4.2
South DorsetConCon24.7%−4.9
South DownSDLPSDLP13.8%−0.4
South East CambridgeshireConCon28.3%+3.5
South East CornwallConCon33.7%−1.6
South Holland and The DeepingsConCon37.7%−1.0
South LeicestershireConCon31.2%−1.3
South NorfolkConCon35.9%+0.1
South NorthamptonshireConCon43.4%−2.8
South RibbleConCon11.4%−0.3
South ShieldsLabLab29.3%+2.1
South StaffordshireConCon41.1%−4.1
South SuffolkConCon33.8%−0.2
South SwindonConCon11.7%−2.1
South ThanetConCon5.7%+1.1
South West BedfordshireConCon34.7%−0.8
South West DevonConCon39.9%+1.8
South West HertfordshireConCon40.6%+1.1
South West NorfolkConCon27.7%−1.9
South West SurreyConCon50.0%+1.2
South West WiltshireConCon35.2%+0.5
Southampton, ItchenLabCon gain5.2%−2.8
Southampton, TestLabLab8.7%+1.6
Southend WestConCon31.5%+0.6
SouthportLDLD3.0%+8.8
SpelthorneConCon28.8%−0.3
St AlbansConCon23.4%−0.1
St Austell and NewquayLDCon gain16.2%+1.4
St Helens NorthLabLab37.4%+4.0
St Helens South and WhistonLabLab43.9%+4.4
St IvesLDCon gain5.1%+0.9
StaffordConCon18.8%−4.0
Staffordshire MoorlandsConCon23.9%−4.3
Stalybridge and HydeLabLab16.3%+4.8
StevenageConCon10.4%−1.2
StirlingLabSNP gain20.1%−7.7
StockportLabLab25.4%+4.0
Stockton NorthLabLab21.1%+2.1
Stockton SouthConCon9.7%−4.5
Stoke-on-Trent CentralLabLab16.7%−0.5
Stoke-on-Trent NorthLabLab12.5%−4.0
Stoke-on-Trent SouthLabLab6.5%−1.9
StoneConCon34.6%−2.3
StourbridgeConCon14.5%−1.8
StrangfordDUPDUP30.0%−3.2
Stratford-on-AvonConCon44.5%−1.3
StreathamLabLab27.9%+1.7
Stretford and UrmstonLabLab25.2%+2.7
StroudConCon8.0%−2.9
Suffolk CoastalConCon33.9%−1.8
Sunderland CentralLabLab26.8%+5.5
Surrey HeathConCon45.6%−0.6
Sutton and CheamLDCon gain7.9%+2.5
Sutton ColdfieldConCon32.3%+0.7
Swansea EastLabLab35.8%+0.5
Swansea WestLabLab20.0%+3.1
TamworthConCon24.0%−5.4
TattonConCon40.3%−1.5
Taunton DeaneLDCon gain26.8%−0.9
TelfordLabCon gain1.8%−2.1
TewkesburyConCon39.7%−2.0
The CotswoldsConCon37.9%−2.5
The WrekinConCon23.6%−1.5
Thirsk and MaltonConCon37.2%+1.1
Thornbury and YateLDCon gain3.1%−1.6
ThurrockConCon1.1%−0.4
Tiverton and HonitonConCon37.5%0
Tonbridge and MallingConCon44.2%0
TootingLabLab5.3%+0.2
TorbayLDCon gain6.8%+0.1
TorfaenLabLab21.5%−1.6
Torridge and West DevonConCon32.5%+0.1
TotnesConCon38.8%−0.9
TottenhamLabLab55.4%+5.5
Truro and FalmouthConCon27.2%+1.6
Tunbridge WellsConCon44.5%+0.5
TwickenhamLDCon gain3.3%−1.7
TynemouthLabLab15.4%+2.3
Upper BannDUPDUP4.8%−0.2
Uxbridge and South RuislipConCon23.9%+0.5
Vale of ClwydLabCon gain0.7%−3.9
Vale of GlamorganConCon13.4%−2.3
VauxhallLabLab26.5%−0.9
WakefieldLabLab6.1%+1.2
WallaseyLabLab37.7%+8.6
Walsall NorthLabLab5.3%+1.3
Walsall SouthLabLab14.4%+5.0
WalthamstowLabLab55.5%+8.8
WansbeckLabLab28.2%0
WantageConCon37.3%+0.4
WarleyLabLab38.9%+5.4
Warrington NorthLabLab19.7%+2.2
Warrington SouthConCon4.6%−0.9
Warwick and LeamingtonConCon13.1%−2.9
Washington and Sunderland WestLabLab35.3%+2.7
WatfordConCon17.4%−4.6
WaveneyConCon4.6%−1.6
WealdenConCon40.3%+0.4
Weaver ValeConCon1.7%+0.3
WellingboroughConCon32.5%−4.9
WellsLDCon gain13.3%−2.2
Welwyn HatfieldConCon24.2%+5.7
Wentworth and DearneLabLab32.0%+4.5
West Aberdeenshire and KincardineLDSNP gain12.7%−3.9
West Bromwich EastLabLab25.3%+3.8
West Bromwich WestLabLab22.1%+3.9
West DorsetConCon28.6%+0.4
West DunbartonshireLabSNP gain27.7%−14.7
West HamLabLab53.0%+2.5
West LancashireLabLab16.8%+3.9
West SuffolkConCon30.4%+0.6
West TyroneSFSF26.0%−0.2
West WorcestershireConCon41.7%+0.4
Westminster NorthLabLab5.0%−0.2
Westmorland and LonsdaleLDLD18.3%+3.1
Weston-Super-MareConCon29.7%+1.8
WiganLabLab31.4%+3.8
WimbledonConCon26.1%+0.4
WinchesterConCon30.6%−1.8
WindsorConCon50.0%+0.5
Wirral SouthLabLab11.0%+4.8
Wirral WestConLab gain1.0%+3.6
WithamConCon41.5%−4.0
WitneyConCon43.0%+1.4
WokingConCon40.1%+1.1
WokinghamConCon43.2%−0.3
Wolverhampton North EastLabLab16.2%+4.5
Wolverhampton South EastLabLab31.0%+6.0
Wolverhampton South WestConLab gain2.0%+1.9
WorcesterConCon11.4%−2.6
WorkingtonLabLab12.2%+0.3
Worsley and Eccles SouthLabLab14.1%+1.9
Worthing WestConCon33.2%+2.1
WrexhamLabLab5.6%−2.9
WycombeConCon28.9%+1.2
Wyre and Preston NorthConCon28.4%+1.4
Wyre ForestConCon26.0%−1.7
Wythenshawe and Sale EastLabLab24.4%+2.9
YeovilLDCon gain9.3%−3.8
Ynys MônLabLab0.7%−0.5
York CentralLabLab14.1%+0.1
York OuterConCon24.4%+0.8

Swing is Conservative–Labour Butler swing in points; positive means towards Labour.

Official results House of Commons Library and UK Parliament election results data. Contains Parliamentary information licensed under the Open Parliament Licence v3.0. How we use this data