Fantasy Election collects anonymised data, so that at the end of the election we can look back proudly at everything we have achieved. We honestly don't use it for advertising or anything like that.
Clacton
Reform UK gain from Conservative
Old majority: 25,717
New majority: 8,405
Honiton and Sidmouth
Liberal Democrat gain from Conservative
Old majority: 26,229
New majority: 6,700
Chichester
Liberal Democrat gain from Conservative
Old majority: 19,622
New majority: 12,172
North Herefordshire
Green gain from Conservative
Old majority: 25,719
New majority: 5,894
Boston and Skegness
Reform UK gain from Conservative
Old majority: 27,402
New majority: 2,010
Waveney Valley
Green gain from Conservative
Old majority: 22,364
New majority: 5,594
Bristol Central
Green gain from Labour
Old majority: 16,696
New majority: 10,407
Yeovil
Liberal Democrat gain from Conservative
Old majority: 14,638
New majority: 12,268
Westmorland and Lonsdale
Liberal Democrat gain from Conservative
Old majority: 5,140
New majority: 21,472
North Cornwall
Liberal Democrat gain from Conservative
Old majority: 15,783
New majority: 10,767
Stratford-on-Avon
Liberal Democrat gain from Conservative
Old majority: 19,020
New majority: 7,122
Harpenden and Berkhamsted
Liberal Democrat gain from Conservative
Old majority: 15,044
New majority: 10,708
Tewkesbury
Liberal Democrat gain from Conservative
Old majority: 19,443
New majority: 6,262
Solihull West and Shirley
Conservative gain from Independent
Old majority: 20,798
New majority: 4,620
Wells and Mendip Hills
Liberal Democrat gain from Conservative
Old majority: 14,295
New majority: 11,121
Selby
Labour gain from Conservative
Old majority: 14,838
New majority: 10,195
South West Norfolk
Labour gain from Conservative
Old majority: 24,180
New majority: 630
Central Suffolk and North Ipswich
Conservative gain from Labour
Old majority: 20,213
New majority: 4,290
Tiverton and Minehead
Liberal Democrat gain from Conservative
Old majority: 20,665
New majority: 3,507
Aldershot
Labour gain from Conservative
Old majority: 17,985
New majority: 5,683
Bury St Edmunds and Stowmarket
Labour gain from Conservative
Old majority: 22,085
New majority: 1,452
Lichfield
Labour gain from Conservative
Old majority: 22,609
New majority: 810
Tunbridge Wells
Liberal Democrat gain from Conservative
Old majority: 14,645
New majority: 8,687
Torbay
Liberal Democrat gain from Conservative
Old majority: 17,751
New majority: 5,349
Cannock Chase
Labour gain from Conservative
Old majority: 19,879
New majority: 3,214
North East Hampshire
Liberal Democrat gain from Conservative
Old majority: 22,433
New majority: 634
Leicester South
Independent gain from Labour
Old majority: 22,023
New majority: 979
Winchester
Liberal Democrat gain from Conservative
Old majority: 9,050
New majority: 13,821
Birmingham Perry Barr
Independent gain from Labour
Old majority: 22,325
New majority: 507
Hertford and Stortford
Labour gain from Conservative
Old majority: 17,806
New majority: 4,748
North Northumberland
Labour gain from Conservative
Old majority: 17,306
New majority: 5,067
East Kilbride and Strathaven
Labour gain from Scottish National Party
Old majority: 13,169
New majority: 9,057
South East Cornwall
Labour gain from Conservative
Old majority: 20,225
New majority: 1,911
Bootle
Labour hold
- 12,573 pts
Sherwood Forest
Labour gain from Conservative
Old majority: 16,290
New majority: 5,443
North East Somerset and Hanham
Labour gain from Conservative
Old majority: 16,389
New majority: 5,319
Sittingbourne and Sheppey
Labour gain from Conservative
Old majority: 21,337
New majority: 355
Congleton
Labour gain from Conservative
Old majority: 18,203
New majority: 3,387
North Devon
Liberal Democrat gain from Conservative
Old majority: 14,813
New majority: 6,744
Hornsey and Friern Barnet
Labour hold
+ 4,868 pts
Twickenham
Liberal Democrat hold
+ 8,383 pts
Chippenham
Liberal Democrat gain from Conservative
Old majority: 13,200
New majority: 8,138
Surrey Heath
Liberal Democrat gain from Conservative
Old majority: 15,552
New majority: 5,640
Kettering
Labour gain from Conservative
Old majority: 17,363
New majority: 3,820
Wokingham
Liberal Democrat gain from Conservative
Old majority: 12,750
New majority: 8,345
South Cotswolds
Liberal Democrat gain from Conservative
Old majority: 16,092
New majority: 4,973
Chatham and Aylesford
Labour gain from Conservative
Old majority: 18,992
New majority: 1,998
Dewsbury and Batley
Independent gain from Labour
Old majority: 14,009
New majority: 6,934
South Devon
Liberal Democrat gain from Conservative
Old majority: 13,719
New majority: 7,127
Glastonbury and Somerton
Liberal Democrat gain from Conservative
Old majority: 14,183
New majority: 6,611
South Derbyshire
Labour gain from Conservative
Old majority: 16,483
New majority: 4,168
Chorley
Speaker hold
+ 3,183 pts
Epsom and Ewell
Liberal Democrat gain from Conservative
Old majority: 16,856
New majority: 3,686
Taunton and Wellington
Liberal Democrat gain from Conservative
Old majority: 8,536
New majority: 11,939
Amber Valley
Labour gain from Conservative
Old majority: 16,891
New majority: 3,554
Liverpool West Derby
Labour hold
- 11,898 pts
Mid Sussex
Liberal Democrat gain from Conservative
Old majority: 13,665
New majority: 6,662
Edinburgh North and Leith
Labour gain from Scottish National Party
Old majority: 12,983
New majority: 7,268
Liverpool Walton
Labour hold
- 13,484 pts
West Dorset
Liberal Democrat gain from Conservative
Old majority: 12,388
New majority: 7,789
York Outer
Labour gain from Conservative
Old majority: 10,782
New majority: 9,391
Chelmsford
Liberal Democrat gain from Conservative
Old majority: 15,416
New majority: 4,753
North Warwickshire and Bedworth
Labour gain from Conservative
Old majority: 17,956
New majority: 2,198
North East Hertfordshire
Labour gain from Conservative
Old majority: 18,189
New majority: 1,923
Liverpool Garston
Labour hold
- 8,624 pts
Maidenhead
Liberal Democrat gain from Conservative
Old majority: 17,101
New majority: 2,963
Witney
Liberal Democrat gain from Conservative
Old majority: 15,674
New majority: 4,339
Morecambe and Lunesdale
Labour gain from Conservative
Old majority: 14,188
New majority: 5,815
South Norfolk
Labour gain from Conservative
Old majority: 17,175
New majority: 2,826
Woking
Liberal Democrat gain from Conservative
Old majority: 8,683
New majority: 11,246
Horsham
Liberal Democrat gain from Conservative
Old majority: 17,353
New majority: 2,517
St Albans
Liberal Democrat hold
+ 13,929 pts
Macclesfield
Labour gain from Conservative
Old majority: 10,711
New majority: 9,120
Hove and Portslade
Labour hold
+ 2,747 pts
Mansfield
Labour gain from Conservative
Old majority: 16,247
New majority: 3,485
Newton Abbot
Liberal Democrat gain from Conservative
Old majority: 17,456
New majority: 2,246
North West Leicestershire
Labour gain from Independent
Old majority: 18,548
New majority: 1,012
Tooting
Labour hold
+ 5,180 pts
Melksham and Devizes
Liberal Democrat gain from Conservative
Old majority: 17,028
New majority: 2,401
Suffolk Coastal
Labour gain from Conservative
Old majority: 18,355
New majority: 1,070
Redditch
Labour gain from Conservative
Old majority: 18,423
New majority: 789
Harlow
Labour gain from Conservative
Old majority: 16,694
New majority: 2,504
South Dorset
Labour gain from Conservative
Old majority: 18,147
New majority: 1,048
Colchester
Labour gain from Conservative
Old majority: 10,940
New majority: 8,250
Bicester and Woodstock
Liberal Democrat gain from Conservative
Old majority: 14,205
New majority: 4,958
York Central
Labour hold
+ 4,812 pts
Derbyshire Dales
Labour gain from Conservative
Old majority: 18,797
New majority: 350
Gillingham and Rainham
Labour gain from Conservative
Old majority: 15,119
New majority: 3,972
Great Yarmouth
Reform UK gain from Conservative
Old majority: 17,663
New majority: 1,426
Penrith and Solway
Labour gain from Conservative
Old majority: 13,760
New majority: 5,257
St Ives
Liberal Democrat gain from Conservative
Old majority: 5,227
New majority: 13,786
Ashford
Labour gain from Conservative
Old majority: 17,211
New majority: 1,779
Plymouth Moor View
Labour gain from Conservative
Old majority: 13,262
New majority: 5,604
Alloa and Grangemouth
Labour gain from Scottish National Party
Old majority: 12,727
New majority: 6,122
South Basildon and East Thurrock
Reform UK gain from Conservative
Old majority: 18,731
New majority: 98
Dulwich and West Norwood
Labour hold
- 6,174 pts
Basingstoke
Labour gain from Conservative
Old majority: 12,301
New majority: 6,484
Mitcham and Morden
Labour hold
+ 2,882 pts
Blackburn
Independent gain from Labour
Old majority: 18,616
New majority: 132
Mid Derbyshire
Labour gain from Conservative
Old majority: 16,816
New majority: 1,878
Poole
Labour gain from Conservative
Old majority: 18,608
New majority: 18
Montgomeryshire and Glyndwr
Labour gain from Conservative
Old majority: 14,765
New majority: 3,815
Shrewsbury
Labour gain from Conservative
Old majority: 7,175
New majority: 11,355
Knowsley
Labour hold
- 14,402 pts
Thurrock
Labour gain from Conservative
Old majority: 11,962
New majority: 6,474
St Austell and Newquay
Labour gain from Conservative
Old majority: 15,942
New majority: 2,470
Lewisham West and East Dulwich
Labour hold
- 5,426 pts
Hitchin
Labour gain from Conservative
Old majority: 11,264
New majority: 7,109
Greenwich and Woolwich
Labour hold
+ 3,083 pts
Bassetlaw
Labour gain from Conservative
Old majority: 12,588
New majority: 5,768
Stafford
Labour gain from Conservative
Old majority: 13,720
New majority: 4,595
Dunfermline and Dollar
Labour gain from Scottish National Party
Old majority: 10,073
New majority: 8,241
Gravesham
Labour gain from Conservative
Old majority: 15,581
New majority: 2,712
Sefton Central
Labour hold
+ 7,868 pts
Stourbridge
Labour gain from Conservative
Old majority: 15,133
New majority: 3,073
Edinburgh South West
Labour gain from Scottish National Party
Old majority: 11,982
New majority: 6,217
Henley and Thame
Liberal Democrat gain from Conservative
Old majority: 11,901
New majority: 6,267
Reading West and Mid Berkshire
Labour gain from Conservative
Old majority: 16,758
New majority: 1,361
Paisley and Renfrewshire North
Labour gain from Scottish National Party
Old majority: 11,753
New majority: 6,333
Lewisham East
Labour hold
- 1,906 pts
Hemel Hempstead
Labour gain from Conservative
Old majority: 13,161
New majority: 4,857
Clapham and Brixton Hill
Labour hold
+ 714 pts
Walthamstow
Labour hold
- 12,866 pts
Wallasey
Labour hold
- 1,426 pts
Mid Dorset and North Poole
Liberal Democrat gain from Conservative
Old majority: 16,570
New majority: 1,352
Worthing West
Labour gain from Conservative
Old majority: 13,912
New majority: 3,949
Filton and Bradley Stoke
Labour gain from Conservative
Old majority: 7,842
New majority: 10,000
Rugby
Labour gain from Conservative
Old majority: 13,395
New majority: 4,428
Frome and East Somerset
Liberal Democrat gain from Conservative
Old majority: 12,395
New majority: 5,415
Kilmarnock and Loudoun
Labour gain from Scottish National Party
Old majority: 12,659
New majority: 5,119
Newcastle upon Tyne North
Labour hold
+ 10,939 pts
Weston-super-Mare
Labour gain from Conservative
Old majority: 13,310
New majority: 4,409
Ribble Valley
Labour gain from Conservative
Old majority: 16,839
New majority: 856
Camborne and Redruth
Labour gain from Conservative
Old majority: 9,848
New majority: 7,806
Falkirk
Labour gain from Scottish National Party
Old majority: 12,578
New majority: 4,996
Thornbury and Yate
Liberal Democrat gain from Conservative
Old majority: 14,538
New majority: 3,014
Paisley and Renfrewshire South
Labour gain from Scottish National Party
Old majority: 11,023
New majority: 6,527
Northampton South
Labour gain from Conservative
Old majority: 13,324
New majority: 4,071
Swindon North
Labour gain from Conservative
Old majority: 13,250
New majority: 4,103
Aylesbury
Labour gain from Conservative
Old majority: 16,640
New majority: 630
Edinburgh South
Labour hold
+ 6,456 pts
Kingston and Surbiton
Liberal Democrat hold
+ 6,061 pts
Hamilton and Clyde Valley
Labour gain from Scottish National Party
Old majority: 7,758
New majority: 9,472
Norwich North
Labour gain from Conservative
Old majority: 6,365
New majority: 10,850
Richmond Park
Liberal Democrat hold
+ 9,430 pts
Bexleyheath and Crayford
Labour gain from Conservative
Old majority: 15,038
New majority: 2,114
North Norfolk
Liberal Democrat gain from Conservative
Old majority: 14,492
New majority: 2,585
North West Cambridgeshire
Labour gain from Conservative
Old majority: 17,032
New majority: 39
Banbury
Labour gain from Conservative
Old majority: 13,799
New majority: 3,256
Harrogate and Knaresborough
Liberal Democrat gain from Conservative
Old majority: 8,787
New majority: 8,238
Bathgate and Linlithgow
Labour gain from Scottish National Party
Old majority: 8,671
New majority: 8,323
East Worthing and Shoreham
Labour gain from Conservative
Old majority: 7,474
New majority: 9,519
Folkestone and Hythe
Labour gain from Conservative
Old majority: 13,239
New majority: 3,729
Ellesmere Port and Bromborough
Labour hold
+ 2,331 pts
St Neots and Mid Cambridgeshire
Liberal Democrat gain from Conservative
Old majority: 12,250
New majority: 4,621
Lowestoft
Labour gain from Conservative
Old majority: 14,850
New majority: 2,016
North Somerset
Labour gain from Conservative
Old majority: 16,184
New majority: 639
Burton and Uttoxeter
Labour gain from Conservative
Old majority: 14,496
New majority: 2,266
Lewes
Liberal Democrat gain from Conservative
Old majority: 4,126
New majority: 12,624
Nuneaton
Labour gain from Conservative
Old majority: 13,144
New majority: 3,479
Portsmouth North
Labour gain from Conservative
Old majority: 15,780
New majority: 780
Carlisle
Labour gain from Conservative
Old majority: 11,290
New majority: 5,200
Rochester and Strood
Labour gain from Conservative
Old majority: 13,553
New majority: 2,930
Edinburgh West
Liberal Democrat hold
+ 13,582 pts
Erewash
Labour gain from Conservative
Old majority: 10,606
New majority: 5,859
Halesowen
Labour gain from Conservative
Old majority: 12,082
New majority: 4,364
Widnes and Halewood
Labour hold
- 5,117 pts
Liverpool Wavertree
Labour hold
- 15,622 pts
Erith and Thamesmead
Labour hold
+ 3,314 pts
Didcot and Wantage
Liberal Democrat gain from Conservative
Old majority: 10,023
New majority: 6,233
Glasgow West
Labour gain from Scottish National Party
Old majority: 9,728
New majority: 6,446
Stretford and Urmston
Labour hold
+ 6,244 pts
Cumbernauld and Kirkintilloch
Labour gain from Scottish National Party
Old majority: 12,005
New majority: 4,144
Forest of Dean
Labour gain from Conservative
Old majority: 15,869
New majority: 278
Leeds North East
Labour hold
- 1,006 pts
Dunstable and Leighton Buzzard
Labour gain from Conservative
Old majority: 15,386
New majority: 667
Stoke-on-Trent South
Labour gain from Conservative
Old majority: 15,393
New majority: 627
Southend East and Rochford
Labour gain from Conservative
Old majority: 11,942
New majority: 4,027
Belfast West
Sinn Fein hold
+ 2,964 pts
Livingston
Labour gain from Scottish National Party
Old majority: 12,424
New majority: 3,528
Penistone and Stocksbridge
Labour gain from Conservative
Old majority: 7,210
New majority: 8,739
West Tyrone
Sinn Fein hold
+ 7,843 pts
Hexham
Labour gain from Conservative
Old majority: 12,186
New majority: 3,713
Dartford
Labour gain from Conservative
Old majority: 14,704
New majority: 1,192
Dwyfor Meirionnydd
Plaid Cymru hold
+ 5,996 pts
West Dunbartonshire
Labour gain from Scottish National Party
Old majority: 9,841
New majority: 6,010
Ealing Southall
Labour hold
- 2,473 pts
Lewisham North
Labour hold
- 13,167 pts
Dorking and Horley
Liberal Democrat gain from Conservative
Old majority: 10,381
New majority: 5,391
Buckingham and Bletchley
Labour gain from Conservative
Old majority: 13,345
New majority: 2,421
Scarborough and Whitby
Labour gain from Conservative
Old majority: 10,270
New majority: 5,408
Bristol North West
Labour hold
+ 8,434 pts
Streatham and Croydon North
Labour hold
- 4,435 pts
Ossett and Denby Dale
Labour gain from Conservative
Old majority: 11,027
New majority: 4,542
Bolton West
Labour gain from Conservative
Old majority: 10,619
New majority: 4,945
Crewe and Nantwich
Labour gain from Conservative
Old majority: 5,816
New majority: 9,727
Leeds South West and Morley
Labour gain from Conservative
Old majority: 7,114
New majority: 8,423
Edinburgh East and Musselburgh
Labour gain from Scottish National Party
Old majority: 11,796
New majority: 3,715
Dudley
Labour gain from Conservative
Old majority: 13,609
New majority: 1,900
Newry and Armagh
Sinn Fein hold
+ 5,820 pts
Lothian East
Labour gain from Scottish National Party
Old majority: 2,207
New majority: 13,265
Rossendale and Darwen
Labour gain from Conservative
Old majority: 9,834
New majority: 5,628
Islington South and Finsbury
Labour hold
- 4,003 pts
Tynemouth
Labour hold
+ 11,943 pts
Tottenham
Labour hold
- 15,054 pts
Whitehaven and Workington
Labour gain from Conservative
Old majority: 2,144
New majority: 13,286
Motherwell, Wishaw and Carluke
Labour gain from Scottish National Party
Old majority: 8,294
New majority: 7,085
North Shropshire
Liberal Democrat hold
+ 9,386 pts
Inverclyde and Renfrewshire West
Labour gain from Scottish National Party
Old majority: 8,933
New majority: 6,371
Sheffield Heeley
Labour hold
+ 3,084 pts
Southgate and Wood Green
Labour hold
- 114 pts
Hammersmith and Chiswick
Labour hold
+ 4,467 pts
Stockport
Labour hold
+ 3,258 pts
Swindon South
Labour gain from Conservative
Old majority: 5,650
New majority: 9,606
Peckham
Labour hold
- 11,325 pts
Stevenage
Labour gain from Conservative
Old majority: 8,562
New majority: 6,618
Nottingham East
Labour hold
- 3,780 pts
Vauxhall and Camberwell Green
Labour hold
- 4,113 pts
Salford
Labour hold
+ 853 pts
Hackney North and Stoke Newington
Labour hold
- 14,082 pts
Inverness, Skye and West Ross-shire
Liberal Democrat gain from Scottish National Party
Old majority: 12,865
New majority: 2,160
Esher and Walton
Liberal Democrat gain from Conservative
Old majority: 3,015
New majority: 12,003
South Ribble
Labour gain from Conservative
Old majority: 8,515
New majority: 6,501
Corby and East Northamptonshire
Labour gain from Conservative
Old majority: 8,676
New majority: 6,331
Hampstead and Highgate
Labour hold
+ 1,570 pts
Mid Ulster
Sinn Fein hold
+ 5,117 pts
Queen's Park and Maida Vale
Labour hold
- 3,961 pts
Bracknell
Labour gain from Conservative
Old majority: 14,129
New majority: 784
Oxford West and Abingdon
Liberal Democrat hold
+ 5,317 pts
Shipley
Labour gain from Conservative
Old majority: 6,242
New majority: 8,603
Isle of Wight West
Labour gain from Conservative
Old majority: 11,618
New majority: 3,177
Liverpool Riverside
Labour hold
- 18,007 pts
Ceredigion Preseli
Plaid Cymru hold
+ 13,346 pts
Bishop Auckland
Labour gain from Conservative
Old majority: 8,113
New majority: 6,672
Rushcliffe
Labour gain from Conservative
Old majority: 7,354
New majority: 7,426
Blackpool North and Fleetwood
Labour gain from Conservative
Old majority: 10,119
New majority: 4,647
Hackney South and Shoreditch
Labour hold
- 15,404 pts
Runcorn and Helsby
Labour hold
+ 8,917 pts
North East Derbyshire
Labour gain from Conservative
Old majority: 12,902
New majority: 1,753
Hartlepool
Labour gain from Conservative
Old majority: 6,940
New majority: 7,698
Wythenshawe and Sale East
Labour hold
+ 4,214 pts
Welwyn Hatfield
Labour gain from Conservative
Old majority: 10,773
New majority: 3,799
Cheadle
Liberal Democrat gain from Conservative
Old majority: 2,336
New majority: 12,235
Great Grimsby and Cleethorpes
Labour gain from Conservative
Old majority: 9,759
New majority: 4,803
East Thanet
Labour gain from Conservative
Old majority: 7,585
New majority: 6,971
Oxford East
Labour hold
- 1,494 pts
Eastbourne
Liberal Democrat gain from Conservative
Old majority: 2,168
New majority: 12,204
Bournemouth East
Labour gain from Conservative
Old majority: 8,817
New majority: 5,479
Brighton Pavilion
Green hold
- 5,340 pts
Gedling
Labour gain from Conservative
Old majority: 2,407
New majority: 11,881
Southend West and Leigh
Labour gain from Conservative
Old majority: 12,280
New majority: 1,949
Croydon West
Labour hold
- 5,864 pts
North Antrim
Traditional Unionist Voice gain from Democratic Unionist Party
Old majority: 13,765
New majority: 450
North East Fife
Liberal Democrat gain from Scottish National Party
Old majority: 728
New majority: 13,479
Monmouthshire
Labour gain from Conservative
Old majority: 10,837
New majority: 3,338
Calder Valley
Labour gain from Conservative
Old majority: 5,107
New majority: 8,991
Ealing Central and Acton
Labour hold
- 138 pts
Manchester Withington
Labour hold
- 11,315 pts
Leyton and Wanstead
Labour hold
- 7,157 pts
Ely and East Cambridgeshire
Liberal Democrat gain from Conservative
Old majority: 13,449
New majority: 495
Leeds North West
Labour gain from Conservative
Old majority: 2,001
New majority: 11,896
Stroud
Labour gain from Conservative
Old majority: 2,467
New majority: 11,411
Worcester
Labour gain from Conservative
Old majority: 6,758
New majority: 7,116
Midlothian
Labour gain from Scottish National Party
Old majority: 5,705
New majority: 8,167
East Renfrewshire
Labour gain from Scottish National Party
Old majority: 5,426
New majority: 8,421
Newbury
Liberal Democrat gain from Conservative
Old majority: 11,460
New majority: 2,377
Birkenhead
Labour hold
- 9,195 pts
Manchester Central
Labour hold
- 4,173 pts
Scunthorpe
Labour gain from Conservative
Old majority: 10,133
New majority: 3,542
West Lancashire
Labour hold
+ 5,299 pts
Crawley
Labour gain from Conservative
Old majority: 8,360
New majority: 5,235
Wimbledon
Liberal Democrat gain from Conservative
Old majority: 839
New majority: 12,610
Gorton and Denton
Labour hold
- 8,762 pts
Newcastle-under-Lyme
Labour gain from Conservative
Old majority: 8,265
New majority: 5,069
Plymouth Sutton and Devonport
Labour hold
+ 8,206 pts
Gloucester
Labour gain from Conservative
Old majority: 9,880
New majority: 3,431
Glasgow South
Labour gain from Scottish National Party
Old majority: 9,151
New majority: 4,154
Caithness, Sutherland and Easter Ross
Liberal Democrat gain from Scottish National Party
Old majority: 2,788
New majority: 10,489
Wolverhampton North East
Labour gain from Conservative
Old majority: 7,847
New majority: 5,422
Norwich South
Labour hold
+ 656 pts
Bournemouth West
Labour gain from Conservative
Old majority: 9,941
New majority: 3,224
Stoke-on-Trent North
Labour gain from Conservative
Old majority: 8,077
New majority: 5,082
Portsmouth South
Labour hold
+ 7,792 pts
Brent East
Labour hold
- 4,709 pts
Northampton North
Labour gain from Conservative
Old majority: 3,932
New majority: 9,014
Beckenham and Penge
Labour hold
+ 12,274 pts
Ipswich
Labour gain from Conservative
Old majority: 5,479
New majority: 7,403
East Ham
Labour hold
- 17,000 pts
Cramlington and Killingworth
Labour hold
+ 10,663 pts
Newcastle upon Tyne East and Wallsend
Labour gain from Independent
Old majority: 17,793
New majority: 12,817
Barrow and Furness
Labour gain from Conservative
Old majority: 7,436
New majority: 5,324
Airdrie and Shotts
Labour gain from Scottish National Party
Old majority: 5,201
New majority: 7,547
Enfield North
Labour hold
+ 3,883 pts
Colne Valley
Labour gain from Conservative
Old majority: 7,761
New majority: 4,963
Reading Central
Labour hold
+ 4,286 pts
Edmonton and Winchmore Hill
Labour hold
- 435 pts
Truro and Falmouth
Labour gain from Conservative
Old majority: 4,459
New majority: 8,151
Kingston upon Hull West and Haltemprice
Labour gain from Conservative
Old majority: 3,626
New majority: 8,979
Southport
Labour gain from Conservative
Old majority: 6,771
New majority: 5,789
Poplar and Limehouse
Labour hold
- 9,487 pts
Ealing North
Labour hold
+ 611 pts
Belfast South and Mid Down
Social Democratic & Labour Party hold
- 816 pts
Pendle and Clitheroe
Labour gain from Conservative
Old majority: 11,568
New majority: 902
Sheffield South East
Labour hold
+ 7,244 pts
Warwick and Leamington
Labour hold
+ 11,243 pts
Doncaster East and the Isle of Axholme
Labour gain from Conservative
Old majority: 10,085
New majority: 2,311
Leeds West and Pudsey
Labour hold
+ 9,429 pts
Lincoln
Labour gain from Conservative
Old majority: 3,514
New majority: 8,793
Glenrothes and Mid Fife
Labour gain from Scottish National Party
Old majority: 9,352
New majority: 2,954
Lancaster and Wyre
Labour gain from Conservative
Old majority: 3,012
New majority: 9,253
Spen Valley
Labour gain from Conservative
Old majority: 6,064
New majority: 6,188
Newton Aycliffe and Spennymoor
Labour gain from Conservative
Old majority: 3,408
New majority: 8,839
Milton Keynes Central
Labour gain from Conservative
Old majority: 4,952
New majority: 7,291
Broxtowe
Labour gain from Conservative
Old majority: 3,819
New majority: 8,403
Hastings and Rye
Labour gain from Conservative
Old majority: 3,532
New majority: 8,653
Richmond and Northallerton
Conservative hold
- 12,146 pts
Blaenau Gwent and Rhymney
Labour hold
- 786 pts
Central Ayrshire
Labour gain from Scottish National Party
Old majority: 5,304
New majority: 6,869
St Helens North
Labour gain from Independent
Old majority: 12,209
New majority: 12,169
Sutton and Cheam
Liberal Democrat gain from Conservative
Old majority: 8,351
New majority: 3,801
Earley and Woodley
Labour gain from Conservative
Old majority: 11,293
New majority: 848
South Cambridgeshire
Liberal Democrat gain from Conservative
Old majority: 1,498
New majority: 10,641
Arundel and South Downs
Conservative hold
- 11,971 pts
North Ayrshire and Arran
Labour gain from Scottish National Party
Old majority: 8,521
New majority: 3,551
Battersea
Labour hold
+ 6,013 pts
Hayes and Harlington
Labour hold
+ 2,770 pts
Wakefield and Rothwell
Labour gain from Conservative
Old majority: 2,626
New majority: 9,346
St Helens South and Whiston
Labour hold
- 4,775 pts
Exeter
Labour hold
+ 949 pts
Eltham and Chislehurst
Labour gain from Conservative
Old majority: 3,444
New majority: 8,429
Chester North and Neston
Labour hold
+ 5,479 pts
Cardiff South and Penarth
Labour hold
- 84 pts
Milton Keynes North
Labour gain from Conservative
Old majority: 6,327
New majority: 5,430
City of Durham
Labour hold
+ 7,100 pts
West Bromwich
Labour gain from Conservative
Old majority: 2,150
New majority: 9,554
Harrow East
Conservative hold
+ 2,693 pts
Mid Dunbartonshire
Liberal Democrat gain from Scottish National Party
Old majority: 1,986
New majority: 9,673
Stratford and Bow
Labour hold
- 14,857 pts
Coventry East
Labour hold
+ 4,335 pts
Sheffield Brightside and Hillsborough
Labour hold
- 991 pts
Bolsover
Labour gain from Conservative
Old majority: 5,273
New majority: 6,323
Holborn and St Pancras
Labour hold
- 11,194 pts
Gower
Labour hold
+ 8,386 pts
Guildford
Liberal Democrat gain from Conservative
Old majority: 3,117
New majority: 8,429
Birmingham Selly Oak
Labour hold
- 108 pts
Derby North
Labour gain from Conservative
Old majority: 2,540
New majority: 8,915
Coatbridge and Bellshill
Labour gain from Scottish National Party
Old majority: 5,084
New majority: 6,344
Mid Cheshire
Labour gain from Conservative
Old majority: 2,494
New majority: 8,927
Warrington South
Labour hold
+ 11,275 pts
Leeds South
Labour hold
- 2,607 pts
Leeds East
Labour hold
+ 8,542 pts
Bath
Liberal Democrat hold
- 907 pts
Finchley and Golders Green
Labour gain from Conservative
Old majority: 6,629
New majority: 4,581
Cardiff North
Labour hold
+ 3,628 pts
Smethwick
Labour hold
+ 214 pts
Coventry North West
Labour hold
+ 10,966 pts
Bristol North East
Labour hold
+ 5,703 pts
Tonbridge
Conservative hold
- 15,886 pts
Blaydon and Consett
Labour hold
+ 6,868 pts
Bridgend
Labour gain from Conservative
Old majority: 2,553
New majority: 8,595
Worsley and Eccles
Labour hold
+ 7,130 pts
Cambridge
Labour hold
+ 2,979 pts
Newcastle upon Tyne Central and West
Labour hold
- 4,671 pts
Barking
Labour hold
- 2,939 pts
Loughborough
Labour gain from Conservative
Old majority: 6,091
New majority: 4,960
Putney
Labour hold
+ 6,525 pts
Chesterfield
Labour hold
+ 9,369 pts
Kingston upon Hull North and Cottingham
Labour hold
+ 4,757 pts
Southampton Itchen
Labour gain from Conservative
Old majority: 4,498
New majority: 6,105
Brecon, Radnor and Cwm Tawe
Liberal Democrat gain from Conservative
Old majority: 9,091
New majority: 1,472
South Antrim
Ulster Unionist Party gain from Democratic Unionist Party
Old majority: 3,036
New majority: 7,512
Middlesbrough South and East Cleveland
Labour gain from Conservative
Old majority: 10,299
New majority: 214
Mid and South Pembrokeshire
Labour gain from Conservative
Old majority: 8,621
New majority: 1,878
Cowdenbeath and Kirkcaldy
Labour gain from Alba
Old majority: 3,220
New majority: 7,248
Leicester East
Conservative gain from Independent
Old majority: 5,999
New majority: 4,426
Rutland and Stamford
Conservative hold
- 15,143 pts
Aberafan Maesteg
Labour hold
- 3,103 pts
Altrincham and Sale West
Labour gain from Conservative
Old majority: 6,139
New majority: 4,174
Nottingham South
Labour hold
+ 253 pts
Blackley and Middleton South
Labour hold
- 1,308 pts
Coventry South
Labour hold
+ 9,393 pts
Eastleigh
Liberal Democrat gain from Conservative
Old majority: 8,641
New majority: 1,546
Glasgow East
Labour gain from Scottish National Party
Old majority: 6,276
New majority: 3,784
Wirral West
Labour hold
+ 9,543 pts
Stirling and Strathallan
Labour gain from Scottish National Party
Old majority: 8,556
New majority: 1,394
North Down
Independent gain from Alliance
Old majority: 2,641
New majority: 7,305
Clwyd East
Labour gain from Conservative
Old majority: 5,284
New majority: 4,622
Wrexham
Labour gain from Conservative
Old majority: 3,939
New majority: 5,948
Brentford and Isleworth
Labour hold
- 1,545 pts
Brighton Kemptown and Peacehaven
Labour gain from Independent
Old majority: 8,280
New majority: 9,663
Gateshead Central and Whickham
Labour hold
+ 3,733 pts
Doncaster Central
Labour hold
+ 8,280 pts
Wigan
Labour hold
+ 2,821 pts
Bedford
Labour hold
+ 8,317 pts
Nottingham North and Kimberley
Labour hold
+ 6,937 pts
Bury South
Labour hold
+ 8,426 pts
Southampton Test
Labour hold
+ 3,120 pts
South Down
Sinn Fein hold
+ 7,657 pts
West Ham and Beckton
Labour hold
- 12,683 pts
Middlesbrough and Thornaby East
Labour hold
- 1,949 pts
Warrington North
Labour hold
+ 7,677 pts
Wolverhampton South East
Labour hold
+ 6,815 pts
Leigh and Atherton
Labour gain from Conservative
Old majority: 293
New majority: 8,881
Blyth and Ashington
Labour hold
+ 3,055 pts
Chelsea and Fulham
Labour gain from Conservative
Old majority: 8,993
New majority: 152
Doncaster North
Labour hold
+ 7,056 pts
Glasgow North
Labour gain from Scottish National Party
Old majority: 5,582
New majority: 3,539
Cardiff East
Labour hold
- 7,982 pts
Caerfyrddin
Plaid Cymru gain from Conservative
Old majority: 4,529
New majority: 4,535
Newport East
Labour hold
+ 3,770 pts
Droitwich and Evesham
Conservative hold
- 16,636 pts
Jarrow and Gateshead East
Labour hold
- 1,353 pts
Glasgow North East
Labour gain from Scottish National Party
Old majority: 4,277
New majority: 4,637
Newport West and Islwyn
Labour hold
+ 6,867 pts
Glasgow South West
Labour gain from Scottish National Party
Old majority: 5,533
New majority: 3,285
Wolverhampton West
Labour gain from Conservative
Old majority: 934
New majority: 7,868
Alyn and Deeside
Labour hold
+ 8,383 pts
Leicester West
Labour hold
+ 3,895 pts
Rutherglen
Labour hold
- 679 pts
Cities of London and Westminster
Labour gain from Conservative
Old majority: 5,976
New majority: 2,708
Canterbury
Labour hold
+ 6,493 pts
Cheltenham
Liberal Democrat gain from Conservative
Old majority: 1,421
New majority: 7,210
Stalybridge and Hyde
Labour hold
+ 5,593 pts
Carshalton and Wallington
Liberal Democrat gain from Conservative
Old majority: 629
New majority: 7,905
Swansea West
Labour gain from Independent
Old majority: 10,037
New majority: 8,515
High Peak
Labour gain from Conservative
Old majority: 590
New majority: 7,908
New Forest East
Conservative hold
- 16,756 pts
East Grinstead and Uckfield
Conservative hold
- 11,811 pts
Weald of Kent
Conservative hold
- 20,329 pts
Leeds Central and Headingley
Labour hold
- 11,457 pts
Pontypridd
Labour hold
- 396 pts
Birmingham Edgbaston
Labour hold
+ 677 pts
Sheffield Central
Labour hold
- 12,487 pts
Manchester Rusholme
Labour hold
- 19,666 pts
Redcar
Labour gain from Conservative
Old majority: 4,878
New majority: 3,349
Bury North
Labour gain from Conservative
Old majority: 1,282
New majority: 6,944
Sheffield Hallam
Labour hold
+ 7,081 pts
Stoke-on-Trent Central
Labour gain from Conservative
Old majority: 1,715
New majority: 6,409
Telford
Labour gain from Independent
Old majority: 10,900
New majority: 8,102
Tipton and Wednesbury
Labour gain from Conservative
Old majority: 4,693
New majority: 3,385
Hertsmere
Conservative hold
- 14,988 pts
Feltham and Heston
Labour hold
+ 951 pts
Stockton North
Labour hold
+ 3,967 pts
Bolton North East
Labour gain from Conservative
Old majority: 1,278
New majority: 6,653
Barnsley North
Labour hold
+ 3,809 pts
Orkney and Shetland
Liberal Democrat hold
+ 5,300 pts
Rhondda and Ogmore
Labour hold
- 9,587 pts
Bermondsey and Old Southwark
Labour hold
- 728 pts
Bristol South
Labour hold
- 1,411 pts
Runnymede and Weybridge
Conservative hold
- 8,445 pts
Dover and Deal
Labour hold
- 4,836 pts
Ruislip, Northwood and Pinner
Conservative hold
- 8,229 pts
Thirsk and Malton
Conservative hold
- 15,787 pts
Luton North
Labour hold
- 1,230 pts
Christchurch
Conservative hold
- 17,579 pts
East Surrey
Conservative hold
- 13,115 pts
Merthyr Tydfil and Aberdare
Labour hold
- 5,963 pts
Upper Bann
Democratic Unionist Party hold
- 71 pts
Torfaen
Labour hold
+ 3,212 pts
Darlington
Labour gain from Conservative
Old majority: 4,968
New majority: 2,298
Islington North
Independent hold
- 18,941 pts
Rochdale
Labour gain from Workers Party of Britain
Old majority: 5,697
New majority: 1,539
North East Cambridgeshire
Conservative hold
- 18,590 pts
Dagenham and Rainham
Labour hold
+ 6,467 pts
Houghton and Sunderland South
Labour hold
+ 3,898 pts
Rother Valley
Labour gain from Conservative
Old majority: 6,135
New majority: 998
Chipping Barnet
Labour gain from Conservative
Old majority: 4,209
New majority: 2,914
Walsall and Bloxwich
Labour gain from Conservative
Old majority: 2,186
New majority: 4,914
Birmingham Erdington
Labour hold
+ 3,753 pts
Cardiff West
Labour hold
- 3,527 pts
Washington and Gateshead South
Labour hold
+ 2,975 pts
Rawmarsh and Conisbrough
Labour hold
+ 5,651 pts
Maldon
Conservative hold
- 25,095 pts
Ilford South
Labour hold
- 13,515 pts
Birmingham Northfield
Labour gain from Conservative
Old majority: 1,478
New majority: 5,389
Luton South and South Bedfordshire
Labour hold
+ 792 pts
South Holland and the Deepings
Conservative hold
- 23,982 pts
Blackpool South
Labour hold
- 759 pts
Sussex Weald
Conservative hold
- 16,322 pts
Croydon East
Labour hold
+ 3,412 pts
Ashton-under-Lyne
Labour hold
+ 2,102 pts
Vale of Glamorgan
Labour gain from Conservative
Old majority: 2,566
New majority: 4,216
Bolton South and Walkden
Labour hold
- 4,186 pts
Normanton and Hemsworth
Labour hold
+ 3,142 pts
South Shields
Labour hold
- 1,712 pts
Harrow West
Labour hold
- 2,456 pts
Pontefract, Castleford and Knottingley
Labour hold
+ 5,548 pts
Neath and Swansea East
Labour hold
- 1,824 pts
Bristol East
Labour hold
- 12,787 pts
Berwickshire, Roxburgh and Selkirk
Conservative hold
+ 1,451 pts
Kenilworth and Southam
Conservative hold
- 15,729 pts
West Worcestershire
Conservative hold
- 17,952 pts
Easington
Labour hold
- 1,310 pts
Hazel Grove
Liberal Democrat gain from Conservative
Old majority: 4,219
New majority: 6,500
Ayr, Carrick and Cumnock
Labour gain from Scottish National Party
Old majority: 2,329
New majority: 4,154
Windsor
Conservative hold
- 11,790 pts
Caerphilly
Labour hold
- 482 pts
Oldham East and Saddleworth
Labour hold
+ 4,858 pts
Kingswinford and South Staffordshire
Conservative hold
- 23,052 pts
Na h-Eileanan an Iar
Labour gain from Independent
Old majority: 2,438
New majority: 3,836
Halifax
Labour hold
+ 4,367 pts
Argyll, Bute and South Lochaber
Scottish National Party hold
+ 1,335 pts
Bradford East
Labour hold
- 11,572 pts
Wycombe
Labour gain from Conservative
Old majority: 1,494
New majority: 4,591
Heywood and Middleton North
Labour hold
+ 5,402 pts
Fareham and Waterlooville
Conservative hold
- 15,197 pts
Sunderland Central
Labour hold
+ 3,109 pts
Gosport
Conservative hold
- 17,224 pts
Watford
Labour gain from Conservative
Old majority: 1,300
New majority: 4,723
Derby South
Labour hold
- 17 pts
Brentwood and Ongar
Conservative hold
- 22,994 pts
North Durham
Labour hold
+ 1,449 pts
Mid Buckinghamshire
Conservative hold
- 16,776 pts
Epping Forest
Conservative hold
- 16,491 pts
Birmingham Hall Green and Moseley
Labour hold
- 20,851 pts
Bangor Aberconwy
Labour gain from Conservative
Old majority: 749
New majority: 4,896
Rayleigh and Wickford
Conservative hold
- 24,727 pts
Belfast North
Sinn Fein hold
+ 1,873 pts
New Forest West
Conservative hold
- 18,803 pts
Ashfield
Reform UK hold
+ 206 pts
South Leicestershire
Conservative hold
- 20,028 pts
Louth and Horncastle
Conservative hold
- 22,377 pts
Rotherham
Labour hold
+ 2,193 pts
Wellingborough and Rushden
Labour hold
- 950 pts
Stone, Great Wyrley and Penkridge
Conservative hold
- 16,456 pts
Beaconsfield
Conservative hold
- 8,317 pts
Chesham and Amersham
Liberal Democrat hold
- 2,577 pts
Sevenoaks
Conservative hold
- 16,353 pts
North Bedfordshire
Conservative hold
- 18,217 pts
Hinckley and Bosworth
Conservative hold
- 17,443 pts
Makerfield
Labour hold
+ 444 pts
Melton and Syston
Conservative hold
- 13,608 pts
Preston
Labour hold
- 6,559 pts
Witham
Conservative hold
- 20,524 pts
Strangford
Democratic Unionist Party hold
- 546 pts
Orpington
Conservative hold
- 15,509 pts
Oldham West, Chadderton and Royton
Labour hold
- 6,151 pts
North West Norfolk
Conservative hold
- 16,123 pts
Angus and Perthshire Glens
Scottish National Party hold
- 1,135 pts
Wetherby and Easingwold
Conservative hold
- 22,318 pts
Hamble Valley
Conservative hold
- 18,686 pts
Chingford and Woodford Green
Conservative hold
+ 3,153 pts
Barnsley South
Labour hold
+ 28 pts
East Wiltshire
Conservative hold
- 19,807 pts
Hyndburn
Labour gain from Conservative
Old majority: 2,951
New majority: 1,687
Meriden and Solihull East
Conservative hold
- 15,686 pts
Fermanagh and South Tyrone
Sinn Fein hold
+ 4,061 pts
Huddersfield
Labour hold
- 2,908 pts
Grantham and Bourne
Conservative hold
- 17,897 pts
South West Hertfordshire
Conservative hold
- 13,167 pts
Bradford South
Labour hold
+ 1,663 pts
Sleaford and North Hykeham
Conservative hold
- 20,334 pts
Aldridge-Brownhills
Conservative hold
- 18,464 pts
Dumfriesshire, Clydesdale and Tweeddale
Conservative hold
- 96 pts
Foyle
Social Democratic & Labour Party hold
- 12,247 pts
Perth and Kinross-shire
Scottish National Party hold
+ 1,763 pts
Clwyd North
Labour gain from Conservative
Old majority: 2,834
New majority: 1,196
Torridge and Tavistock
Conservative hold
- 18,949 pts
Kingston upon Hull East
Labour hold
+ 1,425 pts
Salisbury
Conservative hold
- 15,041 pts
Brent West
Labour hold
- 5,638 pts
Aberdeen South
Scottish National Party hold
- 1,705 pts
South Northamptonshire
Conservative hold
- 19,984 pts
Hendon
Labour gain from Conservative
Old majority: 3,661
New majority: 15
Braintree
Conservative hold
- 21,796 pts
Slough
Labour hold
- 9,700 pts
Goole and Pocklington
Conservative hold
- 18,730 pts
Newark
Conservative hold
- 18,125 pts
Old Bexley and Sidcup
Conservative hold
- 930 pts
Burnley
Labour gain from Conservative
Old majority: 127
New majority: 3,420
Gainsborough
Conservative hold
- 18,640 pts
West Aberdeenshire and Kincardine
Conservative hold
+ 2,598 pts
Birmingham Ladywood
Labour hold
- 29,162 pts
North Cotswolds
Conservative hold
- 17,640 pts
Aberdeenshire North and Moray East
Scottish National Party gain from Conservative
Old majority: 2,399
New majority: 942
Isle of Wight East
Conservative hold
- 8,796 pts
North West Hampshire
Conservative hold
- 18,219 pts
Castle Point
Conservative hold
- 23,758 pts
West Suffolk
Conservative hold
- 17,550 pts
South West Wiltshire
Conservative hold
- 14,135 pts
Brigg and Immingham
Conservative hold
- 21,201 pts
Reigate
Conservative gain from Independent
Old majority: 19,220
New majority: 3,187
Bridlington and the Wolds
Conservative hold
- 18,560 pts
Chester South and Eddisbury
Conservative hold
- 17,769 pts
Mid Norfolk
Conservative hold
- 17,334 pts
South Suffolk
Conservative hold
- 18,426 pts
Bromsgrove
Conservative hold
- 20,090 pts
Daventry
Conservative hold
- 23,600 pts
Lagan Valley
Alliance gain from Independent
Old majority: 7,475
New majority: 2,959
Kensington and Bayswater
Labour hold
+ 2,513 pts
Broxbourne
Conservative hold
- 16,334 pts
Belfast East
Democratic Unionist Party hold
+ 50 pts
Bexhill and Battle
Conservative hold
- 17,727 pts
North West Essex
Conservative hold
- 20,617 pts
Ynys Môn
Plaid Cymru gain from Conservative
Old majority: 1,968
New majority: 637
Sutton Coldfield
Conservative hold
- 16,729 pts
Mid Bedfordshire
Conservative gain from Labour
Old majority: 1,192
New majority: 1,321
Herne Bay and Sandwich
Conservative hold
- 17,873 pts
Peterborough
Labour gain from Conservative
Old majority: 2,333
New majority: 118
Harborough, Oadby and Wigston
Conservative hold
- 13,230 pts
Croydon South
Conservative hold
- 11,095 pts
Mid Leicestershire
Conservative hold
- 17,987 pts
Romsey and Southampton North
Conservative hold
- 14,060 pts
Stockton West
Conservative hold
- 9,610 pts
South West Devon
Conservative hold
- 20,978 pts
Hornchurch and Upminster
Conservative hold
- 19,792 pts
Bognor Regis and Littlehampton
Conservative hold
- 20,917 pts
Aberdeen North
Scottish National Party hold
- 12,450 pts
Bethnal Green and Stepney
Labour hold
- 29,966 pts
Maidstone and Malling
Conservative hold
- 17,774 pts
Skipton and Ripon
Conservative hold
- 20,867 pts
Keighley and Ilkley
Conservative hold
- 593 pts
South Shropshire
Conservative hold
- 27,012 pts
Spelthorne
Conservative hold
- 16,803 pts
North Dorset
Conservative hold
- 21,606 pts
Birmingham Hodge Hill and Solihull North
Labour hold
- 11,385 pts
Llanelli
Labour hold
- 2,289 pts
Huntingdon
Conservative hold
- 20,146 pts
Faversham and Mid Kent
Conservative hold
- 19,149 pts
Romford
Conservative hold
- 17,073 pts
Tamworth
Labour hold
+ 66 pts
Bridgwater
Conservative hold
- 15,375 pts
Farnham and Bordon
Conservative hold
- 12,228 pts
East Antrim
Democratic Unionist Party hold
- 5,089 pts
Hereford and South Herefordshire
Conservative hold
- 18,042 pts
East Hampshire
Conservative hold
- 18,925 pts
Staffordshire Moorlands
Conservative hold
- 16,484 pts
Harwich and North Essex
Conservative hold
- 16,489 pts
Tatton
Conservative hold
- 18,145 pts
Uxbridge and South Ruislip
Labour gain from Conservative
Old majority: 495
New majority: 587
Moray West, Nairn and Strathspey
Scottish National Party hold
- 1,905 pts
Dumfries and Galloway
Conservative hold
- 626 pts
Godalming and Ash
Conservative hold
- 9,829 pts
The Wrekin
Conservative hold
- 20,290 pts
Gordon and Buchan
Conservative hold
- 2,346 pts
Arbroath and Broughty Ferry
Scottish National Party hold
- 9,918 pts
Wyre Forest
Conservative hold
- 20,601 pts
Broadland and Fakenham
Conservative hold
- 19,106 pts
Bradford West
Labour hold
- 26,312 pts
Birmingham Yardley
Labour hold
- 12,448 pts
Dundee Central
Scottish National Party hold
- 14,546 pts
Fylde
Conservative hold
- 18,693 pts
Ilford North
Labour hold
- 8,502 pts
Bromley and Biggin Hill
Conservative hold
- 14,078 pts
East Londonderry
Democratic Unionist Party hold
- 9,528 pts
Beverley and Holderness
Conservative hold
- 17,852 pts
Exmouth and Exeter East
Conservative hold
- 8,688 pts
Havant
Conservative hold
- 21,700 pts
Central Devon
Conservative hold
- 17,239 pts
Basildon and Billericay
Conservative hold
- 20,729 pts