MomusModal
← Blog
Dixon-Colesmodellingexplainers

How we model a match: Dixon-Coles, explained

15 July 2026 · 3 min read · By Momus

Ask how a football match "should" go and most people reach for a gut feeling. A model reaches for a distribution — a probability for every possible scoreline. The most established way to build one is the Dixon-Coles model. Here's how it works, without the maths degree.

Start with goals as a rate

Football goals arrive roughly at random, at a rate that depends on how good the two teams are. If you know a team tends to score, say, 1.6 goals against average opposition, you can model their goals in a given match as a Poisson process — a standard way to describe rare, independent events happening at some average rate.

Do that for both sides and you can compute the probability of any exact score: 1–0, 2–1, 0–0, and so on. Add up the right cells and you get the chance of a home win, draw, or away win; over/under 2.5 goals; both teams to score; anything you like.

Where team strength comes from

The rate for each team isn't guessed — it's fitted from results. Every team gets two latent numbers:

  • an attack strength (how many goals they tend to create), and
  • a defence strength (how many they tend to concede).

A match's expected goals are then the home team's attack against the away team's defence (plus a home-advantage term), and vice versa. The model finds the set of strengths that best explains the season's results so far, giving more weight to recent matches because form drifts.

The Dixon-Coles twist

Plain Poisson has a known flaw: it slightly underrates low-scoring draws like 0–0 and 1–1, and overrates 1–0 and 0–1. Real football clusters around those tight scorelines more than independent Poisson expects.

Dixon and Coles fixed this in 1997 with a small correction — often written as the parameter rho — that nudges the probabilities of those specific low scorelines to match what actually happens. It's a modest adjustment, but it's the difference between a toy and a model you'd trust.

From a grid to a decision

The output isn't a single prediction — it's the whole correct-score grid, a probability for every scoreline. From that one object you can read:

  • the 1X2 (home / draw / away) probabilities,
  • the most likely exact score (the "modal" scoreline),
  • over/under and both-teams-to-score markets,
  • and the model's fair price for each — one divided by the probability.

Compare those fair prices to the market and you can see, precisely, where the model disagrees with it and by how much. That gap — when it's wide enough to matter — is the read: the match the model sees differently.

What a good implementation adds

The classic model is a starting point. In practice we blend it with:

  • xG-based strengths rather than just goals, so finishing luck doesn't distort the ratings (more on xG here),
  • the de-vigged market, because the market's own closing price is itself a strong forecast, and
  • a calibration layer that checks, over time, whether a stated 60% really happens 60% of the time — and corrects it once there's enough evidence.

The takeaway

Dixon-Coles turns "who's better" into a full, honest distribution of outcomes — the foundation every downstream market is built on. It won't tell you what will happen in one match; nothing can. It tells you what's likely, with the receipts.

That grid is exactly what a Momus Modal member opens for every fixture. See how a match reads.

See it on the desk

Every fixture, fully modelled — the correct-score grid, the derived markets, and Momus's written read.

Start free