What xG really measures (and what it doesn't)
Expected goals — xG — has gone from a niche analytics term to something you'll hear on matchday broadcasts. It's genuinely useful. It's also widely misread. Here's what it measures, what it doesn't, and how a serious model treats it.
What xG actually is
Every shot in a match is assigned a probability of becoming a goal, based on the characteristics of the chance: distance from goal, angle, body part, whether it followed a dribble or a cross, the type of assist, and so on. That probability is the shot's xG. Add up every shot a team takes and you get their xG for the match — the number of goals an average team would have scored from those exact chances.
So when a side "created 2.4 xG", it means their chances were, collectively, worth about two and a half goals. If they scored one, they underperformed the chances they made. If they scored four, they finished well above what the chances were worth.
Why it beats the scoreline
A single football match is a small sample. Goals are rare and noisy — a deflection, a worldie, a goalkeeping error — and the final score often flatters one side. xG is a better read on who created the better chances, which is far more repeatable from week to week than the goals themselves.
That's the core insight: the process is more predictable than the result. A team that consistently out-creates opponents by the underlying numbers will, over time, win more than its early results suggest. This is why xG is a leading indicator and the raw scoreline is a lagging one.
What xG does not tell you
- It's not a verdict on a single game. Over 90 minutes, variance dominates. xG earns its keep over dozens of matches, not one.
- It says nothing about who took the chance. A 0.3 xG chance is worth 0.3 goals to an average finisher. Elite finishers beat their xG over large samples; the model shouldn't assume any one player is average, but it also shouldn't overreact to a hot streak.
- It ignores game state and tactics unless the model is built to account for them. A team chasing a game late will rack up low-quality shots that inflate xG without reflecting control.
- Not all xG models agree. Different providers use different training data and features, so two "xG" numbers for the same match can differ. Treat the number as an estimate with error bars, not gospel.
How a model should use it
xG is an input, not an answer. In our engine it feeds the attack and defence strengths of each team — how many goals they tend to create and concede once you strip out finishing luck. Those strengths, blended with the market's own view, drive the expected goals for an upcoming fixture, which in turn produce a full scoreline distribution.
The point is that xG is one signal among several, weighted by how much evidence supports it. A team with a big xG-vs-goals gap over three games is interesting; over thirty, it's a genuine signal. The discipline is in knowing the difference.
The takeaway
xG measures the quality of chances, not the justice of a result. Used well, it's the closest thing football has to a repeatable signal of team strength. Used badly, it's a stick to beat a scoreline that already happened.
At Momus Modal we don't hand you an xG number and a hunch — we show the full model read: expected goals for both sides, the correct-score grid they imply, and where that disagrees with the market. See a match read on the desk.
Every fixture, fully modelled — the correct-score grid, the derived markets, and Momus's written read.
Start free