Opta describes xG as a measure of chance quality based on information about a shot, including factors such as distance, angle, body part, assist type, and whether it is a one-on-one. That definition supports Opta xG; another provider can use different training data and features (Opta: What is xG?).
How the xG Model Works
xG models learn a relationship between historical shot features and whether those shots became goals. The output is a probability conditional on the model and its available data.
- Location and angle: where the shot was taken relative to goal.
- Body part: for example, head or foot.
- Assist and chance type: such as a through ball or one-on-one.
- Match situation: including open play or a set piece where represented.
- Available tracking context: some models can include goalkeeper or defender positions; event-only models cannot.
The output for a shot lies between 0 and 1. A value of 0.20 means a 20% modelled scoring probability for that shot. It does not mean one-fifth of a goal was scored or that every provider must assign 0.20.
Checked Aggregation Example
Suppose one provider assigns three illustrative shots these probabilities:
| Shot | xG |
|---|---|
| A | 0.10 |
| B | 0.25 |
| C | 0.40 |
| Team total | 0.75 |
The team xG is 0.10 + 0.25 + 0.40 = 0.75. This is an expected count: expected value adds the probability-weighted contribution of each outcome (OpenStax expected value).
The 0.75 total is not the probability of scoring at least once. If the three shot outcomes were independent, that probability would be 1 - ((1 - 0.10) x (1 - 0.25) x (1 - 0.40)) = 59.5%. Independence is an assumption and may not describe shots generated within one match (OpenStax independent events).
xG vs Actual Goals
Actual goals minus xG is a descriptive residual for the selected shots and provider. A positive residual says more goals were observed than the model's summed expectation; it does not identify the cause.
Possible contributors include random variation, finishing and goalkeeping skill, model omissions, shot dependence, data changes, and selection effects. A historical residual does not prove that a team is "due" to move in the opposite direction. Regression to the mean requires repeated noisy measurement and careful attention to why an extreme group was selected (International Journal of Epidemiology).
Using xG in a Forecast
xG can be an input, but historical team xG is not itself a next-match probability. A documented forecasting workflow should:
- Keep one provider's definitions consistent or reconcile changes explicitly.
- Separate training matches from later evaluation matches.
- Define how opponent strength, home advantage, lineups, and recency enter the model.
- Convert model output into the exact market outcome being evaluated.
- Test calibration and predictive scoring on unseen data.
Time-ordered validation avoids training a model on observations from its future, while calibration checks whether predicted probabilities correspond with observed frequencies across suitable groups (scikit-learn TimeSeriesSplit; scikit-learn probability calibration). Neither test guarantees a future result.
Limitations of xG
- Provider dependence: values cannot be compared safely without matching definitions and versions.
- Feature limits: an event-data model may not observe defensive pressure or goalkeeper position.
- Expectation is not deservedness: xG evaluates modelled shot quality, not whether a team morally or tactically merited a result.
- Aggregation hides sequence: two matches with the same total can contain different shot counts and distributions.
- Post-shot metrics differ: Opta's xGOT uses the end location of an on-target shot in addition to the underlying chance quality, unlike its pre-shot xG (Opta xGOT).
- No direct value claim: a difference between xG and goals does not establish a favourable betting price.
Use xG as a named, versioned measurement with known inputs. The useful question is not "what is the team's xG?" in isolation, but "which provider, which shots, which period, and what decision does this measurement support?"
18+. Gambling involves risk. Please gamble responsibly. If you need support, visit begambleaware.org.
Related resources
Continue with BTTS Meaning: What It Means in Betting for the next part of this topic, or return to Betting Glossary: Every Betting Term Explained in Plain English to compare the other guides in this collection.
Continue learning
- Next guide: Expected Value
- Related guide: Fractional Odds
- Go deeper: Expected Goals (xG) Explained
Assumptions and limitations
xG values are model outputs, not universal facts about a shot. The definition and input examples use Opta's published xG methodology; another provider can assign a different value. Summing shot xG gives expected goals under the model, while a probability of at least one goal needs a separate dependence assumption.

