
The Poisson distribution is a statistical method that turns each team’s expected goals into probabilities for every possible scoreline — which you can then compare with bookmaker odds to find value. It is the backbone of many football models because goals are rare, roughly independent events, exactly the kind of thing Poisson was built to describe. This guide explains the method clearly, step by step, and is honest about where it falls short.
Why Poisson suits football
The Poisson distribution models the number of times a rare event happens in a fixed period, when those events occur independently at a roughly constant average rate. Football goals fit that description reasonably well: they are infrequent, scattered across 90 minutes, and — to a first approximation — each one does not depend heavily on the last. Give the model a team’s average expected goals in a match and it returns the probability of them scoring 0, 1, 2, 3 and so on.
The formula, in plain terms
The Poisson formula looks intimidating but the idea is simple. The probability of exactly k goals is:
P(k goals) = (λk × e-λ) / k!
Where:
- λ (lambda) = the team’s expected (average) goals for that match.
- k = the number of goals you want the probability for.
- e = the mathematical constant, roughly 2.71828.
- k! = the factorial of k (for example 3! = 3 × 2 × 1 = 6).
You do not need to compute this by hand — spreadsheets and free online Poisson calculators do it instantly. What matters is understanding what goes in and what comes out.
Step one: calculate each team’s expected goals (lambda)
The output is only as good as your λ. The classic approach breaks it into attack strength, defence strength and home advantage:
1. Find the league averages
Work out the average goals scored by home teams and by away teams across the league. These are your baselines.
2. Calculate attack and defence strength
- Attack strength = a team’s goals scored divided by the league average.
- Defence strength = a team’s goals conceded divided by the league average.
A value above 1.0 means above-average; below 1.0 means below-average.
3. Combine them
A home team’s expected goals ≈ home attack strength × away team’s defence strength × league average home goals. Do the mirror calculation for the away side. A home-advantage multiplier (commonly in the 1.1–1.3 range) is often baked into these baselines. The result is two lambdas — say 1.6 for the home side and 1.1 for the away side.
Step two: build the scoreline grid
Run each lambda through the Poisson formula to get the probability of that team scoring 0, 1, 2, 3+ goals. Then, because the two teams’ goal counts are treated as independent, multiply the probabilities together to fill a grid of every scoreline:
| Score | How it is calculated | Example probability |
|---|---|---|
| 0-0 | P(home 0) × P(away 0) | ~6.7% |
| 1-0 | P(home 1) × P(away 0) | ~10.8% |
| 1-1 | P(home 1) × P(away 1) | ~11.9% |
| 2-1 | P(home 2) × P(away 1) | ~9.5% |
(The figures above are illustrative for lambdas near 1.6 and 1.1 — they show the shape of the output, not a prediction for any real fixture.)
Step three: turn the grid into market probabilities
Once you have the full grid, every market falls out of it by adding up the relevant cells:
- Match result (1X2): sum all cells where home > away for the home win, the diagonal for the draw, and the rest for the away win.
- Over/under goals: add the cells above or below your line — feeds straight into over/under betting.
- Both teams to score: sum every cell where both teams score at least one, the basis of BTTS markets.
- Correct score: read each cell directly.
Convert those probabilities into fair decimal odds (1 ÷ probability), compare them with the bookmaker’s prices, and when your model implies a higher chance than the price suggests, you may have a value bet — the same logic behind all value betting.
Be honest about the limits
A basic Poisson model is a solid framework, not a money machine. Its well-known weaknesses:
- Goals are not perfectly independent. A goal changes how teams play — a side that goes 2-0 up may sit back, a chasing side throws men forward. Poisson assumes a constant rate and ignores this.
- It understates draws and low scores. The standard model tends to misprice the 0-0, 1-1 and other draw outcomes, which is why advanced versions apply a correction (the Dixon-Coles adjustment) to fix low-scoring scorelines.
- It is only as good as your lambda. Garbage in, garbage out. Using raw goals rather than underlying numbers like expected goals (xG) makes your inputs noisier.
- It ignores context. Injuries, red cards, motivation, fixture congestion and tactics do not appear anywhere in the formula. You must layer those in yourself.
- The market already uses it. Bookmakers run far more sophisticated versions. A plain Poisson sheet will rarely beat a sharp price without extra edge.
Making it genuinely useful
Feed the model better inputs — xG-based scoring rates rather than raw goals, recent form weighted more heavily than old matches, and a draw correction. Use it to flag markets where your estimate differs sharply from the odds, then apply judgement before betting and stake within a sensible bankroll plan. Treat the model as a disciplined second opinion, not a replacement for thinking.
Frequently asked questions
Do I need to do the maths by hand?
No. A spreadsheet or a free Poisson calculator does the heavy lifting once you supply each team’s expected goals. Your real work is estimating good lambda values.
Is Poisson accurate for predicting correct scores?
It gives reasonable probabilities but correct-score markets are high-variance and carry big bookmaker margins. The model is generally more reliable for match result and over/under than for pinpointing an exact scoreline.
What is the Dixon-Coles adjustment?
It is a well-known refinement that corrects the basic Poisson model’s tendency to misprice low scores such as 0-0 and 1-1, and weights recent matches more heavily. It makes the output more realistic.
Can a Poisson model guarantee profit?
No model guarantees profit. Poisson helps you estimate probabilities and spot value, but football is unpredictable, bookmakers price sharply, and betting always carries risk.
The takeaway
The Poisson distribution is one of the most accessible ways to model football mathematically: estimate each team’s expected goals, build a scoreline grid, and read every market off it. Use strong inputs, apply a draw correction, and always compare your fair odds with the market — but never forget the model cannot see context, and no amount of maths removes the risk.
Bet responsibly — 18+, only stake what you can afford to lose, and seek help via a service like GamCare or BeGambleAware if gambling stops being fun.






