Poisson Distribution in Football Betting – How It Works

The Poisson distribution turns each team's expected goals into scoreline, 1X2, over/under and BTTS probabilities. Formula, worked example and its limits.

The Poisson distribution is a formula that turns a team's expected goals into the probability of it scoring 0, 1, 2 or more goals in a match. Run it for both teams, multiply the two results for every scoreline, and you get fair probabilities for the 1X2, over/under, both teams to score and correct score markets.

It is the classic starting model for football betting because goals are rare, roughly random events in a fixed 90 minutes. It is also simple enough to be wrong in known ways. This article gives the formula, works through a full example, shows how to read Pinnacle's prices through the same model, and lists where it breaks.

Definition. Poisson distribution: a probability distribution for the number of times a rare event happens in a fixed period, given its average rate λ (lambda). In football, λ is a team's expected goals for the match, and P(k goals) = λ^k × e^(−λ) ÷ k!. The independent Poisson model (Maher, 1982) treats the home and away goal counts as unrelated, so a scoreline's probability is the product of the two teams' probabilities.

What is the Poisson formula for football goals?

For a team with expected goals λ, the chance of scoring exactly k goals is:

P(k) = λ^k × e^(−λ) ÷ k!

  • λ is the expected number of goals for that team in this match (for example 1.50).
  • k is the goal count you want (0, 1, 2…).
  • e is Euler's number, about 2.71828.
  • k! is k factorial (3! = 3 × 2 × 1 = 6; 0! = 1).

Only one input matters: λ. Everything the model "knows" about the two teams has to be inside the two expected-goals figures. That is both its appeal and its weakness.

How do you get each team's expected goals?

There are three common routes:

  1. Attack and defence ratings. Team A's expected goals = A's attack strength × B's defence weakness × league average goals for home (or away) sides. Strengths are each team's goals scored or conceded per game divided by the league average.
  2. Shot-based xG. Use the teams' recent expected-goals numbers from a data provider instead of actual goals, which are noisier.
  3. The market itself. Work backwards from the over/under and 1X2 prices to the λ values that reproduce them. This is covered below; it is the most useful route if your goal is to read odds rather than beat them with a model.

Whatever the route, the output can only be as good as λ. A change of 0.2 expected goals moves every market noticeably.

A worked example: 1.50 vs 1.10 expected goals

Take an illustrative match with home expected goals of 1.50 and away expected goals of 1.10 (the default inputs of our Poisson calculator, not a real fixture).

Step 1: goals for each team.

GoalsHome (λ = 1.50)Away (λ = 1.10)
022.3%33.3%
133.5%36.6%
225.1%20.1%
312.6%7.4%
44.7%2.0%
51.4%0.4%

Step 2: multiply for each scoreline. 1-0 = 33.5% × 33.3% ≈ 11.1%. 1-1 = 33.5% × 36.6% ≈ 12.3%. Doing this for every score up to 10-10 gives the full matrix.

ScoreProbabilityFair odds
1-112.26%8.16
1-011.14%8.98
2-19.19%10.88
2-08.36%11.97
0-18.17%12.24
0-07.43%13.46

Step 3: sum the matrix by market.

MarketHow it is summedProbabilityFair odds (1 ÷ p)
Home winEvery score where home > away46.4%2.15
DrawEvery score where home = away25.8%3.88
Away winEvery score where away > home27.8%3.60
Over 2.5 goalsEvery score with 3+ goals48.2%2.08
Under 2.5 goalsEvery score with 0-2 goals51.8%1.93
BTTS yesBoth teams score 1+51.8%1.93
BTTS noAt least one team scores 048.2%2.08

These are fair odds with no margin. A bookmaker's prices will be shorter on every outcome; see overround, vig and margin.

A useful shortcut: the total goals of two independent Poisson teams is itself Poisson, with λ = home + away. Here, 1.50 + 1.10 = 2.60, so P(0, 1 or 2 goals) = 7.4% + 19.3% + 25.1% = 51.8%, the same Under 2.5 figure as the matrix.

How do you compare a Poisson price with the bookmaker?

Convert the bookmaker's odds to implied probability, remove the margin, and compare like with like. A model probability above the no-vig market probability is a candidate value bet, not a confirmed one.

The honest version of that comparison uses the sharpest market available as the benchmark. If your model says Over 2.5 is 48.2% (fair 2.08) and, hypothetically, Pinnacle's devigged price says 53%, the likely explanation is that your λ is too low, not that Pinnacle is wrong. Pinnacle takes large stakes from winning bettors and moves its price on them; its prices are the reference most value bettors measure against (see Pinnacle as the sharp reference price). The devig calculator removes the margin with multiplicative, additive, power or Shin methods.

How do you read Pinnacle's prices with Poisson?

Run the model backwards. The over/under 2.5 line pins down the total λ; the 1X2 split pins down how it divides between the teams.

