What Does a Demographic Model Actually See in Gorton and Denton?
Can a GE demographic model tell us anything about a by-election?
Having just launched PollCheck’s first demographic based model, I decided to see how it would fare at projecting the by-election
In my previous article , we explored why Gorton and Denton looks the way it does, a Frankenstein constituency stitched together from communities that want fundamentally different things from their MP. In the earlier article, we walked through who's standing, what the demographics favour, and why the by-election poll (Find Out Now) probably isn't telling us enough.
This time we’re going to put the by-election through a model and see what happens.
The Model
The Demographic Swingometer is a MRP styled (although not technically MRP) machine learning based model. It takes 11 demographic variables from the census (age, ethnicity, education, religion, housing tenure, and more), combines them with the latest national and regional polling, adds local factors like council control and independent candidates, and calculates how each constituency should vote if its residents behave like demographically similar voters elsewhere in the country.
For a general election, this can work well. The model scores 75-90+% seat accuracy in GE backtesting, with the wild swings of 2024 being the hardest to model. By-elections are completely different though. Turnout varies massively, candidate quality matters more, ground game and mobilisation are key. Three or four parties can be genuinely competitive in a seat that was a two-horse race 18 months ago.
So rather than, ‘What can the model predict’ it’s ‘What can it tell us about a completely different election’.
To find out, first the model was backtested against the Labour’s governments only other by-election in the last 14 years or so - Runcorn and Helsby.
Backtesting
Backtesting is testing against something where you already know the answer, but the thing you’re testing doesn’t.
Runcorn and Helsby, 1 May 2025. Reform gained the seat from Labour by six votes - the closest by-election result in modern British history. Mike Amesbury had resigned after being convicted of assault, filmed punching a man in the street. Labour was already deep underwater nationally. The question was if Reform could convert polling strength into an actual gain in a constituency they'd never seriously contested.
I reconstructed what the model would have predicted if it’d been run it before the vote.
I took the GE2024 result in this constituency as the baseline (Labour 52.9%, Reform 18.1%), plugged in the national polling at the time (Labour had fallen from 33.7% to 24.4%, Reform had risen from 14.3% to 26.1%), and applied the model's vote sensitivity multipliers, which estimate how much a 1 percentage point national swing translates to locally (and a key difference between this kind of model and a uniform swing) Runcorn has a Labour sensitivity of 1.25, meaning national Labour swings affect this seat more than nationally.
Then by-election adjustments were added:
Government Penalty - the party in power usually loses by-elections
Scandal Penalty - by-elections caused by scandals see the party in power do worse
Turnout effects - by-elections usually have turnout around 35-45%
Important to note, these values were found through analysis of the last ~20 years of by-elections, rather than being guessed at.
The Results
The great news for this article is that the backtest worked quite well.
It correctly predicted Reform as the winner within a percentage point, showed a tight two way race, and predicted turnout range (38-47%) captured the actual 46.2%
The named parties fell within the model's 90% confidence interval. Mean absolute error across all parties was 3.3 percentage points - and this was with no by-election specific polling given to the model.
The downside is it underestimated Labour, and the multiple penalties added were too much. It also didn’t really account for other candidates and fringe parties.
The lessons learnt were: Don’t over penalise the defending party, or you’ll always be overstating the challengers margin. Don’t forget that by-elections often attract many candidates (OMRLP anyone?) and these parties will soak up 3-5% of the vote. Just these two things can mean that your numbers are always off.
So some adjustments were made to the Gorton and Denton model - reducing the scandal penalty, halved the governing party protest factor, and added an "Others floor" to account for minor candidates. These are entirely best guesses though, and we only have one relevant by-election to test against.
Overall, the aim of translating a national demographic model into a by-election held up well - but the current by-election looks nothing like Runcorn, which had a 96.6% white population and a clear two horse race.
The Gorton and Denton model
In 2024, Gorton and Denton was a safe Labour seat. Andrew Gwynne won with 50.75% of the vote- a majority that, in normal times, would make the seat seem unassailable.
The model starts with those 2024 results and asks: what would this constituency look like if voters behaved the way national polls suggest they're behaving now? Labour are polling around 20-25 points nationally, down from the 34% they won in July. Reform have surged to just below 30% . The Greens have climbed into the low teens.
Apply those national shifts through the model’s demographic lens - accounting for Gorton's younger-than-average population, its large Muslim community, its mix of urban and suburban across the different wards, and Labour's 51% goes to 28%. Reform climbs from 14% to 26%. The Greens nearly double, from 13% to 24%.
Then, the by-election adjustments are added:
Scandal Penalty - 1.5 points for the WhatsApp scandal and suspension.
Governing party penalty - 1 point, adjusted down from Runcorn’s overshoot and reflective of the national polling already having Labour down.
The Burnham factor - 1 point frustration factor that Burnham was blocked from standing.
And finally, The Workers Party of Britain took 10.3% in Gorton in 2024 .They're not standing this time, and that vote has to go somewhere. The model distributes it based on the demographic and political profile of likely WPB voters: roughly half to the Greens (who carry the Muslim Vote endorsement), a quarter back to Labour, and the rest scattered across abstention and minor candidates.
When all done, the first by-election level projection is:
Reform: 27.9%
Greens: 26%
Labour: 23.3%
This shows a genuine 3 way race in a previously safe Labour seat 18 months ago - but this isn’t the final figure yet.
Adding uncertainty
That doesn’t mean Reform will win - it just means that right now, Reform leads in the model’s central estimate.
When the model runs, it runs a Monte Carlo simulation - running the same election 10,000 times, but each time something changes slightly. National polling errors, demographic distribution, the scandal effect, if Nick Buckley will pull more or less votes from Reform. Each of these are adjusted thousands of times, with amounts moving up and down.
And after running this, it’s even closer:
Reform: 29.2%
Greens: 29.1%
Labour 20.9%
What the headline figures mean is: Out of 10,000 simulations, Reform wins 4,760 times. The Greens win 4,660. Labour wins 580.
There’s only a difference on 100 wins - statistically indistinguishable really. This tells us it’s genuinely too tight to call.
The confidence intervals (90%) show that all three have a path to victory:
Reform: 20% - 39%
Greens: 20% - 39%
Labour: 13% - 29%
Each of the parties overlaps (Reform and Greens perfectly so) and realistically any could win at these intervals.
What the model can’t see
Demographic modeling works by breaking down a constituency into its demographic base and estimating how each group votes. It knows that Gorton and Denton is 57% white, 20% Asian, younger than average, more deprived than average, with high social renting. It applies national polling through those filters, and can do this fairly well.
However, it can’t know what’s actually happening in the by-election and constituency.
Labour have a ground operation in Manchester that Reform and the Greens simply don't. Angeliki Stogia has been a councillor for over a decade, and Labour has councillors here, networks of people, and resources that Reform and the Greens don’t.
Both the Muslim vote turnout and Matthew Goodwin’s candidacy are unknowns, and can’t be easily modelled with no prior examples.
The betting markets diverge from the model - at the time of writing, the Greens have an implied 56% probability of winning, Reform 31%, and Labour around 11%. It could be they’ve priced these things in, or that either the markets or model miss something.
What this actually means
We know that Gorton and Denton is no longer a Labour safe seat. Even in the model’s most optimistic Labour scenarios, they’re fighting for second place. The 51% Andrew Gwynne won eight months ago has largely evaporated through both national polling collapse and the pains of being in government during a by-election.
We believe this is genuinely a three-way contest with two realistic winners. Whether you trust the model or the betting markets , Labour appear to be on the outside looking in.
We know the uncertainty is enormous. Any projection that gives you a confident winner here is likely wrong, especially in the absence of robust polling. The 90% confidence intervals for both Reform and Green stretch from 20% to 39%.
Rather than being a dodge, this is a realistic representation of what happens when two largely untested parties face up in an election in an area they’ve never really competed in.
And we know the model has limits. It passed its one available backtest, Runcorn, with a respectable if imperfect performance. It got the winner right. It got Reform’s vote share almost exactly right. It over-penalised Labour and underestimated the minor candidate vote. Those lessons have been learnt, but it’s been stress tested more than validated. A sample size of one is simply not enough
I can’t say who’s going to win. The model’s honest answer is: probably Reform or Green, and I genuinely don’t know which. We can try understand the framework of the election, but certainty will come after the vote count.



