Click here to skip to results.
In the summer of 2016 I built a model that combined past election, polling, and primary data to accurately predict that Donald Trump would be elected the US president later that year. My model showed the GOP taking 300 electoral college votes (they ended up getting 306) and correctly predicted surprise outcomes in Florida, Iowa, Ohio, Michigan, and Wisconsin.

Primer on the system: The US presidential election comprises 51 separate elections – one per state. Each state is worth a certain number of electoral college votes (e.g. California has 55, Wyoming has 3). If a candidate wins a state by plurality, then they bag all the electoral college votes of that state (except Maine and Nebraska which allocate their votes by some degree of proportional representation). The winner of the election is the person to get 270 electoral college votes in total.
Not all states matter as much: California almost always votes Democrat and Alabama almost always votes Republican. But states like Florida and Ohio tend to swing around between the two parties, which is why they are called “swing states”. This means that the variation in results for different elections comes down to whom the people in swing states vote for. For example, Trump won in 2016 because of shock victories in the swing states of Florida, Iowa, Pennsylvania, Michigan, Ohio, Wisconsin.

Methodology overview: As in previous years, the winner of the election will be decided by swing states like Florida, Pennsylvania, Michigan. If you find a way to reasonably forecast how these states will vote, then you have a decent election model. To do this, I will use primary and polling data.
Primaries: Using this data is a little more challenging this year because we don’t have “good quality” primary data. Although the GOP technically held primaries this year, using turnout at those primaries as a proxy for voter enthusiasm for the party is problematic, since Trump is running again anyway. So instead I am comparing 2020 Democrat primary turnout with 2016 Republican primary turnout adjusted for estimated changes in population in those 4 years.
Polls: After the twin shocks of Brexit and Trump in 2016, many people are rightly skeptical about relying on polling alone. In reality, in all the states where Trump won by surprise, Clinton was leading in the polls by only 3-4%. Many of these opinion polls sampled a few hundred participants, which means that the margin of error would have been around 4% or even more. I did not use polls in 2016 if they were not conclusive and I am doing the same this year.
Conservative approach: I am opting for a conservative approach, which means that in the event of a close call like Florida – thin margins on primary, polling, and election numbers – I assume that the state will remain with Trump this year. In Pennsylvania and Wisconsin, although the polling favors Biden, the Democrat primaries did not garner enough turnout in the primaries to assure me that enough people will turn out for Biden in November.
What’s the bottom line? With the polling information we currently have, I expect Trump to hold on to the White House with 289 electoral college votes (270 needed).

- Georgia, Texas, Arizona have voted for the Republican candidate with comfortable margins in recent elections, so I am giving them to Trump. Iowa tends to swing around but Trump won that state by 10% in 2016 so I am giving it to him.
- Florida and Ohio polls are too close for me to attach much significance to them right now. I would rather trust primary data, which shows similar levels of enthusiasm for the Democrats as in 2016 (FL) or reduced enthusiasm (OH). They also go to Trump.
- Pennsylvania and Wisconsin polls show Biden with a decent lead, but less people voted in those states’ Democrat primaries this year than in 2016. I am giving them to Trump.
- Michigan primaries indicated a surge in enthusiasm for Democrats and this is backed by the polls. The state only marginally supported Trump in 2016, so I am giving it to Biden.
- North Carolina is too close to call. Trump won it by less than 4% in 2016 and the poll and primary data is very close. For now I am keeping it with Trump in line with my conservative approach, but even if Biden wins it, it alone would not change the outcome.

Timeline of the results: Different states declare the winner at different times, with east coast states like New York typically reporting before west coast states like Washington state. This means that we can also predict when the outcome will become apparent.
If a state reported results at the moment polls closed, then a Trump victory would be confirmed at 11am SGT on 4-Nov (3am London, 4-Nov / 10pm New York, 3-Nov). In reality, you would have to wait around an hour for the results to start trickling in. We can go one step further and make assumption about how the safer states will vote. This way, we should know the outcome even earlier from around 10am Singapore (4 Nov) / 2am London (4 Nov) / 9pm New York (3 Nov).

Risk factor: postal vote. The data that we have so far shows that more mail ballots have been requested by Democrats than Republicans in Florida, Pennsylvania, and North Carolina. In Wisconsin the parties are matched, and in Michigan it appears the GOP has an advantage. On first glance this sounds positive for Biden, but it is not clear whether mail ballots represent the participation of new voters who previously did not vote, or merely existing voters changing the way they vote. It is worth noting that there may exist a sampling bias in counting mail-ballots because Trump’s campaign against mail voting might have turned usage of the facility into a partisan issue.
Is a tie possible? Yes. If both candidates get 268 electoral college votes, then it is considered a tie. Two things can happen:
- Members of the electoral college can “go rogue” (i.e. back a candidate who did not win the plurality in that state), breaking the tie. They can do this even in the absence of a tie.
- Alternatively, the new House will elect the President when they meet on 6 January 2021. Each state delegation gets one vote (i.e. 50 votes). Since the GOP control 26 state delegations, the Republicans will end up winning the White House in this scenario.
Regardless of how (if) a tie is eventually resolved, this would be a controversial result. The last time such a tie took place was in the 1800s.
Maine and Nebraska: Unlike the other states, Maine and Nebraska allocate electoral college votes based on some degree of proportional representation. I am assuming that Maine will give one electoral college vote to the GOP this year (ME-2) while the rest go to the Democrats, as was the case in 2016. Similarly, I assume Nebraska will give one EC vote to the Democrats (NE-2) and the rest to the GOP.
If you have questions or feedback, feel free to reach out to me: abbas [dot] keshvani [at] gmail.com. All charts created on Python.
Sir, thank you for your work, right now the polling average for the national popular vote has Biden ahead 7 points. Do you suspect that this polling is incorrect now by several points? That it is mostly correct but the race will tighten? Do you expect that Biden will win the national popular vote? How do you account for the apparent current discrepancy between the polling and the turnout of the primaries?