All scores →
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…

What Expected Goals (xG) Actually Tells You

By 4Soccer Staff · · 4 min read

xG is a chance-quality measure, not a prediction and not a verdict. Here is what goes into it, what it is good for, and the four places it will mislead you.

Expected goals is on every broadcast now, and it is still routinely misused — by people defending a bad result and by people attacking a good one.

It is a genuinely useful number. It is also a narrower one than the arguments around it suggest.

What it is

Expected goals (xG) is the probability that a shot is scored, based on the characteristics of the shot.

Take a shot from 18 yards, at a tight angle, with the left foot, from an open-play move. A model looks at a large history of shots with similar characteristics, finds that roughly 6 per cent of them went in, and assigns that shot 0.06 xG.

Add up every shot a team took in a match and you get their xG for that match. A team with 1.8 xG created chances that would, on average, produce about two goals.

The key word is average. xG does not say what happened. It says what that collection of chances is typically worth.

What goes into a model

Every provider builds their own, and the details differ, but most use some combination of:

  • Distance from goal — the dominant factor by a distance
  • Angle to the goal
  • Body part — headers convert much worse than feet from the same spot
  • Type of play — open play, fast break, direct free kick, set piece, penalty
  • The pass before it — a cutback creates a better chance than a cross
  • Defensive pressure — some models include defender positions, some do not
  • Game state — whether the team was chasing or protecting a lead

Because every model differs, xG figures are not directly comparable between providers. Two respectable sources can publish different xG for the same match and both be right by their own definitions. Always know whose number you are reading.

A penalty is the one shot everybody agrees on. Penalties are converted roughly three times in four, so essentially every model assigns a penalty a fixed value close to that — which is why a team awarded two penalties has nearly 1.6 xG before it does anything else.

What it is good for

Judging a performance rather than a result. A team that loses 1–0 having created 2.4 xG to their opponent's 0.3 played well and lost. That is a real, useful statement, and it is one the scoreline actively hides.

Judging a run. Over ten matches, the gap between a team's goals and its xG usually narrows. A team massively outperforming its xG is probably about to stop, and one underperforming is probably about to score more. This is the single most practical use.

Judging a striker's chances rather than their finishing. A forward getting 0.6 xG a game is getting into the right places. Whether they are finishing them is a different question — and the answer is usually "too few shots to tell".

Spotting a broken attack. A team with lots of shots and low xG is shooting from bad places, which is a tactical problem, not a finishing one.

What it is not good for

One match, in isolation. A 90-minute sample of ten shots is tiny. A team can genuinely deserve to win on xG and lose because one 0.04 chance went in, and nothing is wrong with either the model or the world.

Settling whether a goal was deserved. xG has nothing to say about a 30-yard volley. The model rates it at 0.03 because almost all such shots miss; the fact that this one flew in is not a modelling failure.

Measuring finishing skill quickly. Finishing skill exists, but separating it from luck takes seasons, not weeks. A striker who has outperformed his xG by four goals in eight games has told you very little.

Defending, comprehensively. xG against measures the quality of chances a team allowed, which is useful, but it says nothing about a defence that concedes very few shots and then loses to a set piece.

The derived numbers worth knowing

xA — expected assists. The chance that a given pass becomes an assist, based on the quality of the shot it creates. A playmaker with high xA and low actual assists is creating good chances for teammates who are not scoring them.

Goals minus xG. The overperformance number. Useful over a season, noisy over a month.

Post-shot xG, sometimes called xG on target, which adds where the shot ended up in the goal. Subtracting a keeper's goals conceded from the post-shot xG they faced gives goals prevented — the closest thing to a clean shot-stopping metric there is, and the reason a keeper on a bad team can look excellent.

Expected points. Simulate a season's matches from their xG many times and you get the points a team "should" have. Handy for spotting a team whose league position is running ahead of its performances.

Where 4Soccer's numbers come from

Our MLS and NWSL xG, xA and goalkeeping numbers come from a public expected-goals model whose authors publish the summary data and document the methodology in detail, which is the right place to read about how the numbers are built.

We publish those numbers rather than inventing our own. Where a competition has no xG source we say so and show goals instead, rather than quietly filling the column with something else.

One number on our club pages is ours, not theirs: the fixture-difficulty rating in the fantasy planner is computed from goals scored and conceded, shrunk toward the league average, adjusted for home advantage. It is deliberately simple and the method is printed on the page — because a rating you cannot inspect is a rating you should not trust.

How to use it in an argument

Good: "They lost, but they created the better chances — 2.1 xG to 0.9 — and over a season that usually evens out."

Bad: "They deserved to win, xG says so." xG does not do deserving. It describes chances.

Also bad: "xG is nonsense, goals are what count." Goals are what count. xG is a better predictor of future goals than past goals are, which is precisely why it exists.


See it: MLS leaders · NWSL leaders · players. Every club page carries xG for and against, and expected points next to actual points.

Search more on this

Keep reading