Modelling team goals: xG, Dixon-Coles and honest limits
By Adam · Updated 12 July 2026 · 6 min read
Goals are the most efficiently priced numbers in football. Every model in the world points at the over/under, every sharp pound in the market flows through it, and the closing line on 2.5 goals is about as close to a solved price as this sport offers. So this guide is a little different from the other modelling walks: it explains how we build a goals probability — and it's honest about the fact that this is the market where our edge is thinnest, which the track record says in public. Companion to the team goals market page.
Raw scorelines lie
Start with the problem. Goals are so rare that a season of them is still a small sample, and finishing luck swamps the signal. Last season the league as a whole scored almost exactly its expected goals — 2.75 per match against 2.80 xG — but at team level the stories diverge wildly: one side scored 41 from chances worth 58, another scored 48 from chances worth 40. Fit a model on raw scorelines and you're fitting those accidents. So the model is fit on xG — the chance-quality numbers — which is a steadier read of how good an attack and a defence actually are. The fit is constructed so the model's expected value matches the average xG, not a flattened version of it.
Attack, defence, and home advantage
The machinery is a Dixon-Coles model: every team gets an attack strength and a defence strength, estimated together across the whole league, plus a single home-advantage term. Recent matches count more (the weighting half-life is about six months), and the strengths are shrunk gently toward the league average so one strange month doesn't reinvent a team. From any two teams the model produces two expected-goal rates — home and away — and from those, a full matrix of every plausible scoreline.
The low-score wrinkle
Independent goal counts get one thing reliably wrong: real football produces slightly more 0-0s and 1-1s than independence predicts — the cagey draw is a genuine phenomenon, not a cliché. Dixon and Coles' correction bends exactly those low-score cells and leaves the rest of the matrix alone. It's a small adjustment that matters disproportionately, because the 0.5 and 1.5 goal lines live in precisely the corner it fixes.
One matrix, every market
Everything the tool prices in this family reads off that one score matrix: match over/unders from 0.5 to 3.5, each team's totals, and both teams to score. That's a quiet advantage — the markets can't contradict each other, because they're all views of the same distribution. A bookmaker pricing them as separate products can drift internally; a matrix can't.
The honest limits
Now the part the sales page wouldn't tell you. On the track record, the goals model's calibration is dead-on — across last season's holdout it said 56.1% for over 2.5 and the overs arrived 56.1% of the time — but its edge over a naive baseline is slim, a couple of percent at best where the player markets run ten to twenty, and in some leagues it doesn't beat the baseline at all. That isn't a bug in the model; it's a fact about the market. Goals are where the world's modelling effort concentrates, and an efficiently priced market leaves little for anyone. When value does appear, it tends to hide in the divergence between a team's results and its underlying numbers — the side scoring 41 from 58 xG is priced by some of the market on its scorelines, and by this model on its chances. That gap is the argument; it's occasionally a very good one.
Where it fits in a bet builder
One practical caution ties this to the rest of the site: team-goal legs correlate with player legs from the same match. The game state that produces over 2.5 goals is the same one producing shots on target for the forwards, and bookmakers price that correlation into same-match combinations. The bet builder guide covers the trap in full — the short version is that a goals leg is a fine anchor and a poor multiplication partner. Treat it as its own bet, judged on its own price, and the model will tell you the honest probability behind it.
Frequently asked
Why model goals from xG instead of actual goals?
Because finishing luck swamps small samples. Last season one side scored 41 goals from chances worth 58 while another scored 48 from chances worth 40 — fit a model on scorelines and you're fitting those accidents. Expected goals is a steadier read of how good an attack and a defence actually are.
What is a Dixon-Coles model?
The standard workhorse of football goal modelling: every team gets an attack and a defence strength, fitted together across the league with home advantage, plus a correction for the fact that real football produces slightly more 0-0s and 1-1s than independent goal counts predict.
Is both teams to score priced from the same model?
Yes — match over/unders, team totals and BTTS all read off the same scoreline matrix, so the family can't contradict itself. A bookmaker pricing them as separate products can drift internally; a matrix can't.
Why is goals so hard to beat?
Because it's the most efficiently priced market in football — the world's modelling effort concentrates here. Our calibration is dead-on, but the margin over the base rate is slim in every league we run, and in some it doesn't clear the baseline at all. Each league's track record says so rather than hiding it.
Keep going
SharpXI models probabilities; it doesn't promise profit, and neither should anyone else. Betting involves risk — never stake more than you can afford to lose. 18+ — please gamble responsibly.