The one-sentence answer: xG tells you how good a chance really was
Expected goals (xG) assigns each shot a number between 0 and 1 representing the probability it results in a goal. A penalty? About 0.79 xG — it goes in roughly 79% of the time. A header from 25 yards? Maybe 0.02 xG. That's it. Everything else is just detail.
At Goaltify, we think xG is the single most useful metric for understanding a football match — more useful than possession, more honest than "shots on target." Here's why, and how to actually use it.
Why xG was invented — and why it matters
Before xG, the main way to judge attacking quality was shots on target. The problem? Not all shots are equal. A shot from the six-yard box after a cutback is completely different from a 35-yard screamer. Shots on target treated them the same.
In the early 2010s, data companies like Opta and StatsBomb started building models that could tell them: given everything we know about this shot — where it came from, what body part was used, what type of assist preceded it — what's the historical probability of this becoming a goal?
That probability is xG.
By 2014, xG was being used by Premier League clubs internally. By 2017, it was on Sky Sports broadcasts. By 2026, you'd struggle to watch a match analysis without hearing it mentioned.
How xG is actually calculated
The models vary between providers, but the core inputs are:
Distance from goal is the biggest factor. Shots from inside the six-yard box carry high xG. Shots from outside the box rarely exceed 0.10 xG. Shot angle matters enormously. A shot from a tight angle on the byline might have an xG of 0.03, even from close range. Shot type adjusts the figure. Headers are generally finished at a lower rate than shots with the foot, so headers carry lower xG for equivalent positions. Assist type is where models get sophisticated. A shot after a through-ball (which cuts defences open) carries higher xG than a shot after a long ball or a direct cross. Pressure on the shooter is now included in advanced models — a shot under heavy defensive pressure is less likely to go in than the same shot taken freely.The result is a number. Every shot. Every game.
How to read xG during a match
Most live xG displays show cumulative xG for each team over the course of the game. Here's how to interpret what you're seeing:
If Liverpool have 2.4 xG and Arsenal have 0.6 xG at half-time, Liverpool have been creating chances worth 2.4 expected goals. They've arguably dominated the first half, regardless of the scoreline.
If the scoreline is 0-1 to Arsenal, that's a classic "against the run of play" situation. xG tells you it's unlikely to continue — but football is full of unlikely things.
The key insight: xG tells you what should have happened. The scoreline tells you what did happen. The gap between the two is where luck, goalkeeping, and finishing ability live.
xG over a season — where it gets really powerful
Single matches are noisy. A world-class goalkeeper can suppress xG conversion. A fortunate deflection can create a goal from a 0.04 xG shot.
Over 38 Premier League matches, the noise averages out. Teams that consistently have high xG for and low xG against tend to be genuinely good teams — not lucky ones.
This is why managers and data scouts use season-long xG to:
- •Identify strikers who consistently outperform their xG (exceptional finishers like Haaland)
- •Spot teams that are over-performing their xG (likely to regress — useful for predicting table positions)
- •Evaluate whether a relegated team was "unlucky" or genuinely poor
For example, if a team finishes 17th but their xG difference (xG for minus xG against) was +3.2 on the season, they probably had a run of bad luck rather than being a genuinely relegation-level side.
Common mistakes when interpreting xG
Treating single-game xG as gospel. One match's xG can be misleading. A goalkeeper having the game of their life, or a striker being clinical with low-quality chances, will skew the number. Ignoring post-shot xG. Basic xG models calculate the probability before the shot is taken. Post-shot xG (xGOT — expected goals on target) also factors in where on the goal the shot was placed. A shot aimed into the top corner from a tight angle has higher xGOT than the same shot aimed straight at the keeper. Assuming all xG models are the same. FBref uses StatsBomb data. Understat uses their own model. Sofascore uses another. The figures will differ slightly — sometimes more than slightly for unusual match situations. When comparing, use the same source.Where to find xG data for free
You don't need a data subscription to follow xG. Several good free sources exist:
- •Understat.com — Premier League, La Liga, Bundesliga, Serie A, Ligue 1, RFPL. Clean interface, match-by-match and season xG, player breakdowns.
- •FBref.com — Powered by StatsBomb, the most detailed free xG resource. Covers more competitions but has a steeper learning curve.
- •Sofascore — Good for live xG during matches on mobile.
- •BBC Sport / Sky Sports — Show xG for Premier League matches during and after broadcast.
Conclusion
xG is not a perfect metric — no single number can capture the full complexity of football. But it's the most honest tool we have for answering the question: did that team deserve to win?
Once you start using it, you'll find yourself looking at matches differently. A 1-0 win with 0.4 xG against 2.1 xG feels fragile. A 0-0 draw where your team had 2.8 xG feels like a missed opportunity rather than a point earned.
That's the value of xG — it makes you a more informed, less reactionary football watcher. And at Goaltify, that's exactly what we're here for.