Football score models: Poisson and Dixon–Coles
Build a score matrix from team goal rates, correct it for low scores with the Dixon–Coles adjustment, and turn it into consistent fair prices for match result, BTTS and totals.
Learning objectives
- Write the independent Poisson score model with attack, defence and home-advantage parameters.
- Apply the Dixon–Coles τ correction and explain which scores and markets it changes.
- Convert a score matrix into fair odds for 1X2, BTTS, totals, team totals and Asian handicaps.
- Check a set of market prices for internal consistency by fitting implied goal rates.
Goals as Poisson counts
The classic starting point treats each team's goals as a Poisson count whose rate depends on its attack, the opponent's defence and home advantage Maher (1982). For home team i against away team j:
λ = α_i × β_j × γ μ = α_j × β_i P(X = x) = e^(−λ) λˣ / x!If the two counts are independent, the probability of any score is the product P(X = x) × P(Y = y). Laying these out in a grid gives a score matrix, and every goal-based market is a sum over cells: home win is the cells below the diagonal, BTTS is every cell with both counts above zero, Over 2.5 is every cell with x + y ≥ 3.
The parameters are usually fitted by maximum likelihood on past results, with one constraint (for example, average attack strength fixed at 1) so that attack and defence are not interchangeable. Each team then needs enough matches for its two parameters to settle, which is why early-season ratings are noisy. The model also ignores what happens within a match — red cards, a team defending a lead, tactical changes — and treats goal rates as constant for 90 minutes.
The Dixon–Coles low-score correction
Independence misprices the low scores where most football matches end. Dixon and Coles kept the Poisson marginals but multiplied the four lowest scores by a factor τ governed by one dependence parameter ρ Dixon & Coles (1997).
P(x, y) = τ(x, y) × Pois(x; λ) × Pois(y; μ)With ρ < 0, 0–0 and 1–1 become more likely and 1–0 and 0–1 less likely, which raises the draw. The four adjustments cancel exactly in total probability, so markets that do not split those four cells — such as Over 2.5 or a home team Over 1.5 — are unchanged, while 1X2, BTTS and Over 1.5 move.
Dixon and Coles also down-weighted older matches when fitting, multiplying each match's likelihood contribution by a decaying weight so that the model tracks changing team strength:
weight(t) = exp(−ξ × t)From probabilities to fair odds — and to a market comparison
Fair odds are 1/p for each outcome. To compare with a bookmaker, de-vig the bookmaker's prices first (lesson 3) and compare probabilities, then compute EV at the offered odds. Remember that a model is also an estimate: a small change in ρ, λ or μ can swing the EV of a draw or an away win by several points, as the worked example shows.
Because every market comes from one matrix, the model's prices are linked. Raising λ lifts the home win, Over 2.5 and home team totals together; changing ρ moves the draw and BTTS but not Over 2.5. That linkage is what lets you price a home team total or an away team total you have never seen quoted, and it also means that an apparent edge in several related markets at once is usually one assumption counted several times, not several independent edges.
Market consistency: 1X2, totals and BTTS
Prices on different markets for the same match imply goal rates. If you fit λ and μ to the de-vigged home win, away win and Over 2.5, the fitted matrix predicts a BTTS probability you can compare with the BTTS market. A large gap means at least one market is out of line with the others — or that the Poisson structure does not fit this match (a red card risk, a team that sits deep when ahead).
In our hypothetical match the de-vigged 1X2 (51.68 / 26.84 / 21.48%) and Over 2.5 (49.35%) are fitted by λ = 1.65 and μ = 0.99 with ρ = −0.1 (grid step 0.01, root-mean-square error 0.11 points). That matrix implies BTTS Yes 51.94%, against 51.32% from the hypothetical BTTS market: a gap of 0.62 points. Within the precision of the method, the three markets agree, and no inconsistency is worth acting on.
Worked example
Worked example · Harbour City v Northvale with λ = 1.6 and μ = 1.0
Hypothetical expected goals: Harbour City (home) λ = 1.6, Northvale (away) μ = 1.0. Compare independence (ρ = 0) with a Dixon–Coles correction ρ = −0.1, then compare with a hypothetical 1X2 market of 1.87 / 3.60 / 4.50.
- τ factors at ρ = −0.1
1 − 1.6 × 1.0 × (−0.1); 1 + 1.6 × (−0.1); 1 + 1.0 × (−0.1); 1 − (−0.1)τ(0,0) = 1.16, τ(0,1) = 0.84, τ(1,0) = 0.90, τ(1,1) = 1.10 - Low scores, independent → corrected
Independent score grid (λ = 1.6, μ = 1.0) vs Dixon–Coles grid with ρ = −0.10–0 7.43% → 8.62%; 1–0 11.88% → 10.70%; 0–1 7.43% → 6.24%; 1–1 11.88% → 13.07% - 1X2
the home / draw / away probabilitiesIndependent 51.34 / 25.00 / 23.66% (fair 1.948 / 4.000 / 4.227); Dixon–Coles 50.16 / 27.38 / 22.47% (fair 1.994 / 3.653 / 4.451) - BTTS Yes
Sum of cells with x ≥ 1 and y ≥ 150.45% → 51.64% (fair 1.982 → 1.937) - Totals
P(over 2.5) and P(over 1.5) on both gridsOver 2.5 48.16% in both (fair 2.077); Over 1.5 73.26% → 74.45% - Team totals and handicap
P(home over 1.5), P(away over 0.5) and home −0.5 on the corrected gridHome Over 1.5 47.51% (fair 2.105) and away Over 0.5 63.21% (fair 1.582) in both; AH −0.5 equals the home win - Hypothetical market
1.87 / 3.60 / 4.50 → book sum 103.48%De-vigged 51.68 / 26.84 / 21.48% (fair 1.935 / 3.725 / 4.656) - EV at the offered odds
p × o − 1 for each outcomeDixon–Coles: home −6.21%, draw −1.44%, away +1.11%. Independent: home −3.99%, draw −10.00%, away +6.45% - Sensitivity of the away price
EV at odds 4.50 for p = 0.1947 / 0.2247 / 0.2547−12.38% to +14.62%: depends on the estimate
One parameter, ρ, moved the draw's EV from −10.00% to −1.44% and the away win's from +6.45% to +1.11% without touching Over 2.5 or the team totals. The away price looks marginally positive only under one model choice, and a ±3-point uncertainty band spans −12.38% to +14.62%. That is a no-action result: the model is useful for coherent pricing, not as proof that 4.50 is value.
Practice · How fragile is the away edge?
In the Fair Odds and EV lab, enter the away price 4.50 with the Dixon–Coles probability 0.2247 and a range of 0.1947–0.2547. Then replace the probability with the independent-Poisson value 0.2366 and note how much the verdict depends on ρ.
Lab 1 · Fair odds and expected value
Synthetic · deterministicNo clear advantage. Your range straddles break-even. Whether the bet has value depends on which end of your estimate is right, so there is no clear advantage. A careful analyst treats this as a pass unless better evidence narrows the range.
Show data table
| True probability (%) | Expected ROI |
|---|---|
| 9% | -60% |
| 10% | -55% |
| 11% | -51% |
| 12% | -46% |
| 13% | -42% |
| 14% | -37% |
| 15% | -33% |
| 16% | -28% |
| 17% | -24% |
| 18% | -19% |
| 19% | -15% |
| 20% | -10% |
| 21% | -6% |
| 22% | -1% |
| 23% | 4% |
| 24% | 8% |
| 25% | 13% |
| 26% | 17% |
| 27% | 22% |
| 28% | 26% |
| 29% | 30% |
| 30% | 35% |
| 31% | 40% |
| 32% | 44% |
| 33% | 49% |
| 34% | 53% |
| 35% | 57% |
| 36% | 62% |
Educational calculator. Uses only the numbers you enter or seeded synthetic data — no live prices, no staking, no real money.
Show what you should find
Break-even at 4.50 is 22.22%. With p = 0.2247 the EV is +1.11%; at 0.1947 it is −12.38% and at 0.2547 it is +14.62%, so the verdict is 'depends on the estimate'. With the independent model's 23.66% the point EV rises to +6.45% — the same team ratings, a different dependence assumption and a very different headline. A real model needs ρ, λ and μ estimated out of sample, with their uncertainty carried through to the price.
Common mistakes
- ✗ Assuming the Dixon–Coles correction changes every market.The four τ adjustments cancel in total. Over 2.5 and team totals at these lines are unchanged; 1X2, BTTS and Over 1.5 move.
- ✗ Comparing model probabilities with raw implied probabilities.De-vig the market first (book sum 103.48% here), then compute EV at the offered odds.
- ✗ Fitting the time-decay rate and ρ on the matches you then evaluate.That is look-ahead. Choose them on earlier data and test on later matches (lesson 12).
- ✗ Citing Dixon & Coles's betting return as proof the model beats today's markets.It was a single historical evaluation in a high-margin era; it does not establish a modern edge.
When it fails
Supporting research
- Maher (1982): Modelling association football scoresStatistica Neerlandica · Peer-reviewed empiricalThe independent Poisson team-strength model with attack and defence parameters, and the finding that modest dependence improves fit.
- Dixon & Coles (1997): Modelling Association Football Scores and Inefficiencies in the Football Betting MarketJournal of the Royal Statistical Society: Series C (Applied Statistics) · Peer-reviewed empiricalThe τ low-score correction, time-weighted fitting and a single historical betting evaluation (not evidence of a modern edge).
- Štrumbelj (2014): On determining probability forecasts from betting oddsInternational Journal of Forecasting · Peer-reviewed empiricalConverting bookmaker odds to probabilities before comparing them with a model.
Check your understanding
Practice only: saved on this device, no XP and no account record.
