Accuracy

Every gameweek's projections are frozen at the deadline and scored against what actually happened — next to FPL's own expected points, frozen at the same moment. No retro-fitting: once a deadline passes, the frozen file can't be touched.

Rank quality (Spearman)
0.38
FPL ep_next 0.29
Beat FPL's projection
2 of 2
gameweeks, by rank quality
Captain call, pts/GW
7.0
hindsight best 16.5 · FPL 6.0
Points error (RMSE)
2.00
FPL 2.42 · lower is better

Rank quality per gameweek

FPL PalFPL ep_next
GW6
0.38
0.37
GW7
0.39
0.22

Spearman correlation between projected and realized points among players who played, within each position. 1 would be a perfect ordering; typical good weeks live around 0.3–0.4.

GWFixturesRank corrFPLRMSEFPLCaptain callxPts vs actual
GW6100.380.371.992.36Fernandes 1 · best 18-9%
GW7100.390.222.002.47Haaland 13 · best 15-3%

Under the hood, one gameweek at a time

Loading the gameweek…

How this is measured

Frozen at the deadline. After every nightly refresh, the engine writes each upcoming gameweek's projections to a frozen file — and refuses to touch that file once the gameweek's deadline has passed. What gets scored is exactly what this site was serving when the deadline hit.

Scored when final. A gameweek is scored only after FPL marks it finished and data-checked (bonus confirmed). Double-gameweek players are compared on their full week; fixtures postponed out of a gameweek are excluded and disclosed in the fixtures column, never quietly dropped.

The baselines. FPL publishes its own expected points (ep_next) — it's frozen at the same deadline and scored the same way. Rank correlation is measured within each position among players who actually played; RMSE counts everyone projected, including the ones who never left the bench.

season 2026-27 · scored 2026-10-22 01:15 · latest freeze 2026-10-21 02:35