How xG Stat projections work
Two models: expected minutes (xMins) and projected non-penalty expected goals (projected npxG). Both are built from independent professional event data and the official FPL availability feed. No bookmaker inputs go in, no machine learning black box sits in the middle, and every number on this site decomposes into a sentence you can check.
Expected minutes (xMins)
xMins is built in three steps, each one a plain probability estimate rather than a learned model.
1. Availability cap
We start from the official FPL availability feed: injuries, suspensions and international call-ups. A player flagged out is capped before selection is even considered. Under our v1.1 rule, matches a player was ruled out of do not count against them in the selection step below, so a long injury layoff does not make a returning player look like a bench option.
2. Recency-weighted selection
For everyone left, we estimate a start probability from their recent appearance history, weighted so recent matches count for more than older ones, and smoothed with empirical-Bayes shrinkage so a player with only one or two matches on record is not read as a nailed-on starter or a certain benchwarmer.
3. Conditional minutes
Finally, we estimate how many minutes a player plays given that they do start or come off the bench, from their own recent minutes pattern. Multiply that by the start probability and you get expected minutes: xMins.
Projected npxG
Projected npxG works from the team down to the player, in three steps.
1. Team model
A Dixon-Coles-family model estimates each team's expected non-penalty goals for the upcoming fixture from their attacking and defensive strength.
2. Player share
That team total is split across the squad using each player's share of the team's non-penalty chances, shrunk toward positional norms and redistributed across the matchday squad so one hot streak cannot claim an unrealistic slice.
3. Times expected minutes
The player's share is scaled by their expected minutes from the xMins model above, divided by 90, to produce projected npxG for that fixture.
Penalties are excluded throughout, which is why the label always reads npxG. A regular penalty taker scores more often than this number alone implies.
How reliable is it?
Start with the ceiling. Even a model with perfect information about a match still carries large error on any single fixture: football is low-scoring and one moment of quality or bad luck can swing a result. No projection, ours or anyone's, removes that. What a good model can do is beat a naive guess consistently, and be honest about how far it still is from certain.
We hold both models to that bar. For expected minutes, the model has to beat two naive baselines: a player's season-average minutes, and their average over their last 5 matches. In our latest walk-forward backtest, the model's mean absolute error was 16.89 minutes, against 20.89 minutes for the season-average baseline and 17.18 minutes for the last-5 baseline. It beat both.
For projected npxG, we backtested across the 2024-25 season (a full past season with complete match-level data, walking forward gameweek by gameweek so the model only ever sees data from before the gameweek it is predicting). Against a naive baseline of season npxG per 90 times last-5 minutes per 90, the model reduced RMSE, the primary accuracy measure, by about 2%. For the probability that a player scores at all in a fixture, the model's Brier score beat a position-based base-rate baseline by about 4%, and its predicted probabilities lined up with what actually happened across every probability band with enough matches to check.
That last point is worth spelling out, because probabilities are easy to misread. When we say 60%, players in that situation score about 6 times in 10. The other 4 times they do not, and that is the model working, not failing.
One more caveat, and we would rather state it up front than have you discover it the hard way: short-run swings over a few gameweeks are expected even from a perfectly calibrated model. Judge these numbers over a season, not a weekend.
Ranking expected output
0.52
Rank correlation against what players actually generated. This is what the fixture run finder sorts on.
Clean sheets overall
10.2% vs 10.1%
Predicted against observed across every scored player-gameweek. Well calibrated in total.
Ranking fixture gain
0.07
Small. The fixture effect is real but modest over three to five games, which is why runs are graded Kind, Average or Tough rather than ranked.
Clean sheet chances, by how confident the model was
Buckets with fewer than a hundred cases behind them are not shown.
| We said | Times | It happened |
|---|---|---|
| 0-10% | 9,405 | 3.1% |
| 10-20% | 3,193 | 14.1% |
| 20-30% | 1,834 | 26.2% |
| 30-40% | 850 | 29.2% |
| 40-50% | 253 | 30.8% |
Clean sheet chances between 30% and 50% have run about ten points high in testing. That is why the defensive board shows the shape of a clean sheet chance and never prints a percentage against a fixture.
Backtested on the 2024/25 season, 15,573 player-gameweeks, with every input taken from before the gameweek it was scored on. Minutes were graded on 2025/26.
Graded exactly as shown
Every projection is archived at the gameweek deadline and graded against what actually happened. The archived copy is never edited.
A per-gameweek accuracy ledger, updated automatically as results come in, is queued for this page. Until it ships, this section carries the season backtest numbers above, and we will update the stamp below whenever the underlying methodology or numbers change.
Frozen at the deadline. What you saw before a gameweek is what gets graded, not a version quietly patched afterwards.
Backtested walk-forward, gameweek by gameweek, so no model ever sees the future before it predicts.
No bookmaker inputs anywhere in the pipeline. The models are built entirely from independent event data and the official FPL availability feed.
Not advice. These are model estimates for understanding risk and opportunity, not guarantees of what will happen.
Last updated: 24 July 2026
Projections are model estimates, not guarantees, and they are not advice.
Sign Up