Expected Goals (xG)
Expected Goals (xG) assigns every shot a probability of becoming a goal, based on historical data of similar shots. Theno.10 does not compute xG. We ingest values that StatsBomb has already computed, and we say so here because the difference decides how far you should trust the number.
Where our xG comes from
Essentially one source: StatsBomb Open Data, the free public event dataset. Every shot in it carries StatsBomb's own `statsbomb_xg` value. A player's season xG on this site is the sum of those per-shot values across the matches the dataset covers — an aggregation, not a model of ours.
Measured against production on 27 July 2026: of the 835 season rows that hold an xG figure, 824 are StatsBomb. The other 11 predate per-metric provenance and carry no named provider, so we cannot tell you where they came from — which is itself the reason to say it here rather than round it to "one source".
Coverage is therefore exactly the coverage of that dataset: FA WSL, NWSL, UEFA Women's Champions League, FIFA Women's World Cup, Olympics, and only the seasons StatsBomb has published. Our other providers do not supply xG at all — Sportmonks does not include it on our plan, and API-Football does not carry it.
What we do not do
- We do not train an xG model. There is no internal model, tuned on women's football data or otherwise.
- We do not estimate xG for leagues without event data. A competition outside the list above has no xG, and the site shows nothing rather than a figure.
- We do not blend xG across providers. There is nothing to blend: only one source produces it.
What the underlying model weighs
These are the variables of StatsBomb's model, not ours, and they are summarised here so the number is readable — not to imply we control them:
- Distance to goal — shots closer to the goal have a higher xG.
- Shot angle — the wider the angle available to the shooter, the higher the xG.
- Body part — headers generally have lower xG than shots taken with the feet.
- Play type — open play, free kicks, corners and penalties all have different baselines.
xA, and why it is derived
StatsBomb Open Data has no native xA field, so expected assists are derived: a pass is credited with the xG of the shot it created. That is a documented choice on our side, and it is the one number on this page that we compute.