The single metric that revolutionized football analysis and changed how sharp bettors find value. Here's what xG actually measures, how it's calculated, and how to use it.
Expected goals (xG) assigns a probability to every single shot in a football match. That probability represents how likely that shot is to become a goal, based on hundreds of thousands of historical shots in similar situations.
The model considers several factors for each shot: distance from goal, angle to the posts, body part used (foot, head, other), type of assist (through ball, cross, set piece), and game state (open play, counter-attack, established possession).
A penalty has an xG of roughly 0.76 because historically about 76% of penalties are scored. A header from outside the box sits at around 0.02 xG. A one-on-one with the keeper inside the six-yard box might be 0.40 xG. Add up every shot a team takes in a match and you get their total xG for that game.
Data providers like StatsBomb, Opta, and FBref track every shot from every match across major leagues worldwide. They log the exact coordinates, the defensive pressure, the speed of play, and dozens of other variables. Machine learning models then train on this data to predict the probability of any given shot resulting in a goal.
Shot location is the single biggest factor. A shot from inside the six-yard box has a much higher xG than one from 25 yards out. Think of it as a heat map: the closer and more central the shot, the higher the xG. Shots from tight angles near the byline carry low xG even when close to goal, because the keeper covers most of the net.
Different providers produce slightly different xG values because their models weight variables differently. StatsBomb includes defensive positioning data that others don't. But the core principle is the same: not all shots are created equal, and xG quantifies that difference.
Overperformance happens when a team scores significantly more goals than their xG suggests. A team with 1.2 xG per game but averaging 2.0 actual goals is overperforming. This can mean elite finishing quality, but more often it's unsustainable luck. Spectacular long-range goals and deflections inflate the actual tally beyond what the chances warranted.
Underperformance is the opposite: a team creating 1.8 xG per game but only scoring 1.0 goal. This points to poor finishing, bad luck with the woodwork, or a run of outstanding goalkeeping performances from opponents. Over time, these teams tend to score more as luck evens out.
This is the concept of regression to the mean. Over a full season, most teams' actual goals converge toward their xG. Short-term variance is normal, but large gaps between xG and actual goals almost always correct themselves. And that correction is exactly where betting value lives.
Over/Under markets. A team generating high xG per game but converting at a low rate is a prime candidate for the Over market. The chances are being created. The goals will come. If the bookmaker prices the Over based on recent low-scoring results rather than the underlying chance creation, you've found value.
BTTS (Both Teams to Score). When both teams in a fixture produce solid xG numbers, BTTS Yes becomes statistically supported. Two teams each generating 1.3+ xG per game are both creating real chances, regardless of whether recent results have been 1-0 or 0-0.
1X2 (Match result). A team sitting top of the table but massively overperforming their xG is vulnerable. Their results look dominant, but the underlying data suggests they've been fortunate. Betting against them when the odds still reflect their inflated results is a textbook value play.
The key is to look at xG per game rather than season totals. Per-game averages smooth out the noise from fixture congestion, rotated squads, and cup matches. A team's last 10 league matches give you a much clearer picture than their full-season aggregate.
xGA (Expected Goals Against). This measures the quality of chances a team concedes. A low xGA per game means the defence is limiting opponents to low-probability shots. A high xGA means the backline is getting carved open regularly, even if the goalkeeper has been saving everything so far.
xGOT (Expected Goals on Target). This refines xG by only counting shots that hit the target and factoring in shot placement. A shot heading for the top corner has a higher xGOT than one straight at the keeper. xGOT is useful for evaluating individual finishing quality because it measures not just where the shot came from, but where it went.
xG Buildup. This measures a player's or team's contribution to chance creation without including the final shot or the assist. It reveals who is doing the build-up work that leads to opportunities. Teams with high xG buildup but low xG from their own shots are creating for others, not themselves.
Not all shots are equal. A team taking 15 shots from 30 yards creates less danger than a team taking 5 from inside the box. xG proves it with data.
Teams can't outperform their xG forever. When actual goals drift far from expected goals, a correction is coming. Bet accordingly before the market adjusts.
A 3-0 win from just 0.8 xG is a red flag, not a sign of dominance. xG separates what actually happened from what the data says should happen.
xG alone isn't enough. Combine it with recent form, live odds, and league context to build the full picture. That's where real edges are found.
A combined xG of 2.5 or higher per game from both teams suggests a match is likely to produce goals. If a team consistently generates 1.5+ xG per game but scores fewer actual goals, the Over market offers value because regression to the mean suggests more goals are coming.
Short-term, yes. Long-term, almost never. Most teams regress toward their xG over a full season. The rare exceptions are teams with elite finishers like peak Messi or Lewandowski, but even those teams don't outperform by large margins indefinitely.
FBref (powered by StatsBomb) is the best free source for xG data. Understat also provides detailed xG statistics for the top 5 European leagues. Both sites let you view xG per match, per team, and per player.
BetBot analyses team goal-scoring profiles, goals conceded averages, recent form, and statistical patterns that reflect the same underlying data xG captures. Combined with live odds and AI analysis, this data-driven approach identifies value across Over/Under, BTTS, and 1X2 markets.
BetBot's AI analyses goals scored, goals conceded, and team profiles to find statistical edges — the same data-driven approach that xG pioneered.
Add to Discord