Skip to main content
Value betting

How does a football prediction model work?

A football prediction model outputs a probability for each possible outcome of a match, such as home win, draw and away win, built from data about the two teams. It is not a guess at what will happen, it is a distribution of how likely each outcome is, and it is only ever as good as the data and method behind it.

Team FootyMetrics

Updated Jul 2026 ยท 8 min read

The short answer
  • A prediction model outputs a probability for each outcome, not a single predicted result. Win, draw and lose probabilities sum to 100%.
  • A model's probability is an estimate of the true chance. A bookmaker's price starts from a similar estimate but adds a margin on top.
  • The Poisson distribution is the classic simple way to model goals, because goals are discrete, whole-number events. It has known limits, including underestimating draws.
  • A well-calibrated 70% favourite is still expected to lose about three times in ten. A model isn't wrong just because one favourite loses.
  • A model can only use the data it's given. It can't know an unreported injury, predict a referee's individual calls, or account for information nobody supplied it.

The rest of this page walks through what a prediction actually is, the main approaches real public models use, why the Poisson distribution keeps coming up, and the honest limits of what any of this can promise you.

What a prediction model actually outputs

The output of a prediction model is a probability distribution over outcomes, not a single predicted result. For a match, that usually means three numbers: the probability of a home win, a draw and an away win, which sum to 100%. For a market like total goals, it means a probability attached to each possible number of goals, 0, 1, 2, 3 and upward.

This changes what a prediction is actually claiming. A model that says a team is 55% to win isn't claiming the team will definitely win, or even that winning is overwhelmingly likely. It's claiming that if the same match could be played out many times, under the same conditions, the team would win in roughly 55 of those hypothetical repeats. Public models built by data providers such as Opta's own supercomputer approach work in a similar spirit: rather than pick a single scoreline, the model simulates a match, or an entire competition, thousands of times, and reports how often each outcome came up across those simulations.

A prediction is a distribution, not a guess at a single result.

A model's probability versus a bookmaker's price

A model's probability and a bookmaker's odds are not the same thing, even when they're both pointing at the same match. A model probability is an estimate of the true chance of an outcome. A bookmaker's price starts from a probability estimate too, but then has the bookmaker's margin built in, so the book turns a profit regardless of the result.

That's why a bookmaker's odds across a full market always imply a total probability a little over 100%, not exactly 100%. Stripping that margin back out to see the market's own true, no-vig estimate is a separate step, covered in what are fair odds. The short version: a model's probability is trying to estimate the truth. A bookmaker's price is trying to make money while roughly reflecting the truth. The two can disagree, and the size of that disagreement is where value betting lives, an idea covered in more depth in what is expected value.

What real public models actually use as inputs

There's no single formula every prediction model uses, but the published, publicly documented approaches tend to draw on a similar pool of inputs:

  • Team and player form: recent results and underlying performance, not just where a team sits in the table.
  • Home advantage: home teams have historically outperformed away teams on average, though the size of that effect varies by league and by venue.
  • Shot quality (expected goals, xG): rather than counting raw shots or goals, an xG model assigns each shot a scoring probability based on factors like location, angle, defensive pressure and assist type, then sums those probabilities to estimate how many goals a team's chances were really worth.
  • Head-to-head history: how the same two sides have fared against each other previously.
  • Rest days and fixture congestion: how long it has been since a team's last match, which shows up as a meaningful input in some published models.

Rating systems built from results over time, most notably Elo, originally built for chess and later adapted by FIFA for its own international rankings, are another common building block. An Elo-style rating updates after every match based on the result and how surprising it was, and the gap between two teams' ratings converts directly into an expected outcome probability.

This describes the field, not one recipe

The inputs above describe approaches used across the industry and in published research generally. They aren't a description of any single proprietary model's exact recipe, including our own. Different providers weight these inputs differently, and most combine several of them rather than relying on just one.

The Poisson distribution: the classic simple approach

The most widely taught starting point for modelling football scores is the Poisson distribution, a way of describing the probability of a certain number of events happening in a fixed period, given an average rate. It was originally developed for problems with nothing to do with football at all.