An illustrative example (round prices, not a real market), using multiplicative devig for simplicity:

MomentOver 2.5Under 2.5Fair P(Over)Implied total goals (λ)
Before2.001.8748.3%2.61
After1.802.0853.6%2.82

The over shortened from 2.00 to 1.80, a 10% drop. In goal terms, the market added about 0.21 expected goals to the match. That translation is the practical use of Poisson for anyone following dropping odds in football: it tells you what size of news a move is pricing in. The model cannot tell you why the market moved (team news, weather, a large bet), only how big the move is in goals.

Two cautions. The implied λ assumes the market follows a Poisson shape, and the result is sensitive to the devig method on lines with a large margin. Treat it as a size estimate, not a precise figure.

What does the Poisson model get wrong?

It underestimates low-scoring draws. Dixon and Coles (Applied Statistics, vol. 46, 1997, pp. 265–280) modified Maher's independent model with a dependence adjustment for the four lowest scorelines (0-0, 1-0, 0-1, 1-1), because plain Poisson misprices them. Our calculator uses the plain independent model, with no Dixon-Coles correction.

Real scores have fatter tails. An Uppsala University thesis on 2015/16 results from 22 European leagues compared actual home-goal counts with Poisson's expectation: 45 matches with six home goals against 25 expected, and 14 with seven or more against 6 expected. The fit was close for 0-4 goals. The variance of goals is larger than the mean, which a pure Poisson cannot produce.

Goals are not independent of the score. A team 1-0 up at 70 minutes plays differently from one at 0-0. Red cards, game state and tactical changes all break the "constant rate" assumption. That is why the model is a pre-match tool; in-play prices need a different approach.

λ is a guess. The formula is exact. The input is not. Small sample sizes, promoted teams, new managers and fixture congestion all make expected goals uncertain, and the uncertainty is not shown in the output.

The market already knows Poisson. Bookmakers and sharp bettors have used this model for decades. A plain Poisson model built from public results is unlikely, on its own, to price a top league better than Pinnacle's closing line.

When is Poisson useful for a value bettor?

  • Pricing derived markets. Once you have λ for both teams from the main lines, you can price correct score, BTTS, team totals and alternative totals, and spot a soft bookmaker whose derived market is out of line with its own main price.
  • Sizing a move. Translating an odds drop into expected goals, as above, gives a sanity check on whether a move is large or small for that match.
  • Checking your own numbers. If your model and Pinnacle disagree on many matches in the same direction, the model is biased. Measuring closing line value over a sample is the cleaner test.
  • Learning. Building the matrix once by hand teaches more about how goal markets relate than any number of tables.

How Pinnacle Terminal handles this

Pinnacle Terminal does not build a Poisson model or predict scores. It shows Pinnacle's own prices and limits in real time, which already contain the market's view of each team's expected goals, and gives the fair price after removing the margin (Power is the default devig method). Every pre-match move is graded 0–10 and labelled, so you instantly see which ones matter: Big move (the odds drop and Pinnacle closes the market), Sharp drop (a fall of roughly 20% or more from the recent high), Limit-backed (the odds drop and Pinnacle raises the limit, a very confident signal), plus Downtrend, Rebound and Standard. Live in-play football drops are shown as they happen and filtered by context, without a grade. If you want to turn a goals-line drop into expected goals, the Poisson calculator and the odds drop calculator do the arithmetic; the Pinnacle dropping odds page explains the move labels.

FAQ

What is the Poisson distribution in betting?

It is a formula that converts an average rate of goals (expected goals, λ) into the probability of each exact goal count. Combined for two teams, it gives probabilities for every scoreline and every goals-based market.

What is the Poisson formula for goals?

P(k goals) = λ^k × e^(−λ) ÷ k!, where λ is the team's expected goals and k is the number of goals. For λ = 1.50, the chance of exactly 2 goals is 25.1%.

Is Poisson accurate for football?

It fits the number of goals per team reasonably well for 0-4 goals, but it underestimates low-scoring draws and very high scores, and it ignores game state. Dixon and Coles (1997) added a correction for the lowest scorelines.

Can a Poisson model beat the bookmakers?

A plain model built from public data rarely beats a sharp closing line, because bookmakers use the same mathematics. It is more useful for pricing derived markets, sizing odds moves and checking soft bookmakers against the main market. No model makes a result certain.

How do I get expected goals for a Poisson model?

From attack and defence ratings against league averages, from shot-based xG data, or by working backwards from the over/under and 1X2 prices of a sharp bookmaker.

Try it

See Pinnacle's goals lines move in real time, with every pre-match move graded 0–10 and live in-play drops filtered: start the Pinnacle Terminal 7-day free trial. Nothing is charged before day 8.

18+ · Bet responsibly. Only bet money you can afford to lose.

Put the sharp reference price to work.

Real-time Pinnacle odds, graded drops and your own Telegram alerts. 7 days free.

Start free trial