Accuracy record · 2026-27 · settled
Gameweek 5
In Gameweek 5 the model missed by 2.53 points a player across the 188 likely starters it scored, and the real team scored 28.
This page is published for every settled gameweek, good or bad, and is never edited after the fact. What follows is what the model projected before the deadline, what actually happened, how it did against the baselines on the same players, and what the real team scored.
Where Gameweek 5 went wrong
- A worse week than usual: the model missed by 2.53 points a player, against 2.49 across the season so far.
- Too pessimistic overall: it predicted 636 points for 188 likely starters, who scored 723 — 12% low.
- Its ordering of the players barely matched the week's: rank correlation 0.11, where 1.00 would be a perfect order and 0 no relationship at all.
- Last season's points per game was better than the model at spotting 10+ hauls this week: on the 144 players both scored, it ranked a hauler above a non-hauler 54% of the time, the model 52%.
- Top-10k effective ownership was better than the model at spotting 6+ hauls this week: on the 188 players both scored, it ranked a hauler above a non-hauler 60% of the time, the model 58%.
- Top-10k effective ownership was better than the model at spotting 10+ hauls this week: on the 188 players both scored, it ranked a hauler above a non-hauler 57% of the time, the model 50%.
- FPL's own projection (ep_next) ordered the players better than the model this week: 0.12 to 0.11 on the 188 players both scored.
- FPL's own projection (ep_next) was better than the model at spotting 6+ hauls this week: on the 188 players both scored, it ranked a hauler above a non-hauler 59% of the time, the model 58%.
- FPL's own projection (ep_next) was better than the model at spotting 10+ hauls this week: on the 188 players both scored, it ranked a hauler above a non-hauler 50% of the time, the model 50%.
- Spotting 6+ hauls was no better than a coin toss this week: 58%, with an interval (50%–66%) that includes 50%.
- Spotting 10+ hauls was no better than a coin toss this week: 50%, with an interval (33%–67%) that includes 50%.
- The team scored 28, below the average manager's 44.
- The team finished 23.5 behind a sample of top-10k managers (average 51.5, 322 sampled). This early, the sample is chosen on the very weeks it is scored on, so the gap is overstated.
- Captain João Pedro scored 0 — doubled to 0.
- The team scored 20.4 fewer than the model predicted for it at the deadline: 48.4 predicted, 28 scored.
- The best team the model could legally have bought scored 49 — 33% of the 150 a perfect-hindsight XI would have made.
What went right
- The model was closer than last season's points per game on points per player: 2.51 to 2.51 on the 144 players both scored.
- The model was closer than last season's points per game on the big misses: 3.39 to 3.44 on the 144 players both scored.
- The model ordered the players better than last season's points per game: 0.10 to 0.08 on the 144 players both scored.
- The model was better than last season's points per game at spotting 6+ hauls: 55% to 54% on the 144 players both scored.
- The model ordered the players better than top-10k effective ownership: 0.11 to 0.08 on the 188 players both scored.
Not available this week
- Only 12 players scored 10+ this week — too few to claim a result on the 10+ figure.
League-wide accuracy
Scored over predicted E[minutes] > 60 (n=188 of 659 player-fixtures). Every figure below is this gameweek only; the season-to-date line beside each one is the pooled figure across all settled gameweeks.
Prediction vintage: 18 Sept, 16:54 UTC run — Predictions are the last model run before each gameweek's deadline (first kickoff minus 90 minutes). 'seed' marks gameweeks that predate run retention, scored against the committed pre-season bundle.
95% percentile intervals from a row-level bootstrap (1000 resamples, seeded). Player-fixtures within a gameweek share fixtures and clean sheets, so these intervals understate the true width — read them as a floor on the uncertainty, not the uncertainty. A haul AUC on fewer than 50 hauls is too few to claim.
The same error on every stated population
SPEC §1.6 lets the unconditional figure appear only beside the conditional one. All four are printed so a reader who prefers a different population finds ours already stated — and so a comparison with someone else's figure is made on the same rows or not at all.
| Population | n | MAE | RMSE | Season MAE |
|---|---|---|---|---|
| Every player-fixture with a prediction | 659 | 1.11 | 2.12 | 1.20 |
| Predicted E[minutes] > 0 | 550 | 1.33 | 2.32 | 1.39 |
| Played at least one minute (selected on the outcome)hindsight | 301 | 2.04 | 3.04 | 2.04 |
| Predicted E[minutes] > 60headline | 188 | 2.53 | 3.46 | 2.49 |
Reliability of the stated probabilities
In each bin of predicted probability, what fraction actually happened, with a Wilson 95% interval. A calibrated forecaster's observed column tracks its predicted column. The minutes model's P(60+) is read on every gameweek, the haul probabilities on the gameweeks whose run retained them.
| Predicted | Observed | 95% | n |
|---|---|---|---|
| 0% | 0% | 0–3 | 132 |
| 0% | 0% | 0–6 | 66 |
| 1% | 3% | 1–10 | 66 |
| 3% | 5% | 2–13 | 66 |
| 13% | 11% | 5–21 | 65 |
| 36% | 39% | 28–51 | 66 |
| 65% | 71% | 59–81 | 66 |
| 85% | 95% | 87–98 | 66 |
| 93% | 95% | 87–98 | 66 |
| Predicted | Observed | 95% | n |
|---|---|---|---|
| 0% | 0% | 0–3 | 135 |
| 0% | 0% | 0–6 | 65 |
| 0% | 3% | 1–11 | 64 |
| 2% | 0% | 0–6 | 66 |
| 5% | 5% | 2–13 | 65 |
| 9% | 6% | 2–15 | 66 |
| 14% | 23% | 14–34 | 66 |
| 20% | 29% | 19–41 | 66 |
| 34% | 27% | 18–39 | 66 |
| Predicted | Observed | 95% | n |
|---|---|---|---|
| 0% | 0% | 0–3 | 150 |
| 0% | 0% | 0–6 | 58 |
| 0% | 0% | 0–6 | 56 |
| 0% | 0% | 0–6 | 66 |
| 1% | 0% | 0–6 | 65 |
| 2% | 3% | 1–10 | 66 |
| 3% | 8% | 3–17 | 66 |
| 5% | 6% | 2–15 | 66 |
| 10% | 6% | 2–15 | 66 |
Against the comparators
Our error, next to something else's, on the same rows. An arm that cannot cover every row the model scored is compared only over the rows it does cover — with the model re-scored on exactly those rows, never against its headline figure for the week.
Each player's total FPL points last season divided by his appearances — the yardstick a human reaches for before a ball is kicked.
Different rows, stated plainly. This arm scored 144 of the model's 188 rows for this gameweek; 44 of the model’s rows are excluded because the arm has nothing to say about them. Every “model” number in this table is the model re-scored on exactly the 144 rows the arm covers — so its headline error for the gameweek (2.53, over 188 rows) is not the figure to read against this arm.
Population: reference arm's predicted E[minutes] > 60, imposed on every arm (n=144 of 409 player-fixtures); players with a prior-season appearance only
| Metric | Model · these 144 rows | Last season's points per game |
|---|---|---|
MAE model ahead | 2.51 | 2.51 |
RMSE model ahead | 3.39 | 3.44 |
Spearman rank correlation model ahead | 0.10 | 0.08 |
Haul AUC, 6+ points model ahead | 0.55 | 0.54 |
Haul AUC, 10+ points arm ahead | 0.52 | 0.54 |
“—” means the payload carries no figure for that metric on this arm; it is not a zero. “No direction stated” means the payload does not say which way is better for that metric, so this page does not call a winner on it.
How heavily the sampled top-10k managers held each player at the last capture before the deadline, captaincy counted — the crowd's ranking of the field. A rank, not a points forecast.
Rows covered. This arm scored 188 of the model's 188 rows for this gameweek, with none of the model’s rows excluded. Every “model” number in this table is the model re-scored on exactly the 188 rows the arm covers, which is the only like-for-like comparison.
Population: reference arm's predicted E[minutes] > 60, imposed on every arm (n=188 of 659 player-fixtures); every model row; double-gameweek rows excluded (ownership is per gameweek, the record is per fixture)
| Metric | Model · these 188 rows | Top-10k effective ownership |
|---|---|---|
MAE not carried by this arm | — | — |
RMSE not carried by this arm | — | — |
Spearman rank correlation model ahead | 0.11 | 0.08 |
Haul AUC, 6+ points arm ahead | 0.58 | 0.60 |
Haul AUC, 10+ points arm ahead | 0.50 | 0.57 |
“—” means the payload carries no figure for that metric on this arm; it is not a zero. “No direction stated” means the payload does not say which way is better for that metric, so this page does not call a winner on it.
The expected-points figure FPL publishes for each player before the gameweek, captured between the previous deadline and this one. Scored as a rank: it is per gameweek, so it says nothing about a double's second fixture.
Rows covered. This arm scored 188 of the model's 188 rows for this gameweek, with none of the model’s rows excluded. Every “model” number in this table is the model re-scored on exactly the 188 rows the arm covers, which is the only like-for-like comparison.
Population: reference arm's predicted E[minutes] > 60, imposed on every arm (n=188 of 659 player-fixtures); players with an FPL projection captured in the pre-deadline window; double-gameweek rows excluded
| Metric | Model · these 188 rows | FPL's own projection (ep_next) |
|---|---|---|
MAE not carried by this arm | — | — |
RMSE not carried by this arm | — | — |
Spearman rank correlation arm ahead | 0.11 | 0.12 |
Haul AUC, 6+ points arm ahead | 0.58 | 0.59 |
Haul AUC, 10+ points arm ahead | 0.50 | 0.50 |
“—” means the payload carries no figure for that metric on this arm; it is not a zero. “No direction stated” means the payload does not say which way is better for that metric, so this page does not call a winner on it.
How the arms are scored Lower is better for MAE and RMSE; higher is better for Spearman and haul AUC (every metric states its own direction in `metrics`). Each baseline is scored on the model's own likely-starter rows (predicted E[minutes] > 60) and reports the model's score over exactly those rows, so the two numbers are like for like even when the baseline cannot cover every row. Overall Spearman and AUC are means over the gameweeks where BOTH arms have a value — never a cross-gameweek pool, which would rank a GW1 blank against a GW7 haul.
Legal-squad Team of the Week
Picked from the last model run before the deadline, at the prices captured before it, then scored on what actually happened.
Not comparable with the real entry. A fresh £100.0m squad, bought from scratch every gameweek: it pays no transfer hits, carries nothing over from last week and banks no price rises. It is a weekly mark on the model's picks under the real squad rules — not a strategy any manager can run, and not comparable with a managed entry on equal terms.
| Player | Club | Pos | Points |
|---|---|---|---|
| Trafford | Leeds | GK | 10 |
| Guéhi | Man City | DEF | 4 |
| Gvardiol | Man City | DEF | 4 |
| Thiaw | Newcastle | DEF | 4 |
| Mbeumo | Man Utd | MID | 2 |
| Gibbs-White | Nott'm Forest | MID | 2 |
| B.Fernandes | Man Utd | MID | 2 |
| Barnes | Newcastle | MID | 9 |
| Haaland(C) | Man City | FWD | 6 |
| Wissa | Newcastle | FWD | 0 |
| Barry | Everton | FWD | 6 |
| Bench (does not score) | |||
| Dubravka | Spurs | GK | 0 |
| Hughes | Crystal Palace | MID | 0 |
| Furlong | Ipswich Town | DEF | 0 |
| Kipré | Ipswich Town | DEF | 0 |
Against the real entry
Read this as a mark, not a match. A fresh £100.0m squad, bought from scratch every gameweek: it pays no transfer hits, carries nothing over from last week and banks no price rises. It is a weekly mark on the model's picks under the real squad rules — not a strategy any manager can run, and not comparable with a managed entry on equal terms.
Deadline 18 Sept, 17:30 UTC · prediction 18 Sept, 16:54 UTC (run) · prices 18 Jul, 13:53 UTC–18 Sept, 16:54 UTC (182 from an earlier capture) · pool 659 of 659 predicted
The real entry · Sideline's Team
The squad the model actually ran — with transfer hits, bench points and continuity, all of which the Team of the Week above is free of.
| Player | Club | Mins | Bonus | Points |
|---|---|---|---|---|
| Raya | Arsenal | 90 | 0 | 1 |
| Gabriel | Arsenal | 90 | 0 | 1 |
| Lacroix | Chelsea | 90 | 0 | 3 |
| Virgil | Liverpool | 90 | 0 | 8 |
| Calafiori | Arsenal | 90 | 0 | 1 |
| Tavernier | Bournemouth | 74 | 0 | 2 |
| Palmer(V) | Chelsea | 90 | 0 | 2 |
| Szoboszlai | Liverpool | 80 | 0 | 2 |
| Wirtz | Liverpool | 70 | 0 | 6 |
| Mbeumo | Man Utd | 90 | 0 | 2 |
| João Pedro(C) | Chelsea | 0 | 0 | 0 |
| Phillipsbench | Hull City | 0 | 0 | 0 |
| Guéhibench | Man City | 90 | 0 | 4 |
| Walle Egelibench | Ipswich Town | 0 | 0 | 0 |
| Kusi-Asarebench | Fulham | 0 | 0 | 0 |
Cumulative after this gameweek: 317 · captured 21 Sept, 09:01 UTC · 4 squad captures
Where these numbers come from
Predictions are the last model run before each gameweek's deadline (first kickoff minus 90 minutes). 'seed' marks gameweeks that predate run retention, scored against the committed pre-season bundle.
Population scored: predicted E[minutes] > 60 (n=188 of 659 player-fixtures).
This page is a slice of the same /performance/live payload that drives the full record — one derivation, so a gameweek page and the season page cannot disagree. The projections themselves are published in full at /data/gw/5.
The exact rows this gameweek was scored on — the last run before the deadline, as served — are at fpl-quant-api.fly.dev/performance/live/gw/5/predictions with sha256 a4155c76…b085. The digest is of the rows array alone as compact JSON (no whitespace), rows sorted by player then fixture — the response says so beside it. Recompute any number on this page from them.
What this record measures, on which rows, against which comparators and at which checkpoints was fixed in advance: the pre-registration (sha256 27307797…ba4f, checkpoints GW10, GW19, GW38).