Guide · Expected Goals

What Is xG and How Is It
Used in AI Models?

Expected goals is the single most important number in modern football analysis. It measures the quality of chances, not the luck of finishing, and it sits at the heart of every serious prediction model. Here is what xG is, how it is built, and why AI leans on it so heavily.

0 - 1
Every chance scored between zero and one
1 shot
The unit xG is built from
90 min
xG accumulates live as chances are created

AI Football PredictionsWhat Is xG?

For most of football’s history, the only number that mattered was the scoreline. A 1-0 win looked identical on paper whether a team dominated for ninety minutes or survived a battering with one lucky break. Expected goals, universally shortened to xG, changed that. It gives every chance a value based on how likely it was to be scored, which lets analysts separate how well a team played from how the ball happened to bounce. Once you understand xG, most other advanced football metrics start to make sense, and you can see exactly why AI models treat it as the foundation rather than one stat among many.

What xG Actually Measures

Expected goals is a measure of chance quality. Every shot, and in some models every clear opportunity, is assigned a value between zero and one that represents the probability an average player would score it. A tap-in from two yards might be worth 0.9 xG, meaning nine times out of ten it goes in. A speculative effort from thirty yards might be worth 0.03. Add up all of a team’s chances in a match and you get their total xG, an estimate of how many goals their play deserved.

The power of the metric is that it strips out finishing luck over time. A striker who scores from a half chance has not suddenly become a better player; they have converted an unlikely opportunity. xG captures the underlying quality of what a team creates and concedes, which is far more stable from match to match than goals themselves. That stability is exactly what makes it predictive.

It also gives you a shared language for arguments that used to go nowhere. Was that a smash and grab or a deserved win? Before xG these were matters of opinion, settled by whoever spoke loudest. Now there is a number that both sides can point at, built the same way for every team, in every match, across a whole season.

The core idea

Goals tell you what happened. xG tells you what was likely to happen. A team can win 1-0 while losing the xG 2.4 to 0.6. Over a season, xG tends to describe a side’s true level far better than results alone.

How a Single Chance Gets a Value

An xG model is trained on hundreds of thousands of historical shots. For each one it knows the outcome, goal or no goal, and a set of features describing the chance. It learns how much each feature changes the odds of scoring, then applies that learning to new shots. The most important factors are consistent across every credible model.

Shot factorWhat it capturesEffect on xG
Distance from goalHow far the shot travelsCloser chances score far more often
Angle to goalHow much net is visibleTight angles cut the value sharply
Body partFoot, head or otherHeaders convert less than clear foot shots
Assist typeCross, through ball, cutbackCutbacks create high-value chances
Defensive pressureDefenders between ball and goalCrowded chances are worth less
Phase of playOpen play, set piece, counterFast breaks often mean better chances

None of these factors is decisive alone. A shot close to goal from a tight angle under heavy pressure may be worth less than a slightly longer effort with a clear sight of the net. The model weighs them together, which is why two shots from the same spot on the pitch can carry very different values. It is also why xG figures differ slightly between data providers: they train on different samples and include different features, so treat xG as a well-grounded estimate rather than an exact constant.

A common mistake

xG is not assigned by watching a shot and judging it by eye. It is the output of a trained model applied to the measurable features of the chance. It is a probability, not an opinion, which is precisely why it slots so neatly into a prediction system.

The xG Family: Variants Worth Knowing

Once you have a value for every chance, you can slice it in useful ways. A handful of related metrics show up constantly in analysis, and knowing what each one adds saves a lot of confusion.

xGA (expected goals against)

The same idea applied to chances a team concedes. Low xGA is the signature of a genuinely solid defence, as opposed to one flattered by good goalkeeping or luck.

npxG (non-penalty xG)

Strips out penalties, which sit around 0.76 xG each and can inflate a side’s numbers. Better for judging open-play quality.

xGOT (expected goals on target)

Adds where the shot ended up in the goal. It measures finishing and shot placement, filling the gap between chance quality and execution.

xGChain & xGBuildup

Credit players involved in the moves that lead to chances, not just the final shot. They surface the deep-lying creators an assist count misses.

For prediction, the two that matter most are xG created and xG conceded. Together they describe both ends of a team’s performance, and the gap between them, sometimes called xG difference, is one of the most reliable single indicators of how good a side actually is over a run of matches.

A newer refinement worth flagging is post-shot xG, closely related to xGOT. Standard xG values a chance at the moment the shot is taken; post-shot xG only considers shots on target and factors in where the ball was heading, which isolates how well the shooter placed the effort and how well the keeper responded. Prediction models use these variants to tune their view of individual players, then fold that back into the team-level estimate.

