What is Expected Goals (xG) in Football?
Expected goals (xG) is a statistical metric that assigns every shot in a football match a probability value between 0 and 1, representing how likely that shot was to result in a goal. A penalty carries an xG of approximately 0.76. A long-range effort without an assist sits below 0.05. xG is the most important single input in modern AI football prediction models.
What Does xG Actually Measure in Football?
Expected goals measures the quality of a shot, not whether it went in. Every shot taken in a football match is assigned a probability between 0 and 1 based on the characteristics of that shot: its location on the pitch, the angle to goal, the body part used, the type of pass that created it, and whether the shot was taken under defensive pressure. A shot from directly in front of goal six yards out following a cutback pass carries an xG close to 0.5. A header from 18 yards under pressure from a corner carries an xG of around 0.08.
By summing all shot xG values for a team across a match, you get a single figure representing how many goals that team statistically deserved to score based on the quality of chances they created, independent of whether those chances were converted. A team that created chances worth 2.3 xG but scored only one goal was unlucky. A team that scored three goals from 0.9 xG was fortunate. xG separates performance from outcome in a way that raw goals statistics cannot.
For a full explanation of how xG data feeds into AI prediction pipelines, see our pillar guide on how AI predicts football matches.
How is xG Calculated for Each Shot?
xG is calculated using a statistical model trained on hundreds of thousands of historical shots and their outcomes. For each shot in that historical dataset, the model records whether it resulted in a goal alongside all available shot characteristics. It then learns which combinations of characteristics correlate most strongly with goals, producing a probability estimate for each shot type. When a new shot occurs in a live match, the model looks up its characteristics and outputs the appropriate xG value from the learned distribution.
The key variables that most strongly influence xG values are shot location (distance and angle from goal), assist type (headed crosses generate lower xG than low cutbacks into the six-yard box), shot technique (headers carry lower xG than shots with the preferred foot from similar locations), and situation (big chance xG is flagged separately by providers like Opta and StatsBomb). Some advanced xG models also factor in goalkeeper positioning and the number of defenders between the shooter and the goal, though these data points require more granular tracking technology to collect reliably.
What is a Good xG Total for a Football Team in a Match?
In the Premier League, the average xG per team per match across a full season is approximately 1.3 to 1.4, reflecting the balance between attack and defence across the division. A single-match xG total above 2.0 represents a strong attacking performance. A total above 2.5 in a single game is exceptional and usually comes in matches with multiple big chances or high volumes of shots from inside the penalty area.
Defensively, conceding less than 0.8 xG in a match represents a strong defensive performance. Conceding more than 1.8 xG suggests the defensive structure broke down repeatedly, even if the final scoreline was closer than the chances allowed would suggest. According to FBRef, teams that consistently generate above 1.6 xG per match while conceding below 1.0 xG per match across a season win league titles at a significantly higher rate than teams whose combined xG differential is neutral or negative, confirming xG as a strong predictor of long-term competitive success as well as individual match outcomes.
How Does xG Differ From Goals Scored and Why Does It Matter?
Goals scored is a binary outcome: a shot either results in a goal or it does not. xG is a continuous probability measure that reflects what should have happened based on the quality of the chance, regardless of what did happen. The difference matters because goals in football are subject to significant variance over short samples. A goalkeeper can make three exceptional saves in a match, preventing goals from high-xG chances that would go in 70% of the time in an average scenario. Over a five-match sample, these variance effects can make a strong team look weak and a weak team look strong if you only look at goals.
xG smooths out this variance. A team generating consistently high xG across a five or six match window is performing well regardless of their goals tally, because the quality of chances they are creating is a more stable indicator of attacking quality than whether those chances happened to go in. This is exactly why AI prediction models use xG-adjusted form rather than goals-based form when calculating match probabilities. Our guide on how AI analyses team form for predictions explains how xG form data is applied in practice.
What Are the Limitations of xG as a Metric?
xG has three well-documented limitations. The first is that it does not account for goalkeeper quality. Two identical shots taken against a world-class goalkeeper and an average goalkeeper carry the same xG value, even though the probability of each going in differs based on the individual between the posts. Some advanced models introduce goalkeeper adjustment factors, but standard xG values treat every goalkeeper as equivalent at the point of the shot.
The second limitation is model variation between providers. StatsBomb, Opta, and other data companies each use their own xG models, and their values for the same shot can differ by as much as 0.05 to 0.10. This means xG figures are not directly comparable across providers and should always be assessed relative to the baseline of the specific model that produced them. The third limitation is that xG only measures shots: it does not capture the quality of build-up play, pressing success, or defensive positioning that led to the chance being created in the first place. These upstream metrics require separate data points beyond the shot itself.
How Does FootballPredictAI Use xG in Its Prediction Model?
FootballPredictAI uses xG as the primary input for calculating each team's expected scoring rate in upcoming fixtures. xG for and against figures are processed over a rolling five to six match window, opponent-adjusted to account for the strength of teams faced, and time-weighted to give more influence to recent matches. These adjusted xG rates serve as the lambda inputs for the Poisson distribution model that generates scoreline probabilities, which in turn produce the 1X2, BTTS, over/under, and correct score market outputs.
The model's use of xG rather than raw goals data is one of the primary reasons it achieves 87% accuracy across all markets on a 7-day rolling window. Every win probability score on FootballPredictAI is built on xG inputs. Our guide on how xG affects AI football predictions covers the direct impact of xG quality on final prediction output in detail. You can also test the model's outputs directly using our football win probability calculator.
Frequently Asked Questions
What does an xG of 1.0 mean in a football match?
An xG of 1.0 means a team created chances that, based on their shot locations and types, would be expected to produce exactly one goal on average. It does not mean they will score exactly one goal in that match: in any individual game they might score zero, one, two, or more from that xG total depending on finishing quality and goalkeeper performance. xG represents the average expected outcome across many similar chance profiles, not a guaranteed result.
Is xG a reliable metric for predicting future football performance?
Yes. xG is one of the most reliable short-term performance metrics available in football analytics. Teams with high xG differentials, meaning they consistently create better chances than they concede, outperform their goals-based results over the medium term. Over samples of five or more matches, xG-based team ratings predict future results more accurately than goals-based ratings, which is why AI prediction models prioritise xG inputs over raw scoring statistics.
What is the difference between xG and xGA in football?
xG refers to the expected goals generated by a team's own shots: it measures their attacking quality. xGA (expected goals against) refers to the expected goals generated by their opponents' shots: it measures their defensive quality. Both figures are used in AI football prediction. A team's xG minus xGA gives their xG differential, which is the single strongest indicator of overall team quality available from match data across a rolling window.
Do xG figures update during a match?
Yes. xG values are calculated for every shot as it happens during a live match, and running xG totals for both teams update in real time as the game progresses. Post-match xG figures are typically published within minutes of full time by data providers. AI prediction models use pre-match xG averages from historical matches rather than live xG, since pre-match data is what is available before kickoff when predictions are generated.
Which data providers calculate xG for football matches?
The main xG data providers in professional football are StatsBomb, Opta (owned by Stats Perform), Wyscout, and InStat. Each uses its own proprietary model, meaning their xG values for the same shot can differ slightly. StatsBomb publishes a large open dataset covering thousands of matches across multiple competitions. FBRef aggregates StatsBomb data and makes it available publicly, covering all major European leagues and international competitions.
FootballPredictAI uses xG data from all seven supported competitions to calculate win probability for every match. Try the win probability calculator free: no card required.
FootballPredictAI provides AI-generated probability scores for educational and informational purposes only. These outputs do not constitute financial advice, betting tips, or a recommendation to place any bet. Football prediction involves inherent uncertainty: no result is ever guaranteed. Please bet responsibly and only within your financial means. If you are concerned about your gambling, visit BeGambleAware.org.
