How to Derive Expected Goals From Odds
Remove the margin from the market's prices to get fair probabilities, then find the pair of scoring rates whose modelled scoreline distribution best reproduces those probabilities. With a Poisson-based model and a correction for the dependence between team scores, the fitted rates are the market's implied goal expectations.
Why this is a fitting problem
A match odds market prices three outcomes: home win, draw, away win. Those three numbers do not translate directly into two goal expectations, because many different scoring rates can produce similar win, draw, and loss probabilities.
The standard approach inverts a scoring model instead.
1. Convert prices to probabilities. Take the reciprocal of each decimal price. The three will sum to more than one.
2. Remove the margin. Divide each by the sum so they total one. This proportional method is the simplest and it distributes margin evenly in probability terms, which tends to misstate it on strong favourites. Other methods, such as removing margin in odds terms or fitting a margin parameter, produce slightly different fair probabilities and therefore slightly different fitted rates. Record which you used.
3. Choose a scoring model. The common starting point treats each side's goals as Poisson distributed with its own rate. Given two rates, the probability of every scoreline follows, and summing the relevant scorelines gives win, draw, and away probabilities, plus totals.
4. Fit. Search for the pair of rates that minimises the difference between modelled and market probabilities. Any standard optimiser handles this in milliseconds.
5. Read the output. The fitted rates are the market's implied expected goals for each side, and their sum is the implied match total.
The Poisson correction
Independent Poisson distributions underestimate draws and low scores in real football. The widely cited Dixon and Coles approach adjusts the probabilities of the lowest scorelines to correct this dependence. Without such a correction, fitted rates are biased, particularly in matches the market prices as tight.
Using more markets to constrain the fit
Match odds alone leave the fit under-determined: several rate pairs fit almost equally well. Additional markets pin it down.
Totals. Over and under prices constrain the sum of the two rates directly, which is the weakest part of a match-odds-only fit.
Asian handicap. Constrains the difference between the rates, since it prices margin of victory with the draw removed.
Both teams to score. Constrains the joint probability of each side scoring at least once, which is sensitive to the low-score region the correction addresses.
Correct score. Where liquid, prices individual scorelines directly, though margins are usually wide and the market thin.
A practical approach. Fit to match odds and totals together, weighting each market by its liquidity or inverse margin, then check the fitted model against the handicap and both-teams-to-score prices you did not fit to. Large disagreement indicates the scoring model is wrong rather than the market being mispriced.
Weighting markets in the fit
Give each market a weight reflecting how much information it carries: tighter margins and higher liquidity deserve more influence. An unweighted fit lets a wide correct-score market pull the rates as hard as a liquid totals market, which usually makes the result worse.
Where the method breaks down
Margin removal dominates the result. On lopsided matches, the choice of method moves the fitted rates more than most modelling decisions. Test sensitivity by refitting with a different method.
The distribution may not fit the competition. Poisson with a low-score correction works reasonably for football. Sports with different scoring processes, or competitions with unusual variance, need a different distribution, and using the wrong one produces well-centred rates with wrong tails.
Scoring rates are not constant. Real matches change with game state, substitutions, and red cards. A single pair of rates for the whole match is an approximation, adequate for pre-match pricing and poor for in-play work.
Thin markets give unstable fits. With wide margins and stale prices, the fit chases noise. Filter by market liquidity before trusting the output.
It is the market's view, not truth. These are implied expectations, useful as a benchmark to compare your own model against, and not an independent estimate. Treating them as ground truth for training a model means learning to reproduce the market.
Validation. Compare fitted totals against observed goals across a large sample. The implied numbers should be well calibrated, since they come from prices that already are.
This page describes data and method and is not betting advice.
Frequently asked questions
- How do you calculate expected goals from betting odds?
- Convert prices to implied probabilities, remove the margin so they sum to one, then fit a scoring model, commonly Poisson with a correction for low-score dependence, to find the pair of scoring rates that best reproduces the market's probabilities. Those fitted rates are the implied expected goals.
- Why can't you get goal expectations directly from match odds?
- Because three outcome probabilities do not uniquely determine two scoring rates. Many rate pairs produce similar win, draw, and loss probabilities. Adding totals or Asian handicap prices constrains the sum and difference of the rates, which makes the fit far more stable.
- What is the Dixon and Coles correction?
- An adjustment to independent Poisson scoring models that modifies the probabilities of the lowest scorelines, correcting the tendency of independent models to underestimate draws and low scores in football. Without it, rates fitted from market prices are biased, particularly in matches priced as close.
- Are odds-implied expected goals the same as model expected goals?
- No. Odds-implied values are the market's view recovered from prices, while expected goals from event data are estimated from shot characteristics. The first is a benchmark to compare against; training a model on it teaches the model to reproduce the market rather than to predict matches.