The Tories are at risk of getting fewer MPs than the Liberal Democrats, according to a mega-poll.
The bombshell survey of almost 20,000 people suggests 20 Cabinet ministers could lose their seats in the bloodbath – including Rishi Sunak.
The poll by Find Out Now and Electoral Calculus predicts that Keir Stamer is heading for a Labour landslide with an unprecedented majority of 250 seats. This would be an even bigger victory than Tony Blair’s historic win in 1997.
If the results are repeated next week on election day, Labour would pick up 450 seats The Tories would be reduced to just 60 MPs, behind the Lib Dems on 71.
Ministers on course to be ousted include the PM, despite him having a whopping 24,331 votes majority in Richmond and Northallerton in North Yorks. Other potential Cabinet casualties are Deputy PM Oliver Dowden, Chancellor Jeremy Hunt, Commons Leader Penny Mordaunt and Business Secretary Kemi Badenoch.
Grant Shapps, Michelle Donelan, Victoria Atkins, Claire Coutinho, Mel Stride, Esther McVey and Johnny Mercer are also at risk. Tories expected to survive who could fight a leadership election include James Cleverly, Tom Tugendhat and Laura Trott.
The poll suggested that Reform UK could win around 18 seats, including those of Nigel Farage, Richard Tice and Lee Anderson. Over the past fortnight, Find Out Now surveyed 19,993 people – which is around 10 times as many as a typical poll. The MRP (multi-level regression and post-stratification) method was used to successfully forecast the 2017 and 2019 elections.
Pollsters have found a wide variation when predicting the scale of the Tory defeat, but all have pointed to a catastrophic result for the party. Labour is set to do well by having its supporters better distributed throughout the country than in previous elections when it piled up votes in seats it already held while missing out in marginals it needed to win.
MRP poll projected results
Labour: 450 seats, up 247 seats
Lib Dems: 71 seats, up 60 seats
Conservatives: 60 seats, down 305 seats
SNP: 24 seats, down 24 seats
Reform UK: 18 seats, up 18 seats
Green Party: 4 seats, up 3 seats
Plaid Cymru: 4 seats, no change
Source: Find Out Now/Electoral Calculus.
Martin Baxter of Electoral Calculus, said: “The Conservatives are predicted to be in third place in terms of both votes and seats. That would be a disaster for them. Labour look set for a massive landslide, but with about one million fewer votes than Jeremy Corbyn got in 2017.”
It came as elections expert Professor Sir John Curtice warned that it was “too late” for Mr Sunak to turn things around. He said the PM has focused on the wrong things in the campaign, while also carrying the can for mistakes made by his predecessors.
Listen to our punchy General Election podcast The Division Bell
Listen to our new The Division Bell podcast, hosted by Mirror political editor John Stevens and Express political editor Sam Lister.
Each episode will see John and Sam go head-to-head on a political topic – so listeners can expect a lively discussion!
New episodes are available on Spotify, Apple Podcasts and YouTube every Tuesday and Thursday throughout the General Election campaign, with a special edition on the morning after polling day.
Speaking at an event in London, he suggested the Tories could end up with anything between 50 and 150 MPs after July 4. Asked if there was anything Mr Sunak could do at this late stage to revive things, Sir John said: “To be honest on Sunak it’s too late. You’re not going to turn around a campaign like that at this stage.”
He told the event hosted by iNHouse Communications: “The fundamental mistakes were made by Boris and Liz Truss. The fundamental mistakes they made were last autumn believing that tax cuts and a focus on immigration would be able to turn things around.
“Some of us could have told them, ‘no, no, no, this is not going to work. You need to focus on the health service and you need to focus on trying to improve the economy’. And those are the two things that the party has really not wanted to focus on.”
Find Out Now interviewed 19,993 adults in Britain online between June 14 and 24.
Full results – who will win your seat?
Seat Name – Predicted Winner
Aberafan Maesteg – Labour
Aberdeen North – SNP
Aberdeen South – SNP
Aberdeenshire North and Moray East – SNP
Aberdeenshire West and Kincardine – SNP
Airdrie and Shotts – Labour
Aldershot – Labour
Aldridge-Brownhills – Conservatives
Alloa and Grangemouth – SNP
Altrincham and Sale West – Labour
Alyn and Deeside – Labour
Amber Valley – Labour
Angus and Perthshire Glens – SNP
Arbroath and Broughty Ferry – SNP
Argyll, Bute and South Lochaber – SNP
Arundel and South Downs – Conservatives
Ashfield – Reform
Ashford – Labour
Ashton under Lyne – Labour
Aylesbury – Labour
Ayr Carrick and Cumnock – Labour
Ayrshire Central – Labour
Ayrshire North and Arran – SNP
Banbury – Labour
Bangor Aberconwy – Labour
Barking – Labour
Barnsley North – Labour
Barnsley South – Reform
Barrow and Furness – Labour
Basildon and Billericay – Labour
Basildon South and East Thurrock – Labour
Basingstoke – Labour
Bassetlaw – Labour
Bath – Lib Dems
Bathgate and Linlithgow – Labour
Battersea – Labour
Beaconsfield – Lib Dems
Beckenham and Penge – Labour
Bedford – Labour
Bedfordshire Mid – Labour
Bedfordshire North – Conservatives
Bermondsey and Old Southwark – Lib Dems
Berwickshire, Roxburgh and Selkirk – SNP
Bethnal Green and Stepney – Labour
Beverley and Holderness – Labour
Bexhill and Battle – Labour
Bexleyheath and Crayford – Labour
Bicester and Woodstock – Lib Dems
Birkenhead – Labour
Birmingham Edgbaston – Labour
Birmingham Erdington – Labour
Birmingham Hall Green and Moseley – Labour
Birmingham Hodge Hill and Solihull North – Labour
Birmingham Ladywood – Labour
Birmingham Northfield – Labour
Birmingham Perry Barr – Labour
Birmingham Selly Oak – Labour
Birmingham Yardley – Labour
Bishop Auckland – Labour
Blackburn – Labour
Blackley and Middleton South – Labour
Blackpool North and Fleetwood – Labour
Blackpool South – Labour
Blaenau Gwent and Rhymney – Labour
Blaydon and Consett – Labour
Blyth and Ashington – Labour
Bognor Regis and Littlehampton – Labour
Bolsover – Labour
Bolton North East – Labour
Bolton South and Walkden – Labour
Bolton West – Labour
Bootle – Labour
Boston and Skegness – Reform
Bournemouth East – Labour
Bournemouth West – Labour
Bracknell – Labour
Bradford East – Labour
Bradford South – Labour
Bradford West – Labour
Braintree – Conservatives
Brecon, Radnor and Cwm Tawe – Lib Dems
Brent East – Labour
Brent West – Labour
Brentford and Isleworth – Labour
Brentwood and Ongar – Labour
Bridgend – Labour
Bridgwater – Labour
Bridlington and the Wolds – Conservatives
Brigg and Immingham – Labour
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 – Reform
Bromley and Biggin Hill – Labour
Bromsgrove – Labour
Broxbourne – Conservatives
Broxtowe – Labour
Buckingham and Bletchley – Labour
Buckinghamshire Mid – Conservatives
Burnley – Labour
Burton and Uttoxeter – Reform
Bury North – Labour
Bury South – Labour
Bury St Edmunds and Stowmarket – Labour
Caerphilly – Labour
Caithness Sutherland and Easter Ross – Lib Dems
Calder Valley – Labour
Camborne and Redruth – Labour
Cambridge – Lib Dems
Cambridgeshire North East – Conservatives
Cambridgeshire North West – Labour
Cambridgeshire South – Lib Dems
Cannock Chase – Reform
Canterbury – Labour
Cardiff East – Labour
Cardiff North – Labour
Cardiff South and Penarth – Labour
Cardiff West – Labour
Carlisle – Labour
Carmarthen – Plaid Cymur
Carshalton and Wallington – Lib Dems
Castle Point – Labour
Ceredigion Preseli – Plaid Cymur
Chatham and Aylesford – Labour
Cheadle – Lib Dems
Chelmsford – Lib Dems
Chelsea and Fulham – Labour
Cheltenham – Lib Dems
Chesham and Amersham – Lib Dems
Cheshire Mid – Labour
Chester North and Neston – Labour
Chester South and Eddisbury – Labour
Chesterfield – Labour
Chichester – Lib Dems
Chingford and Woodford Green – Conservatives
Chippenham – Lib Dems
Chipping Barnet – Labour
Chorley – Labour
Christchurch – Conservatives
Cities of London and Westminster – Labour
Clacton – Reform
Clapham and Brixton Hill – Labour
Clwyd East – Labour
Clwyd North – Labour
Coatbridge and Bellshill – Labour
Colchester – Labour
Colne Valley – Labour
Congleton – Labour
Corby and East Northamptonshire – Labour
Cornwall North – Lib Dems
Cornwall South East – Labour
Cotswolds North – Reform
Cotswolds South – Lib Dems
Coventry East – Labour
Coventry North West – Labour
Coventry South – Labour
Cowdenbeath and Kirkcaldy – Labour
Cramlington and Killingworth – Labour
Crawley – Labour
Crewe and Nantwich – Labour
Croydon East – Labour
Croydon South – Labour
Croydon West – Labour
Cumbernauld and Kirkintilloch – SNP
Dagenham and Rainham – Labour
Darlington – Labour
Dartford – Labour
Daventry – Labour
Derby North – Labour
Derby South – Labour
Derbyshire Dales – Labour
Derbyshire Mid – Labour
Derbyshire North East – Conservatives
Derbyshire South – Labour
Devon Central – Labour
Devon North – Lib Dems
Devon South – Conservatives
Devon South West – Labour
Dewsbury and Batley – Labour
Didcot and Wantage – Lib Dems
Doncaster Central – Labour
Doncaster East and the Isle of Axholme – Labour
Doncaster North – Labour
Dorking and Horley – Lib Dems
Dorset Mid and Poole North – Conservatives
Dorset North – Conservatives
Dorset South – Labour
Dorset West – Lib Dems
Dover and Deal – Labour
Droitwich and Evesham – Conservatives
Dudley – Labour
Dulwich and West Norwood – Labour
Dumfries and Galloway – SNP
Dumfriesshire, Clydesdale and Tweeddale – Labour
Dunbartonshire West – Labour
Dundee Central – Labour
Dunfermline and Dollar – SNP
Dunstable and Leighton Buzzard – Conservatives
Durham North – Labour
Durham, City of – Labour
Dwyfor Meirionnydd – Plaid Cymur
Ealing Central and Acton – Labour
Ealing North – Labour
Ealing Southall – Labour
Earley and Woodley – Labour
Easington – Labour
East Grinstead and Uckfield – Conservatives
East Ham – Labour
East Kilbride and Strathaven – Labour
Eastbourne – Lib Dems
Eastleigh – Lib Dems
Edinburgh East and Musselburgh – SNP
Edinburgh North and Leith – SNP
Edinburgh South – Labour
Edinburgh South West – Labour
Edinburgh West – Lib Dems
Edmonton and Winchmore Hill – Labour
Ellesmere Port and Bromborough – Labour
Eltham and Chislehurst – Labour
Ely and East Cambridgeshire – Conservatives
Enfield North – Labour
Epping Forest – Conservatives
Epsom and Ewell – Lib Dems
Erewash – Labour
Erith and Thamesmead – Labour
Esher and Walton – Lib Dems
Essex North West – Labour
Exeter – Labour
Exmouth and Exeter East – Conservatives
Falkirk – SNP
Fareham and Waterlooville – Reform
Farnham and Bordon – Lib Dems
Faversham and Kent Mid – Labour
Feltham and Heston – Labour
Fife North East – Lib Dems
Filton and Bradley Stoke – Labour
Finchley and Golders Green – Conservatives
Folkestone and Hythe – Labour
Forest of Dean – Conservatives
Frome and East Somerset – Lib Dems
Fylde – Labour
Gainsborough – Labour
Gateshead Central and Whickham – Labour
Gedling – Labour
Gillingham and Rainham – Labour
Glasgow East – Labour
Glasgow North – Labour
Glasgow North East – Labour
Glasgow South – Labour
Glasgow South West – SNP
Glasgow West – Labour
Glastonbury and Somerton – Lib Dems
Glenrothes and Mid Fife – SNP
Gloucester – Labour
Godalming and Ash – Lib Dems
Goole and Pocklington – Conservatives
Gordon and Buchan – SNP
Gorton and Denton – Labour
Gosport – Reform
Gower – Labour
Grantham and Bourne – Labour
Gravesham – Labour
Great Grimsby and Cleethorpes – Labour
Great Yarmouth – Reform
Greenwich and Woolwich – Labour
Guildford – Lib Dems
Hackney North and Stoke Newington – Labour
Hackney South and Shoreditch – Labour
Halesowen – Labour
Halifax – Labour
Hamble Valley – Conservatives
Hamilton and Clyde Valley – Labour
Hammersmith and Chiswick – Labour
Hampshire East – Conservatives
Hampshire North East – Conservatives
Hampshire North West – Conservatives
Hampstead and Highgate – Labour
Harborough, Oadby and Wigston – Labour
Harlow – Conservatives
Harpenden and Berkhamsted – Lib Dems
Harrogate and Knaresborough – Lib Dems
Harrow East – Labour
Harrow West – Labour
Hartlepool – Labour
Harwich and North Essex – Labour
Hastings and Rye – Labour
Havant – Labour
Hayes and Harlington – Labour
Hazel Grove – Lib Dems
Hemel Hempstead – Labour
Hendon – Labour
Henley and Thame – Lib Dems
Hereford and South Herefordshire – Labour
Herefordshire North – Green
Herne Bay and Sandwich – Conservatives
Hertford and Stortford – Labour
Hertfordshire North East – Labour
Hertfordshire South West – Labour
Hertsmere – Labour
Hexham – Labour
Heywood and Middleton North – Labour
High Peak – Labour
Hinckley and Bosworth – Lib Dems
Hitchin – Labour
Holborn and St Pancras – Labour
Honiton and Sidmouth – Lib Dems
Hornchurch and Upminster – Conservatives
Hornsey and Friern Barnet – Labour
Horsham – Lib Dems
Houghton and Sunderland South – Labour
Hove and Portslade – Labour
Huddersfield – Labour
Hull East – Labour
Huntingdon – Reform
Hyndburn – Labour
Ilford North – Labour
Ilford South – Labour
Inverclyde and Renfrewshire West – Labour
Inverness, Skye and West Ross-shire – SNP
Ipswich – Labour
Isle of Wight East – Labour
Isle of Wight West – Labour
Islington North – Independent
Islington South and Finsbury – Labour
Jarrow and Gateshead East – Labour
Keighley and Ilkley – Conservatives
Kenilworth and Southam – Conservatives
Kensington and Bayswater – Labour
Kettering – Labour
Kilmarnock and Loudoun – Labour
Kingston and Surbiton – Lib Dems
Kingston upon Hull North and Cottingham – Labour
Kingston upon Hull West and Haltemprice – Labour
Kingswinford and South Staffordshire – Conservatives
Knowsley – Labour
Lancashire West – Labour
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 – Labour
Leicester South – Labour
Leicester West – Labour
Leicestershire Mid – Labour
Leicestershire North West – Labour
Leicestershire South – Conservatives
Leigh and Atherton – Labour
Lewes – Lib Dems
Lewisham East – Labour
Lewisham North – Labour
Lewisham West and East Dulwich – Labour
Leyton and Wanstead – Labour
Lichfield – Labour
Lincoln – Labour
Liverpool Garston – Labour
Liverpool Riverside – Labour
Liverpool Walton – Labour
Liverpool Wavertree – Labour
Liverpool West Derby – Labour
Livingston – Labour
Llanelli – Labour
Lothian East – Labour
Loughborough – Labour
Louth and Horncastle – Reform
Lowestoft – Labour
Luton North – Labour
Luton South and South Bedfordshire – Labour
Macclesfield – Labour
Maidenhead – Conservatives
Maidstone and Malling – Conservatives
Makerfield – Labour
Maldon – Conservatives
Manchester Central – Labour
Manchester Rusholme – Labour
Manchester Withington – Labour
Mansfield – Labour
Melksham and Devizes – Lib Dems
Melton and Syston – Labour
Meriden and Solihull East – Labour
Merthyr Tydfil and Aberdare – Labour
Mid Dunbartonshire – Lib Dems
Middlesbrough and Thornaby East – Labour
Middlesbrough South and Cleveland East – Labour
Midlothian – Labour
Milton Keynes Central – Labour
Milton Keynes North – Labour
Mitcham and Morden – Labour
Monmouthshire – Labour
Montgomeryshire and Glyndwr – Labour
Moray West, Nairn and Strathspey – SNP
Morecambe and Lunesdale – Labour
Motherwell, Wishaw and Carluke – SNP
Na h-Eileanan An Iar (Western Isles) – SNP
Neath and Swansea East – Labour
New Forest East – Conservatives
New Forest West – Conservatives
Newark – Labour
Newbury – Conservatives
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
Newton Abbot – Lib Dems
Newton Aycliffe and Spennymoor – Labour
Norfolk Mid – Labour
Norfolk North – Lib Dems
Norfolk North West – Conservatives
Norfolk South – Labour
Norfolk South West – Labour
Normanton and Hemsworth – Labour
Northampton North – Labour
Northampton South – Labour
Northamptonshire South – Labour
Northumberland North – Labour
Norwich North – Labour
Norwich South – Labour
Nottingham East – Labour
Nottingham North and Kimberley – Labour
Nottingham South – Labour
Nuneaton – Labour
Old Bexley and Sidcup – Labour
Oldham East and Saddleworth – Labour
Oldham West, Chadderton and Royton – Labour
Orkney and Shetland – Lib Dems
Orpington – Reform
Ossett and Denby Dale – Labour
Oxford East – Labour
Oxford West and Abingdon – Lib Dems
Paisley and Renfrewshire North – Labour
Paisley and Renfrewshire South – Labour
Peckham – Labour
Pembrokeshire Mid and South – Labour
Pendle and Clitheroe – Labour
Penistone and Stocksbridge – Labour
Penrith and Solway – Labour
Perth and Kinross-shire – SNP
Peterborough – Labour
Plymouth Moor View – Reform
Plymouth Sutton and Devonport – Labour
Pontefract, Castleford and Knottingley – Labour
Pontypridd – Plaid Cymur
Poole – Conservatives
Poplar and Limehouse – Labour
Portsmouth North – Labour
Portsmouth South – Labour
Preston – Labour
Putney – Labour
Queen’s Park and Maida Vale – Labour
Rawmarsh and Conisbrough – Labour
Rayleigh and Wickford – Labour
Reading Central – Labour
Reading West and Mid Berkshire – Labour
Redcar – Labour
Redditch – Labour
Reigate – Labour
Renfrewshire East – Labour
Rhondda and Ogmore – Labour
Ribble South – Labour
Ribble Valley – Labour
Richmond and Northallerton – Labour
Richmond Park – Lib Dems
Rochdale – Labour
Rochester and Strood – Labour
Romford – Labour
Romsey and Southampton North – Conservatives
Rossendale and Darwen – Labour
Rother Valley – Conservatives
Rotherham – Labour
Rugby – Labour
Ruislip, Northwood and Pinner – Conservatives
Runcorn and Helsby – Labour
Runnymede and Weybridge – Lib Dems
Rushcliffe – Labour
Rutherglen – Labour
Rutland and Stamford – Conservatives
Salford – Labour
Salisbury – Lib Dems
Scarborough and Whitby – Labour
Scunthorpe – Labour
Sefton Central – Labour
Selby – Labour
Sevenoaks – Conservatives
Sheffield Brightside and Hillsborough – Labour
Sheffield Central – Labour
Sheffield Hallam – Labour
Sheffield Heeley – Labour
Sheffield South East – Labour
Sherwood Forest – Labour
Shipley – Labour
Shrewsbury – Labour
Shropshire North – Lib Dems
Shropshire South – Conservatives
Sittingbourne and Sheppey – Labour
Skipton and Ripon – Reform
Sleaford and North Hykeham – Labour
Slough – Labour
Smethwick – Labour
Solihull West and Shirley – Labour
Somerset North – Labour
Somerset North East and Hanham – Labour
South Holland and The Deepings – Conservatives
South Shields – Labour
Southampton Itchen – Labour
Southampton Test – Labour
Southend East and Rochford – Labour
Southend West and Leigh – Labour
Southgate and Wood Green – Labour
Southport – Labour
Spelthorne – Labour
Spen Valley – Labour
St Albans – Lib Dems
St Austell and Newquay – Labour
St Helens North – Labour
St Helens South and Whiston – Labour
St Ives – Lib Dems
St Neots and Mid Cambridgeshire – Lib Dems
Stafford – Labour
Staffordshire Moorlands – Labour
Stalybridge and Hyde – Labour
Stevenage – Labour
Stirling and Strathallan – Labour
Stockport – Labour
Stockton North – Labour
Stockton West – Labour
Stoke-on-Trent Central – Labour
Stoke-on-Trent North – Labour
Stoke-on-Trent South – Conservatives
Stone, Great Wyrley and Penkridge – Conservatives
Stourbridge – Labour
Stratford and Bow – Labour
Stratford-on-Avon – Labour
Streatham and Croydon North – Labour
Stretford and Urmston – Labour
Stroud – Labour
Suffolk Central and Ipswich North – Labour
Suffolk Coastal – Conservatives
Suffolk South – Reform
Suffolk West – Labour
Sunderland Central – Labour
Surrey East – Labour
Surrey Heath – Lib Dems
Sussex Mid – Lib Dems
Sussex Weald – Conservatives
Sutton and Cheam – Conservatives
Sutton Coldfield – Labour
Swansea West – Labour
Swindon North – Labour
Swindon South – Labour
Tamworth – Labour
Tatton – Labour
Taunton and Wellington – Lib Dems
Telford – Labour
Tewkesbury – Lib Dems
Thanet East – Labour
Thirsk and Malton – Conservatives
Thornbury and Yate – Lib Dems
Thurrock – Labour
Tipton and Wednesbury – Labour
Tiverton and Minehead – Lib Dems
Tonbridge – Conservatives
Tooting – Labour
Torbay – Lib Dems
Torfaen – Labour
Torridge and Tavistock – Conservatives
Tottenham – Labour
Truro and Falmouth – Labour
Tunbridge Wells – Conservatives
Twickenham – Lib Dems
Tynemouth – Labour
Uxbridge and South Ruislip – Labour
Vale of Glamorgan – Labour
Vauxhall and Camberwell Green – Labour
Wakefield and Rothwell – Labour
Wallasey – Labour
Walsall and Bloxwich – Labour
Walthamstow – Labour
Warrington North – Labour
Warrington South – Labour
Warwick and Leamington – Labour
Warwickshire North and Bedworth – Labour
Washington and Gateshead South – Reform
Watford – Labour
Waveney Valley – Green
Weald of Kent – Conservatives
Wellingborough and Rushden – Labour
Wells and Mendip Hills – Lib Dems
Welwyn Hatfield – Labour
West Bromwich – Labour
West Ham and Beckton – Labour
Westmorland and Lonsdale – Lib Dems
Weston-super-Mare – Labour
Wetherby and Easingwold – Conservatives
Whitehaven and Workington – Labour
Widnes and Halewood – Labour
Wigan – Labour
Wiltshire East – Labour
Wiltshire South West – Labour
Wimbledon – Lib Dems
Winchester – Lib Dems
Windsor – Lib Dems
Wirral West – Labour
Witham – Labour
Witney – Lib Dems
Woking – Lib Dems
Wokingham – Lib Dems
Wolverhampton North East – Labour
Wolverhampton South East – Labour
Wolverhampton West – Labour
Worcester – Labour
Worcestershire West – Labour
Worsley and Eccles – Labour
Worthing East and Shoreham – Labour
Worthing West – Labour
Wrekin, The – Labour
Wrexham – Labour
Wycombe – Labour
Wyre Forest – Labour
Wythenshawe and Sale East – Labour
Yeovil – Lib Dems
Ynys Mon (Anglesey) – Labour
York Central – Labour
York Outer – Labour