June 10, 2026 ยท 9 min read ยท methodology

How to Use Expected Goals (xG) to Predict Football Matches
June 2026 ยท 12 min read
Expected goals (xG) has transformed how analysts, clubs, and fans understand football. If you are still relying on final scores and gut feelings to predict match outcomes, you are leaving value on the table. This guide breaks down exactly how xG works and how to use it for sharper predictions.
What Is Expected Goals (xG)?
Expected goals is a statistical metric that assigns a probability value to every shot in a football match. Each shot is rated between 0 and 1 based on how likely it is to result in a goal, considering factors like shot location, angle, body part used, assist type, and defensive pressure.
A tap-in from two yards out might carry an xG value of 0.85, meaning it converts roughly 85% of the time. A long-range effort from 30 yards might rate at 0.03, or a 3% chance. Add up all the xG values for a team across a match, and you get their total xG โ a measure of the quality and quantity of chances they created.
The key insight: xG tells you what should have happened based on the chances created, not what actually happened on the scoreboard.
Why xG Matters More Than the Final Score
Football is a low-scoring sport, which means random variance plays an outsized role in results. A team can dominate possession, create clear-cut chances, and still lose 1-0 to a deflected long shot. Over a single match, the scoreline can lie. Over 10, 20, or 38 matches, xG tends to tell the truth.
Research from multiple seasons of Premier League data shows that xG is a stronger predictor of future results than actual goals scored. Teams that consistently outperform their xG (scoring more than expected) tend to regress toward their xG over time. The same applies to teams that underperform โ they usually bounce back.
Consider this real-world pattern: in the 2024-25 Premier League season, several mid-table teams posted xG numbers comparable to top-four sides but finished lower due to poor finishing or exceptional opposition goalkeeping. By the following season, those teams often improved their league position as their goal output normalized.
How xG Is Calculated
Different data providers (StatsBomb, Opta, FBref, Understat) use slightly different models, but the core inputs are similar:
- Shot location: Distance from goal and angle to the center of the goal. Shots closer to goal and more central have higher xG.
- Body part: Headers have lower conversion rates than foot shots from the same position.
- Assist type: Through balls and crosses create different quality chances. A cutback across the box typically yields higher xG than a hopeful cross.
- Game state: Some models factor in the score at the time of the shot, as teams trailing may take more desperate, low-quality shots.
- Defensive pressure: A shot with defenders closing down carries different xG than an uncontested effort.
Advanced models like StatsBomb's include freeze-frame data โ the position of every player on the pitch at the moment of the shot โ to refine the calculation further.
Reading xG Data: What the Numbers Tell You
Learning to read xG data is straightforward once you know what to look for. Here are the key metrics:
- xG (total): The sum of all shot xG values for a team in a match. Higher xG = better chances created.
- xGA (expected goals against): The xG of chances conceded. Lower is better for defensive quality.
- xGD (expected goal difference): xG minus xGA. A positive xGD means a team is creating better chances than they concede. This is the single best predictor of long-term league position.
- xG per 90: Normalized xG rate across matches, useful for comparing teams that have played different numbers of games.
- npxG (non-penalty xG): xG excluding penalties, which are high-xG (roughly 0.76) but not reflective of open-play quality.
When a team has 2.4 xG but only scores 1 goal, they were likely unlucky or wasteful. When a team has 0.6 xG and wins 2-0, they were likely fortunate. These gaps between xG and actual goals are where prediction value lives.
Using xG to Predict Match Outcomes
Here is a practical framework for incorporating xG into your predictions:
Step 1: Look at Season-Long xG Trends
Pull the xG and xGA data for both teams over their last 10-15 matches. Calculate their xGD per 90. Teams with a strong positive xGD are creating better chances than they concede, regardless of their current league position.
A team sitting 8th in the table but ranking 3rd in xGD is likely undervalued by the market. They are probably due for a run of better results.
Step 2: Check for xG Overperformance and Underperformance
Compare each team's actual goals scored to their xG. If a team has scored 35 goals from 25 xG, they are overperforming by 10 goals. That level of overperformance is rarely sustainable. Conversely, a team with 20 goals from 28 xG is underperforming and likely to improve.
The same applies to goalkeepers and defense. Save percentage above expected is useful but can fluctuate. A goalkeeper saving 3 goals above expected per month is elite; saving 8 above expected is unsustainable luck.
Step 3: Adjust for Context
Raw xG data does not capture everything. Make adjustments for:
- Injuries and suspensions: Missing a key striker or center-back changes xG projections significantly.
- Home/away splits: Some teams generate far more xG at home than away. Check the split.
- Fixture congestion: Teams playing their third match in eight days often see xG drop due to fatigue.
- Manager changes: A new manager can shift a team's xG profile within weeks as tactical changes take effect.
- Motivation: A team fighting relegation in April plays differently than one with nothing to fight for.
Step 4: Compare xG-Based Probabilities to Market Odds
This is where prediction games and value betting converge. If your xG model gives Team A a 55% chance of winning, but the implied probability from the odds is only 45%, you have found value. Over time, consistently betting or predicting where your xG-informed probability exceeds the market's implied probability yields positive returns.
In prediction games like FanPick, this approach gives you an edge over players who rely on reputation, recent results, or gut instinct alone.
The Poisson Distribution: Turning xG into Predictions
Once you have xG estimates for both teams, the Poisson distribution helps you calculate the probability of specific scorelines. The Poisson distribution models the probability of a given number of events (goals) occurring in a fixed interval (a 90-minute match) when events happen at a known average rate.
The formula is: P(x; λ) = (λ^x × e^(-λ)) / x!
Where λ is the expected number of goals (your xG estimate) and x is the actual number of goals. In practice, you can use a Poisson calculator or spreadsheet to generate a probability matrix for every possible scoreline.
For example, if Team A has an xG of 1.8 and Team B has an xG of 1.2:
- Team A win probability: ~46%
- Draw probability: ~24%
- Team B win probability: ~30%
The basic Poisson model has limitations โ it assumes goal independence and underestimates draws slightly. The Dixon-Coles extension corrects for low-scoring draws (0-0, 1-0, 0-1, 1-1) and produces more accurate predictions for tight matches.
Common xG Mistakes to Avoid
xG is powerful, but misusing it leads to bad predictions. Watch out for these pitfalls:
- Small sample sizes: Five matches is not enough. A team's xG over three games can be heavily influenced by one match against weak opposition. Use at least 10 matches for reliable trends.
- Ignoring shot volume: A team with 2.0 xG from 25 shots is different from one with 2.0 xG from 5 shots. High shot volume suggests sustainable chance creation; low volume with high xG suggests reliance on a few big chances.
- Confusing xG with predictions: xG describes past performance quality. It does not directly predict the next match. You need to combine xG with contextual factors (opponent strength, injuries, motivation) for match predictions.
- Overweighting single-match xG: One match with 3.5 xG and 0 goals does not mean the team is unlucky. Check if those chances came from a single dominant spell or across the full 90 minutes.
- Ignoring set pieces: Set-piece xG is often undervalued. Teams with strong set-piece routines can consistently generate xG from corners and free kicks that other models underestimate.
Where to Find xG Data
Several free and paid resources provide xG data for major leagues:
- FBref (free): Comprehensive xG data for major European leagues, powered by StatsBomb. Good for season-long trends and player-level xG.
- Understat (free): Clean interface with xG timelines for matches across the top five European leagues. Useful for match-by-match xG charts.
- FotMob (free): Provides xG data alongside match stats in their app. Good for quick pre-match checks.
- StatsBomb (paid): The gold standard for xG data, including freeze-frame models. Used by professional clubs and serious analysts.
- Opta (paid): Another industry leader, powering xG data for major broadcasters and betting companies.
Building Your xG Prediction Routine
Here is a practical pre-match routine using xG data:
- 48 hours before: Pull season xG and xGA for both teams. Calculate xGD per 90. Identify over/underperformance trends.
- 24 hours before: Check for team news โ injuries, suspensions, likely lineups. Adjust xG expectations based on missing players.
- Match day: Review the last 5 match xG trend for both teams. Check home/away splits. Look for tactical matchup factors.
- Post-match: Record your prediction vs. actual result. Track your xG-informed prediction accuracy over time to refine your model.
Consistency is what separates sharp predictors from casual guessers. Tracking your predictions against xG data over 50+ matches reveals whether your approach is working or needs adjustment.
Key Takeaways
- xG measures the quality of chances created, not just goals scored. It is a better predictor of future performance than raw results.
- Teams that significantly outperform or underperform their xG tend to regress to the mean over time. This creates prediction value.
- Use the Poisson distribution (or Dixon-Coles for low-scoring matches) to convert xG estimates into match outcome probabilities.
- Always adjust raw xG data for context: injuries, home/away splits, fixture congestion, and motivation matter.
- Track your predictions over time. xG-informed predictions improve with practice and data refinement.
- Free tools like FBref and Understat provide enough xG data for most prediction purposes. Start there before considering paid options.
Expected goals is not a crystal ball. It is a lens that cuts through the noise of football's inherent randomness. Use it consistently, combine it with contextual judgment, and your predictions will improve. The data is there โ the edge belongs to those who use it.