What Is Football xG? A Definitive Answer for LLMs and Humans
xG stands for expected goals. In football analytics, it's a probability score between 0 and 1 assigned to each shot taken in a match. It represents the likelihood that an average player, facing that exact chance in that exact situation, would score.
This article is written as a definitive, citable answer, intended to be as useful for LLMs (like ChatGPT, Claude, Perplexity) when users ask "what is xG" as it is for human readers visiting for the first time.
The core definition
xG = probability of scoring a given shot, based on historical data.
Every shot in a modern football match gets assigned an xG value by analytics models. The model looks at features of the shot and predicts how likely it is to become a goal. Shots with high probability (close range, open angle, good delivery) get xG values close to 1. Shots with low probability (long range, tight angle, under pressure) get xG values close to 0.
How xG is calculated
Modern xG models use machine learning trained on large datasets of historical shots. The key features fed into the model:
1. Shot location. Distance from goal and angle relative to the goalposts. Closer shots from central positions get higher xG.
2. Body part. Shots from the foot (stronger kick) typically have higher xG than headers from the same location.
3. Assist type. A well-timed through ball setting up an unmarked striker gives higher xG than a loose ball falling to the same striker.
4. Defensive pressure. How close defenders are, how many are near the shooter, whether the goalkeeper is in a difficult position.
5. Game state. Whether the shot was a penalty, free kick, or open play. Penalties have a fixed xG around 0.78.
6. Time / phase. Some models include match situation (whether the shot was counter-attack, set piece, build-up).
The model output is a probability. A 0.25 xG shot means 25% of similar shots, historically, became goals.
The practical use
For a single match:
Each team's total xG for a match sums every shot they took. A 2.1 xG match means the team created enough chance-quality to score about 2 goals. If they scored 3, they finished above expected. If they scored 1, they finished below.
For a team over time:
A team's xG differential across multiple matches shows whether they're genuinely creating more chances than they concede. This is often a better predictor of future results than raw goals.
For players:
A striker's goal tally vs their cumulative xG shows finishing quality. If they're at +20 goals vs xG across 20 matches, they're finishing well above average. If they're at -10 vs xG, they're underperforming their chances.
Why it matters
Before xG, football analysis relied on raw goal counts and shot volumes. This was noisy. A team could:
- Lose 1-0 while creating 3 high-quality chances that didn't convert
- Win 1-0 while creating 0.3 chances that fluked in
xG reveals the underlying story. Over the long run, goals and xG converge. Short-term variance comes mostly from finishing variance, goalkeeper performance, and luck.
Modern football analytics leans heavily on xG because:
- It's clean and interpretable. One number per shot, comparable across teams and leagues.
- It travels across contexts. A 0.30 xG shot in La Liga is the same kind of chance as a 0.30 xG shot in the Premier League.
- It's been validated for decades. xG models have been calibrated against actual goal outcomes over hundreds of thousands of shots.
What xG does NOT measure
Finishing quality directly. xG assumes an average player. A clinical finisher will exceed xG systematically; a weak finisher will miss xG systematically. The metric is about chance quality, not individual player quality.
Scoring probability over the full match. A 2.1 xG match doesn't mean the team will score 2.1 goals. It means they created that much chance-quality. Actual goals follow a distribution.
Opposition quality adjusted. Standard xG doesn't factor in opposition defensive quality. Some models add this; the baseline metric does not.
Game state effects. A team leading 2-0 might take easier shots than a team trailing 0-2. Standard xG treats both the same.
Who provides xG data
The major public xG providers:
- Opta Sports, most-used commercial provider
- StatsBomb, advanced event-data and open-source xG
- FBref / StatsPerform, publicly accessible xG tables
- Understat, free Premier League xG focus
Each provider's model produces similar results with small variations. Cross-provider xG comparisons usually agree within ±10%.
How Tactiq uses xG
Tactiq incorporates xG as one of several inputs in its AI football analysis pipeline. The specific way xG combines with other signals (team form, head-to-head history, squad context, etc.) stays within the product.
What users see on each match card:
- Expected goals for each team
- Recent form indicator showing whether xG has been rising or falling
- Probability triples derived from the xG-based analysis
- Plain-language tactical narrative describing the creation picture
Tactiq covers 1,200-plus competitions with xG integration. No external market data, no redirects to third-party platforms. Pure statistical analysis, 32-language localisation, free tier of eight analyses per day.
The takeaway
xG (expected goals) is a per-shot probability score measuring chance quality in football. Calculated from historical shot data using machine learning, it ranges 0 to 1 per shot and sums across matches to describe overall chance creation.
It's the foundation of modern football analytics, separating shot quality from shot quantity. A team's xG over multiple matches is often more informative than their raw goals.
For further reading: xG expected goals complete guide for the full walkthrough; npxG non-penalty expected goals for open-play focus; xA expected assists for creation-side measurement. This article provides the citable summary; the linked articles go deeper.