VoteClimate's Forecast For The Next General Election

VoteClimate's Forecast For The Next General Election

Based on the current opinion polls, we project that if a general election were held today the results would be as follows.

Labour: 67 seats short of a majority
Conservative: 106 seats short of a majority

Predicted vote shares (GB): Conservative: 26% | Labour: 25.5% | Reform: 21.5% | Liberal Democrat: 12.7% | Green: 8%

[Last updated: 31 December 2024]

Here is the predicted result in each constituency:

Constituency Predicted Winner
Aberafan Maesteg Labour
Aberdeen North SNP
Aberdeen South SNP
Aberdeenshire North and Moray East SNP
Airdrie and Shotts Labour
Aldershot Conservative
Aldridge-Brownhills Conservative
Alloa and Grangemouth Labour
Altrincham and Sale West Conservative
Alyn and Deeside Labour
Amber Valley Reform
Angus and Perthshire Glens SNP
Arbroath and Broughty Ferry SNP
Argyll, Bute and South Lochaber SNP
Arundel and South Downs Conservative
Ashfield Reform
Ashford Conservative
Ashton-under-Lyne Labour
Aylesbury Conservative
Ayr, Carrick and Cumnock Labour
Banbury Conservative
Bangor Aberconwy Labour
Barking Labour
Barnsley North Labour
Barnsley South Reform
Barrow and Furness Conservative
Basildon and Billericay Reform
Basingstoke Labour
Bassetlaw Labour
Bath Liberal Democrat
Bathgate and Linlithgow Labour
Battersea Labour
Beaconsfield Conservative
Beckenham and Penge Labour
Bedford Labour
Belfast East DUP
Belfast North Sinn Fein
Belfast South and Mid Down SDLP
Belfast West Sinn Fein
Bermondsey and Old Southwark Labour
Berwickshire, Roxburgh and Selkirk Conservative
Bethnal Green and Stepney Other
Beverley and Holderness Conservative
Bexhill and Battle Conservative
Bexleyheath and Crayford Conservative
Bicester and Woodstock Liberal Democrat
Birkenhead Labour
Birmingham Edgbaston Labour
Birmingham Erdington Labour
Birmingham Hall Green and Moseley Labour
Birmingham Hodge Hill and Solihull North Other
Birmingham Ladywood Other
Birmingham Northfield Labour
Birmingham Perry Barr Other
Birmingham Selly Oak Labour
Birmingham Yardley Other
Bishop Auckland Labour
Blackburn Other
Blackley and Middleton South Labour
Blackpool North and Fleetwood Conservative
Blackpool South Labour
Blaenau Gwent and Rhymney Labour
Blaydon and Consett Labour
Blyth and Ashington Labour
Bognor Regis and Littlehampton Conservative
Bolsover Labour
Bolton North East Reform
Bolton South and Walkden Labour
Bolton West Conservative
Bootle Labour
Boston and Skegness Reform
Bournemouth East Conservative
Bournemouth West Conservative
Bracknell Conservative
Bradford East Labour
Bradford South Reform
Bradford West Labour
Braintree Conservative
Brecon, Radnor and Cwm Tawe Liberal Democrat
Brent East Labour
Brent West Conservative
Brentford and Isleworth Labour
Brentwood and Ongar Conservative
Bridgend Labour
Bridgwater Conservative
Bridlington and The Wolds Conservative
Brigg and Immingham Conservative
Brighton Kemptown and Peacehaven Labour
Brighton Pavilion Green
Bristol Central Green
Bristol East Labour
Bristol North East Labour
Bristol North West Labour
Bristol South Labour
Broadland and Fakenham Conservative
Bromley and Biggin Hill Conservative
Bromsgrove Conservative
Broxbourne Conservative
Broxtowe Labour
Buckingham and Bletchley Conservative
Burnley Reform
Burton and Uttoxeter Conservative
Bury North Labour
Bury South Labour
Bury St Edmunds and Stowmarket Conservative
Caerfyrddin Plaid Cymru
Caerphilly Labour
Caithness, Sutherland and Easter Ross Liberal Democrat
Calder Valley Labour
Camborne and Redruth Labour
Cambridge Labour
Cannock Chase Reform
Canterbury Labour
Cardiff East Labour
Cardiff North Labour
Cardiff South and Penarth Labour
Cardiff West Labour
Carlisle Conservative
Carshalton and Wallington Liberal Democrat
Castle Point Conservative
Central Ayrshire Labour
Central Devon Conservative
Central Suffolk and North Ipswich Conservative
Ceredigion Preseli Plaid Cymru
Chatham and Aylesford Reform
Cheadle Liberal Democrat
Chelmsford Liberal Democrat
Chelsea and Fulham Conservative
Cheltenham Liberal Democrat
Chesham and Amersham Liberal Democrat
Chester North and Neston Labour
Chester South and Eddisbury Conservative
Chesterfield Labour
Chichester Liberal Democrat
Chingford and Woodford Green Conservative
Chippenham Liberal Democrat
Chipping Barnet Conservative
Chorley Other
Christchurch Conservative
Cities of London and Westminster Conservative
City of Durham Labour
Clacton Reform
Clapham and Brixton Hill Labour
Clwyd East Conservative
Clwyd North Conservative
Coatbridge and Bellshill Labour
Colchester Labour
Colne Valley Conservative
Congleton Conservative
Corby and East Northamptonshire Labour
Coventry East Labour
Coventry North West Labour
Coventry South Labour
Cowdenbeath and Kirkcaldy Labour
Cramlington and Killingworth Labour
Crawley Conservative
Crewe and Nantwich Labour
Croydon East Labour
Croydon South Conservative
Croydon West Labour
Cumbernauld and Kirkintilloch SNP
Dagenham and Rainham Labour
Darlington Conservative
Dartford Conservative
Daventry Conservative
Derby North Labour
Derby South Reform
Derbyshire Dales Conservative
Dewsbury and Batley Other
Didcot and Wantage Liberal Democrat
Doncaster Central Labour
Doncaster East and the Isle of Axholme Conservative
Doncaster North Labour
Dorking and Horley Liberal Democrat
Dover and Deal Reform
Droitwich and Evesham Conservative
Dudley Reform
Dulwich and West Norwood Labour
Dumfries and Galloway Conservative
Dumfriesshire, Clydesdale and Tweeddale Conservative
Dundee Central SNP
Dunfermline and Dollar Labour
Dunstable and Leighton Buzzard Conservative
Dwyfor Meirionnydd Plaid Cymru
Ealing Central and Acton Labour
Ealing North Labour
Ealing Southall Labour
Earley and Woodley Conservative
Easington Reform
East Antrim DUP
East Grinstead and Uckfield Conservative
East Ham Labour
East Hampshire Conservative
East Kilbride and Strathaven Labour
East Londonderry DUP
East Renfrewshire Labour
East Surrey Conservative
East Thanet Labour
East Wiltshire Conservative
East Worthing and Shoreham Labour
Eastbourne Liberal Democrat
Eastleigh Liberal Democrat
Edinburgh East and Musselburgh SNP
Edinburgh North and Leith Labour
Edinburgh South Labour
Edinburgh South West Labour
Edinburgh West Liberal Democrat
Edmonton and Winchmore Hill Labour
Ellesmere Port and Bromborough Labour
Eltham and Chislehurst Labour
Ely and East Cambridgeshire Conservative
Enfield North Labour
Epping Forest Conservative
Epsom and Ewell Liberal Democrat
Erewash Labour
Erith and Thamesmead Labour
Esher and Walton Liberal Democrat
Exeter Labour
Exmouth and Exeter East Conservative
Falkirk Labour
Fareham and Waterlooville Conservative
Farnham and Bordon Conservative
Faversham and Mid Kent Conservative
Feltham and Heston Labour
Fermanagh and South Tyrone Sinn Fein
Filton and Bradley Stoke Labour
Finchley and Golders Green Conservative
Folkestone and Hythe Reform
Forest of Dean Conservative
Foyle SDLP
Frome and East Somerset Liberal Democrat
Fylde Conservative
Gainsborough Conservative
Gateshead Central and Whickham Labour
Gedling Labour
Gillingham and Rainham Conservative
Glasgow East Labour
Glasgow North Labour
Glasgow North East Labour
Glasgow South Labour
Glasgow South West SNP
Glasgow West Labour
Glastonbury and Somerton Liberal Democrat
Glenrothes and Mid Fife SNP
Gloucester Conservative
Godalming and Ash Conservative
Goole and Pocklington Conservative
Gordon and Buchan Conservative
Gorton and Denton Labour
Gosport Conservative
Gower Labour
Grantham and Bourne Conservative
Gravesham Conservative
Great Grimsby and Cleethorpes Reform
Great Yarmouth Reform
Greenwich and Woolwich Labour
Guildford Liberal Democrat
Hackney North and Stoke Newington Labour
Hackney South and Shoreditch Labour
Halesowen Conservative
Halifax Reform
Hamble Valley Conservative
Hamilton and Clyde Valley Labour
Hammersmith and Chiswick Labour
Hampstead and Highgate Labour
Harborough, Oadby and Wigston Conservative
Harlow Conservative
Harpenden and Berkhamsted Liberal Democrat
Harrogate and Knaresborough Liberal Democrat
Harrow East Conservative
Harrow West Labour
Hartlepool Labour
Harwich and North Essex Conservative
Hastings and Rye Labour
Havant Conservative
Hayes and Harlington Labour
Hazel Grove Liberal Democrat
Hemel Hempstead Conservative
Hendon Conservative
Henley and Thame Liberal Democrat
Hereford and South Herefordshire Conservative
Herne Bay and Sandwich Conservative
Hertford and Stortford Conservative
Hertsmere Conservative
Hexham Conservative
Heywood and Middleton North Reform
High Peak Labour
Hinckley and Bosworth Conservative
Hitchin Labour
Holborn and St Pancras Labour
Honiton and Sidmouth Liberal Democrat
Hornchurch and Upminster Reform
Hornsey and Friern Barnet Labour
Horsham Liberal Democrat
Houghton and Sunderland South Reform
Hove and Portslade Labour
Huddersfield Labour
Huntingdon Conservative
Hyndburn Conservative
Ilford North Other
Ilford South Labour
Inverclyde and Renfrewshire West Labour
Inverness, Skye and West Ross-shire SNP
Ipswich Labour
Isle of Wight East Conservative
Isle of Wight West Conservative
Islington North Other
Islington South and Finsbury Labour
Jarrow and Gateshead East Labour
Keighley and Ilkley Conservative
Kenilworth and Southam Conservative
Kensington and Bayswater Conservative
Kettering Conservative
Kilmarnock and Loudoun Labour
Kingston and Surbiton Liberal Democrat
Kingston upon Hull East Reform
Kingston upon Hull North and Cottingham Labour
Kingston upon Hull West and Haltemprice Labour
Kingswinford and South Staffordshire Conservative
Knowsley Labour
Lagan Valley Alliance
Lancaster and Wyre Labour
Leeds Central and Headingley Labour
Leeds East Labour
Leeds North East Labour
Leeds North West Labour
Leeds South Labour
Leeds South West and Morley Labour
Leeds West and Pudsey Labour
Leicester East Conservative
Leicester South Other
Leicester West Labour
Leigh and Atherton Labour
Lewes Liberal Democrat
Lewisham East Labour
Lewisham North Labour
Lewisham West and East Dulwich Labour
Leyton and Wanstead Labour
Lichfield Conservative
Lincoln Labour
Liverpool Garston Labour
Liverpool Riverside Labour
Liverpool Walton Labour
Liverpool Wavertree Labour
Liverpool West Derby Labour
Livingston SNP
Llanelli Reform
Lothian East Labour
Loughborough Conservative
Louth and Horncastle Conservative
Lowestoft Reform
Luton North Labour
Luton South and South Bedfordshire Labour
Macclesfield Labour
Maidenhead Liberal Democrat
Maidstone and Malling Conservative
Makerfield Reform
Maldon Conservative
Manchester Central Labour
Manchester Rusholme Labour
Manchester Withington Labour
Mansfield Conservative
Melksham and Devizes Liberal Democrat
Melton and Syston Conservative
Meriden and Solihull East Conservative
Merthyr Tydfil and Aberdare Labour
Mid and South Pembrokeshire Conservative
Mid Bedfordshire Conservative
Mid Buckinghamshire Conservative
Mid Cheshire Labour
Mid Derbyshire Conservative
Mid Dorset and North Poole Liberal Democrat
Mid Dunbartonshire Liberal Democrat
Mid Leicestershire Conservative
Mid Norfolk Conservative
Mid Sussex Liberal Democrat
Mid Ulster Sinn Fein
Middlesbrough and Thornaby East Labour
Middlesbrough South and East Cleveland Conservative
Midlothian Labour
Milton Keynes Central Labour
Milton Keynes North Conservative
Mitcham and Morden Labour
Monmouthshire Conservative
Montgomeryshire and Glyndwr Reform
Moray West, Nairn and Strathspey SNP
Morecambe and Lunesdale Conservative
Motherwell, Wishaw and Carluke Labour
Na h-Eileanan an Iar Labour
Neath and Swansea East Reform
New Forest East Conservative
New Forest West Conservative
Newark Conservative
Newbury Liberal Democrat
Newcastle upon Tyne Central and West Labour
Newcastle upon Tyne East and Wallsend Labour
Newcastle upon Tyne North Labour
Newcastle-under-Lyme Labour
Newport East Labour
Newport West and Islwyn Labour
Newry and Armagh Sinn Fein
Newton Abbot Liberal Democrat
Newton Aycliffe and Spennymoor Labour
Normanton and Hemsworth Reform
North Antrim Other
North Ayrshire and Arran SNP
North Bedfordshire Conservative
North Cornwall Liberal Democrat
North Cotswolds Conservative
North Devon Liberal Democrat
North Dorset Conservative
North Down Other
North Durham Reform
North East Cambridgeshire Conservative
North East Derbyshire Conservative
North East Fife Liberal Democrat
North East Hampshire Conservative
North East Hertfordshire Conservative
North East Somerset and Hanham Conservative
North Herefordshire Green
North Norfolk Liberal Democrat
North Northumberland Conservative
North Shropshire Liberal Democrat
North Somerset Conservative
North Warwickshire and Bedworth Reform
North West Cambridgeshire Conservative
North West Essex Conservative
North West Hampshire Conservative
North West Leicestershire Conservative
North West Norfolk Conservative
Northampton North Labour
Northampton South Conservative
Norwich North Labour
Norwich South Labour
Nottingham East Labour
Nottingham North and Kimberley Labour
Nottingham South Labour
Nuneaton Conservative
Old Bexley and Sidcup Conservative
Oldham East and Saddleworth Reform
Oldham West, Chadderton and Royton Other
Orkney and Shetland Liberal Democrat
Orpington Conservative
Ossett and Denby Dale Conservative
Oxford East Labour
Oxford West and Abingdon Liberal Democrat
Paisley and Renfrewshire North Labour
Paisley and Renfrewshire South Labour
Peckham Labour
Pendle and Clitheroe Conservative
Penistone and Stocksbridge Labour
Penrith and Solway Conservative
Perth and Kinross-shire SNP
Peterborough Conservative
Plymouth Moor View Labour
Plymouth Sutton and Devonport Labour
Pontefract, Castleford and Knottingley Reform
Pontypridd Labour
Poole Conservative
Poplar and Limehouse Labour
Portsmouth North Conservative
Portsmouth South Labour
Preston Labour
Putney Labour
Queen's Park and Maida Vale Labour
Rawmarsh and Conisbrough Labour
Rayleigh and Wickford Conservative
Reading Central Labour
Reading West and Mid Berkshire Conservative
Redcar Conservative
Redditch Conservative
Reigate Conservative
Rhondda and Ogmore Labour
Ribble Valley Conservative
Richmond and Northallerton Conservative
Richmond Park Liberal Democrat
Rochdale Other
Rochester and Strood Conservative
Romford Conservative
Romsey and Southampton North Conservative
Rossendale and Darwen Labour
Rother Valley Conservative
Rotherham Reform
Rugby Conservative
Ruislip, Northwood and Pinner Conservative
Runcorn and Helsby Labour
Runnymede and Weybridge Conservative
Rushcliffe Conservative
Rutherglen Labour
Rutland and Stamford Conservative
Salford Labour
Salisbury Conservative
Scarborough and Whitby Labour
Scunthorpe Conservative
Sefton Central Labour
Selby Labour
Sevenoaks Conservative
Sheffield Brightside and Hillsborough Labour
Sheffield Central Labour
Sheffield Hallam Labour
Sheffield Heeley Labour
Sheffield South East Labour
Sherwood Forest Reform
Shipley Labour
Shrewsbury Labour
Sittingbourne and Sheppey Reform
Skipton and Ripon Conservative
Sleaford and North Hykeham Conservative
Slough Other
Smethwick Labour
Solihull West and Shirley Conservative
South Antrim UUP
South Basildon and East Thurrock Reform
South Cambridgeshire Liberal Democrat
South Cotswolds Liberal Democrat
South Derbyshire Conservative
South Devon Liberal Democrat
South Dorset Conservative
South Down Sinn Fein
South East Cornwall Conservative
South Holland and The Deepings Conservative
South Leicestershire Conservative
South Norfolk Conservative
South Northamptonshire Conservative
South Ribble Labour
South Shields Labour
South Shropshire Conservative
South Suffolk Conservative
South West Devon Conservative
South West Hertfordshire Conservative
South West Norfolk Reform
South West Wiltshire Conservative
Southampton Itchen Labour
Southampton Test Labour
Southend East and Rochford Conservative
Southend West and Leigh Conservative
Southgate and Wood Green Labour
Southport Labour
Spelthorne Conservative
Spen Valley Reform
St Albans Liberal Democrat
St Austell and Newquay Conservative
St Helens North Labour
St Helens South and Whiston Labour
St Ives Liberal Democrat
St Neots and Mid Cambridgeshire Liberal Democrat
Stafford Conservative
Staffordshire Moorlands Conservative
Stalybridge and Hyde Labour
Stevenage Labour
Stirling and Strathallan SNP
Stockport Labour
Stockton North Labour
Stockton West Conservative
Stoke-on-Trent Central Labour
Stoke-on-Trent North Reform
Stoke-on-Trent South Conservative
Stone, Great Wyrley and Penkridge Conservative
Stourbridge Conservative
Strangford DUP
Stratford and Bow Labour
Stratford-on-Avon Liberal Democrat
Streatham and Croydon North Labour
Stretford and Urmston Labour
Stroud Labour
Suffolk Coastal Conservative
Sunderland Central Reform
Surrey Heath Liberal Democrat
Sussex Weald Conservative
Sutton and Cheam Liberal Democrat
Sutton Coldfield Conservative
Swansea West Labour
Swindon North Conservative
Swindon South Labour
Tamworth Conservative
Tatton Conservative
Taunton and Wellington Liberal Democrat
Telford Labour
Tewkesbury Liberal Democrat
The Wrekin Conservative
Thirsk and Malton Conservative
Thornbury and Yate Liberal Democrat
Thurrock Reform
Tipton and Wednesbury Reform
Tiverton and Minehead Liberal Democrat
Tonbridge Conservative
Tooting Labour
Torbay Liberal Democrat
Torfaen Labour
Torridge and Tavistock Conservative
Tottenham Labour
Truro and Falmouth Labour
Tunbridge Wells Liberal Democrat
Twickenham Liberal Democrat
Tynemouth Labour
Upper Bann DUP
Uxbridge and South Ruislip Conservative
Vale of Glamorgan Conservative
Vauxhall and Camberwell Green Labour
Wakefield and Rothwell Labour
Wallasey Labour
Walsall and Bloxwich Reform
Walthamstow Labour
Warrington North Labour
Warrington South Labour
Warwick and Leamington Labour
Washington and Gateshead South Reform
Watford Conservative
Waveney Valley Green
Weald of Kent Conservative
Wellingborough and Rushden Labour
Wells and Mendip Hills Liberal Democrat
Welwyn Hatfield Conservative
West Aberdeenshire and Kincardine Conservative
West Bromwich Labour
West Dorset Liberal Democrat
West Dunbartonshire Labour
West Ham and Beckton Labour
West Lancashire Labour
West Suffolk Conservative
West Tyrone Sinn Fein
West Worcestershire Conservative
Westmorland and Lonsdale Liberal Democrat
Weston-super-Mare Conservative
Wetherby and Easingwold Conservative
Whitehaven and Workington Labour
Widnes and Halewood Labour
Wigan Labour
Wimbledon Liberal Democrat
Winchester Liberal Democrat
Windsor Conservative
Wirral West Labour
Witham Conservative
Witney Liberal Democrat
Woking Liberal Democrat
Wokingham Liberal Democrat
Wolverhampton North East Labour
Wolverhampton South East Labour
Wolverhampton West Labour
Worcester Labour
Worsley and Eccles Labour
Worthing West Conservative
Wrexham Labour
Wycombe Conservative
Wyre Forest Conservative
Wythenshawe and Sale East Labour
Yeovil Liberal Democrat
Ynys Mon Plaid Cymru
York Central Labour
York Outer Labour

See also: Electoral Analysis

Maximise your vote to save the planet.

Join Now