See xG built into every prediction

SportsKinetic turns raw expected goals into ranked scorelines and win probabilities, so you read the story, not the spreadsheet.

How AI Models Use xG

Inside a prediction model, xG is the bridge between what teams have done and what they are likely to do. Rather than feed the model raw results, which are noisy and easily distorted by a single deflection, engineers feed it xG-based estimates of each team’s attacking and defensive strength.

  • Estimate strength. Recent xG created and conceded, weighted toward the latest matches, sets each team’s baseline attack and defence.
  • Adjust for context. The baseline is tuned for the specific opponent, home or away, and current availability.
  • Project goals. The model converts those adjusted strengths into an expected number of goals for each team in this match.
  • Build the grid. Those goal expectations feed the scoreline probabilities that become win, draw and over/under markets.

The key insight is that a model built on xG reacts to how a team is playing well before the results catch up. A side creating excellent chances but losing to poor finishing is quietly a strong bet to improve, and an xG-driven model sees that shift matches before the league table does. The reverse is just as valuable: a team riding a hot streak of long-range goals and penalties is often living beyond its underlying numbers, and the model tempers its rating accordingly.

There is a subtlety in how recent the xG should be. Weight it too heavily toward the last game and the model lurches around on small samples; weight it too far back and it describes a team that has since changed its manager, shape or key players. Good models handle this with a decay that fades older matches gradually rather than cutting them off.

SportsKinetic in Practice

Here is how an xG lens changes the read on a fixture. Below are two teams whose recent results look similar but whose underlying numbers point in opposite directions. The dots are a simple confidence read on each signal, not a guarantee.

Example: two mid-table sides on identical points, seen through xG.

+0.7Team A xG difference per game
RisingTeam A chance quality trend
-0.4Team B xG difference per game
FallingTeam B chance quality trend
Team AModel’s stronger side going forward

On results alone these teams look interchangeable. On xG they are not close. Team A is creating more and conceding less than the scoreboard shows, so the model expects them to climb. Team B is overperforming and likely to fall back. This is the everyday value of xG inside a model: it sees the direction of travel that a league table, which only records outcomes, cannot.

The same lens reshapes how a single upcoming fixture is framed. The xG profile of each side sets how many goals the model expects, which feeds the ranked scorelines you actually read. The Journalist agent then explains the why in plain terms, so the story and the maths come from the same place.

Reading xG Without Misreading It

xG is powerful but often misused. Knowing what it does not claim is as important as knowing what it does. The honest boundaries look like this.

What xG is notWhat xG genuinely offers
A verdict on a single matchA reliable signal across many matches
A measure of one player’s finishing skillA measure of chance quality created and faced
An exact, provider-agnostic constantA well-grounded probability estimate
A reason to ignore what you watchedA check on whether the eye test holds up
A guarantee a team will improveA strong indicator of likely direction

The most common error is reading one match’s xG as a definitive verdict. Single-game samples are small and swingy; a team can deserve to win on xG and still lose fairly to a moment of quality. xG earns its reputation over ten, twenty, thirty matches, where the noise cancels out and the underlying level shows through.

A second trap is treating xG as a full description of a match rather than a summary of the chances. It says nothing about game state, tactics, or the moments between shots. This is why the best analysts, and the best models, read xG alongside context rather than in place of it.

The rule of thumb

One match of xG is a data point. Ten matches of xG is a conclusion. Judge teams, players and predictions on the sample, never the single game.

Common Questions

Is a higher xG always better?

For an attack, more xG created means more and better chances, which is good. But context matters. A team trailing late will pile up shots and xG in desperation, which can flatter a poor overall performance. Always read xG alongside the game state that produced it.

Why do xG numbers differ between websites?

Each provider trains its model on a different sample of shots and includes slightly different features. The values will not match to two decimal places, but the story they tell about a team is usually consistent. Treat the trend as the signal, not the last digit.

Can xG predict an exact score?

Not on its own. xG describes chance quality; a model then converts it into scoreline probabilities. The exact result stays uncertain, but xG makes the estimate of each outcome far sharper than results alone could.

Do defenders and goalkeepers show up in xG?

Indirectly, and increasingly so. A strong defence shows up as low xG conceded, since it limits both the number and the quality of chances it allows. Goalkeepers are judged by comparing the xG of shots they face to the goals they concede, and by post-shot measures that account for where each effort was placed.

Keep reading

Read the numbers the way models do

Get xG-driven predictions, ranked scorelines and clear analysis for every fixture, without touching a spreadsheet.

For entertainment and informational purposes only. SportsKinetic is not a gambling platform and does not provide betting advice. Expected goals figures are model estimates and vary between data providers.