Applied to a match, the idea is to treat each team's goals as events arriving at some average rate, their expected goals for that game, then use the Poisson distribution to work out the probability of them scoring exactly 0, 1, 2, 3 goals and so on. Do that for both teams and combine the two distributions, and the result is a probability for every possible scoreline, which can be added up into win, draw and away-win probabilities, or into markets like over/under goals and both teams to score.

Goals fit this kind of model reasonably well conceptually, because they're discrete, whole-number events, you can't score half a goal, that happen relatively rarely across 90 minutes. That's a decent match for what a Poisson distribution is built to describe. It isn't a perfect fit. The classic simple version assumes each goal is independent of the others, which isn't strictly true, a team that goes 2-0 up sometimes sits deeper, changing the rate at which further goals arrive, and basic Poisson models are known to slightly underestimate how often matches end level, especially low-scoring draws. It's a useful, well-studied starting point, not a claim of precision beyond what the maths can actually support.

Why probabilities, not certainties, is the whole point

A well-calibrated prediction is one where the stated probabilities actually match reality over time. Among all the matches a model called a 70% favourite, the favourite should win roughly 70% of the time, not 100% of the time.

That means a well-calibrated 70% favourite is still supposed to lose about three times in ten. If it didn't, the model wouldn't be calibrated at 70%, it would actually be closer to a 100% model wearing the wrong label. A single loss from a 70% favourite isn't proof the model was wrong, it's exactly what a correctly calibrated 70% is supposed to look like some of the time. Judging a prediction model by whether any one match came in is judging noise. Judging it by whether its stated probabilities match outcomes across hundreds of matches is judging the model.

What a model can and cannot do

A prediction model, however well built, works from the data it's given. That sets a hard limit on what it can know:

  • It cannot know about a genuine last-minute injury or a team news change that hasn't been made public yet.
  • It cannot predict a referee's individual decisions, a refereeing performance running unusually strict or lenient, or a moment of individual quality with no real precedent in a player's data.
  • It cannot account for information it was never given, whether that's a dressing room issue, a tactical approach nobody has seen yet, or any factor simply outside the data it was built on.

A model is an estimate built from patterns in past and current data. It isn't a window into information that doesn't yet exist anywhere it could reach.

How FootyMetrics' own AI predictions fit in

FootyMetrics publishes AI match predictions across 115+ leagues. In keeping with everything above, they're built from multiple inputs, team and player data, recent form and matchup history among them, not a single stat or a gut call, and they come out as a probability for each outcome, not a certainty.

See today's AI match predictions

Probabilities for every match across 115+ leagues, built from team and player data, form and matchup history.

For more on the approach behind them, see how our predictions work.

Football prediction model FAQs

What does a football prediction model actually predict?

It predicts a probability for each possible outcome of a match or market, such as home win, draw and away win, rather than a single guaranteed result.

Is a prediction model's probability the same as a bookmaker's odds?

No. A model's probability is an estimate of the true chance of an outcome. A bookmaker's odds start from a similar estimate but add a margin, the overround, so the bookmaker's implied probabilities across a market add up to more than 100%.

Why do prediction models use the Poisson distribution?

Goals are discrete, whole-number events that happen relatively rarely in a match, which is a reasonable conceptual fit for what a Poisson distribution is built to describe. It is a long-standing, well-studied starting point for modelling scorelines, though it has known limitations, including a tendency to slightly underestimate draws.

Can a model with a 70% favourite still be right if that team loses?

Yes. A well-calibrated 70% favourite is expected to lose about three times in ten. A single result doesn't confirm or disprove a probability, only checking the outcomes of many similarly rated matches against the stated probability can do that.

What can't a football prediction model know?

It can't know information nobody gave it, such as a last-minute injury that hasn't been reported yet, an unexpected tactical change, or how a specific referee will call individual decisions on the day.

Help FootyMetrics improve

Found a bug, got an idea, or just want to share your thoughts? We read everything.

Daily picks on Telegram

Trend alerts, value bets, and platform updates straight to your phone. Free to join.

Join channel