By Mark McGrath, 21 April 2025.
After much late-night wrangling of an Excel spreadsheet (that sometimes groaned under a heavy load and refused to cooperate), I’d like to introduce you to my inaugural Election Forecast Report (v1.0).
> Latest forecast from the model
The short story…
I built an election forecasting model (I previously worked as a performance analyst of sorts in a major sporting industry). The model is based on historical variations of the national LNP swing to States and strong independent challenges in each state over the last 3 Federal elections.
The methods used in this model to calculate predicted swing variations were tested on the last 3 Federal elections and on average produced the lowest error between the predicted and actual values.
The model suggests it is highly unlikely for the LNP to win majority government and very unlikely to win minority government at their current estimated swing and also allowing for a potential error in the polls similar to the 2019 election (3%). The model suggests that the LNP is mostly likely to win 57 seats, with a 50% probability of winning between 53 and 62 seats.
To win minority government would require a national 2PP swing of 4.39%, well in excess of the record LNP swing as a 1st term opposition of 2.58% (2010). To win majority government, the LNP would need to achieve a national 2PP swing of 5.07%, matching John Howard’s winning swing in 1996.
The unlikelihood of victory for the LNP that the model forecasts is what I call the Teal Handicap, a self-imposed impost by the LNP in their long march to the right that has seen them shed seats to the Teals and face an increasingly unlikely and steepening climb up the pendulum to win more ALP seats to make up for their abandonment of their moderate heartland.
The long story…
About the report
Approach
This model that generated this report is based on average LNP 2PP swing variations (calculated as Z-scores, which are the number of standard deviations a value is away from the mean) over the last 3 elections. Z-scores allow you to compare swing variations from different elections, regardless of the actual national swings, on an equal footing and therefore allow you to see trends and test predictive methods to identify what’s more likely to happen in the future based on past results.
The logic behind this model is; that if we can estimate a 2PP swing for a forthcoming election and if we can predict how this national swing may vary at a more regional level and against strong independent (Teal) challengers, then we can confidently predict how many seats the LNP may win and their probability of doing so.
Following exhaustive backtesting of Federal election results from 2004 onwards, I determined the most accurate method of predicting future swing variations from the national 2PP swing was the following:
1. Average state swing variations
The average Z-score of LNP swings per state over the last 3 elections.
2. Independent challenges
These are contests where an independent (or minor party like Centre Alliance) finishes in the first two places on primaries and goes to preferences to challenge a major party.
A base average Z-score of LNP swings in these contests were calculated in previous elections and then combined with the average state swing variations in 1 via a regression to predict the Z-score values with the lowest error, for all of these contests in the 2022 election.
Because of the small sample of independent challenges and how they have varied so much from major two party contests, this is the riskiest aspect of the model. However since 2013, it’s been a consistent trend of independents (mainly Teals) outperforming the ALP against the LNP.
I also tested predicting swing variations for metropolitan and non-metropolitan seats. Whilst these samples are significantly different, their granularity (smaller samples) reduced their predictive value, so I gave up on that approach and went back to State-based swing variations instead.
Polling error
Because the model uses the current estimated LNP 2PP value from the AEF Regular Forecast, which is essentially a weighted average of recent poll results, to calculate the current LNP swing since the 2022 election, it makes sense to add a randomised polling error variable to the model.
The settings of this variable are based on the polling error of the 2019 Federal election, which was estimated to be around 3.0%.
Candidate specific factors
The model also uses the following candidate-specific factors borrowed from the Australian Electoral Forecast (AEF) for seat predictions:
- Sophomore
- Sophomore surge (seat gained from opposing party)
- Sitting member retiring
What’s not included in the model
- Seat betting
- State election results (to inform regional swings)
- MRP polling (to adjust seat 2PP values for demographics)
All of these factors (and some more) are used in the AEF model, which I regard as the most sophisticated forecasting model for Australian elections.
The forecast results compared to AEF were quite similar. We both came up with the same median seat forecast for LNP. My seat probability forecasts were also quite close to AEF (+/- 2.07% on average). However, it appears my model is harsher on the LNP in independent challenge seats and is not as generous to the LNP in Victoria.
Adjustments
The following adjustments have been made before the forecasts were generated:
1. Andrew Gee (IND) in Calare awarded a 3% personal following bonus
Andrew Gee previously represented the National Party as the member for Calare but is now running as an independent. It can be expected that he will take some small proportion of voters with him running as an independent, who previously voted for him as a National Party MP.
2. Russell Broadbent (IND) in Monash awarded a 3% personal following bonus
Russell Broadbent was previously the Liberal member for Monash who is now running as an independent. I have also awarded him the same personal following bonus.
3. Independent challenge seat classifications
Because the average swing variations for these seats were based on previous strong independent challenges, where typically the LNP swing was significantly lower than the national swing, I had to make sure that seats that this swing variation would be applied to were also strong independent challenges. The criteria I’ve used here is if the independent is rated in the top two favourites in the betting market for the seat, then it counts as an independent challenge seat.
4. Notional 2PP values following redistribution
Adjusted the 2PP values from the 2022 election to notional values following the redistribution. These values are sourced from the AEC. I know Antony Green disputes some of these values and I may incorporate some of his values later. But in the wash-up this is small beer and unlikely to be a game changer.
Method
The forecast is generated from the following method.
For each election simulation:
1. Calculate the estimated base LNP 2PP swing, deducting the current AEF LNP 2PP value in the regular forecast from the LNP 2PP vote from the 2022 election (47.87%).
2. Randomly generate a polling error value that is normally distributed with a mean of 0 and standard deviation of 1.5.
3. Add the polling error in 2 to the base swing value in 1 to produce a final estimated LNP 2PP national swing value.
4. Use the standard deviation of LNP swings from the 2022 election (4.65%) as the base for how much swings will vary in 2025 simulation.
5. Using the average Z-score values described above, calculate expected LNP swings for each state and independent challenges in each state. Here are the base swing breakdowns for when the LNP swing was estimated at 0.62%.
Type | ACT | NSW | NT | QLD | SA | TAS | VIC | WA |
---|---|---|---|---|---|---|---|---|
State | 0.82% | 0.41% | 0.63% | 1.64% | -0.50% | 0.09% | 1.41% | -1.59% |
Independent Challenge | -0.89% | -0.83% | -0.86% | -1.01% | -0.69% | -0.78% | -0.98% | -0.53% |
6. Randomly generate swings for each seat based on these expected swings, using the swing as the mean and the 2022 standard swing deviation.
7. Adjust seat 2PP values with candidate-specific factors.
8. Run the simulated election 10,000 times. This is known as a Monte Carlo simulation.
9. Calculate forecasts from these 10,000 elections.
Results
Here are the results from the simulation. Note; this forecast was generated on 23 Apr 2025. View the latest forecast.
Benchmark | Swing | Worst case | 25th Per | Median | 75th Per | Best case | P% Win 76+ seats |
---|---|---|---|---|---|---|---|
Current estimated LNP swing from 2022 Election | 0.62% | 47 | 53 | 57 | 62 | 68 | 0.24% |
Average LNP swing as 1st term opposition | 1.68% | 50 | 57 | 61 | 66 | 73 | 1.97% |
Average LNP swing when in opposition | 2.38% | 53 | 60 | 64 | 69 | 76 | 5.11% |
Record LNP swing as 1st term opposition (2010) | 2.58% | 54 | 61 | 65 | 70 | 76 | 6.60% |
LNP swing required to win 73 seats (minority govt) | 4.39% | 61 | 68 | 73 | 78 | 85 | 35.03% |
LNP swing required to win 76 seats (majority govt) | 5.07% | 63 | 71 | 76 | 81 | 88 | 51.06% |
LNP swing 1996 election | 5.07% | 63 | 71 | 76 | 81 | 88 | 51.06% |
Record LNP swing in opposition (1975) | 7.40% | 73 | 81 | 86 | 92 | 100 | 90.93% |
Guide
These results provide forecasts on LNP seat wins in the following categories:
Worst case
This is the lowest number of seats you would expect the LNP to win in 5% of cases. This is 5th percentile and can be imagined as a 1 in 20 elections worst result.
25th Per
This is the 25th percentile and is the lowest end of the range of seats that would cover 50% of simulation results centred on the median (25%-75%). Another way to think of this value is the seat result at 25% below the median.
Median
This is the middle number of seats won in the simulations. Fifty percent of simulation results lay above and below this number of seats. This most likely forecasted outcome.
75th Per
This is the 75th percentile. It’s the highest end of the range that would cover 50% of the results centred on the median. You can think of this as a top 25% result.
Best case
This is the highest number of seats you would expect the LNP to win in 5% of cases. You would expect the LNP to achieve this result once in every 20 elections.
P% Win 76+ seats
This is the probability of the LNP winning at least 76 seats at the set 2PP swing value. For example, if the LNP achieved a national swing of 4.34%, then the model estimates they would have a 20.20% probability of winning 76 seats. This value is related to how likely it would be for the national swing to break down into areas favourable and unfavourable (more on that below).
Discussion
You can see that the forecast is not favourable to the LNP.
At the current estimated swing, the model calculates (based on past swing variations and current margins), that it's highly unlikely (0.24%) that the LNP will win at least 76 seats. This is the equivalent of winning once every 416 elections.
This is because of what I term the Teal Handicap. Losing seats to Teals and maintaining a strong right-wing policy position has produced three related effects for the LNP:
1. A low prospect of winning seats back from Teals.
2. A likelihood of losing more seats to Teals (eg Bradfield, Cowper & Wannon).
3. An increasingly difficult task to make up for the loss of these Teal seats by having to win more ALP seats further up the pendulum.
The model incorporates how poorly the LNP has performed against Teals in the last 3 elections. The average LNP swing Z-score in independent challenge seats since 2013 is -1.25. As an example, this means that if the LNP achieved a national 2PP swing of +3.00% then based on the 2022 standard swing deviation (4.65%), the average swing in independent challenge seats would be -2.81%.
If you run the forecast with a LNP swing of 2.13%, which would give the LNP a national 2PP value of 50.00%, they still are only likely to win 63 seats, 12 seats short of 50% parity (75 seats) and only a 3.57% probability of gaining 76+ seats. This is a clear demonstration of the Teal Handicap in action that has been self-imposed by the LNP through their migration from their moderate roots to the right wing of the political spectrum. Since 2013 they have continued to lose seats to the Teals and have not won any back.
It also incorporates how unlikely it is for the LNP to win ALP seats further up the pendulum. To win 76 seats without winning back any Teal (or Greens) seats and not losing any more to them, requires a uniform national swing of 7.43%. If the LNP did not lose any of the 7 Teal seats by their march to the right, then they would only have to achieve a uniform national swing of 5.83%. So this is an effective Teal Handicap of 1.53%.
As a result, this makes winning the necessary ALP seats highly unlikely, which is expressed in the low probability ratings above.
To have about a 50% chance of winning majority government, the LNP has to more than double its average swing when in opposition and match John Howard's 1996 swing of 5.07%.
Could this forecast get it wrong?
Sure, all of them can. After all, it’s a probabilistic forecast; not a set-in-stone prophecy. But on best available evidence, this is unlikely.
So what would it take for this model to get it wrong? A few things…the LNP would need to:
- Perform markedly better against Teal challengers than they have in the last 3 elections. Given Dutton’s pro-nuclear, anti-renewables stance and his poor standing with educated women voters, I see this as highly unlikely.
- Be lucky enough to have their positive swing variation exceed predictions and land in states where they haven’t done well in the past, namely Western Australia and Victoria. The model predicts a swing better than average in Victoria but not enough to overcome below-average swings elsewhere. WA still looks problematic for them with a below-average swing forecasted for a state where they need to make ground.
- Do a lot better in NSW (the biggest state that offers the most potential gains) than what is currently forecast. Latest seat betting suggests that this is not happening. The betting markets suggest that the LNP are at best going to gain 3 seats from their opponents; Bennelong, Calare and Gilmore. But all of these are tight contests and could go either way. On a sum of probabilities basis, my model suggests they will win only 2 of these 3 seats.
- Win the remainder of the campaign and improve their 2PP swing value. Given the polling trend throughout this campaign, which some commentators have termed a train wreck (I prefer a truck crash over and over again), and Dutton’s net satisfaction ratings compared to Albanese, this seems highly unlikely.
The LNP may be able to pull off one or maybe two of these requirements, but pulling off all four of them is very unlikely.
Black swans a forlorn hope
It seems the only remaining hope for the LNP is some out of the blue black swan moment (that I can’t think of), as no amount of tabloid media cheerleading has turned Dutton’s campaign around.
By their very nature, black swan moments are unpredictable and infrequent. And I think we have already seen two of them that have instead benefitted the ALP. Donald Trump switching sides to Russia when he humiliated Ukrainian leader Vladimir Zelensky and then blowing up the global economy by declaring a trade war against the rest of the world (that has seen many Australian’s super balances go south) are two moments that nobody saw coming and that have boosted the ALP’s polling performance.
Therefore, I think the chances of another black swan event jumping out of right-field to turn around Dutton’s campaign is a forlorn hope.
Add new comment