Every gameweek we publish a projected score for every player before the deadline. Once the gameweek finishes we compare those exact numbers to what actually happened. This page is the whole ledger — the good weeks and the bad ones, with the raw data behind each row.
Last updated 26 August 2026.
| GW | Players graded | Our MAE | FPL ep_next MAE | Model squad (proj → official) | Consensus squad (proj → official) | Duel (model-crowd) | Data |
|---|---|---|---|---|---|---|---|
| GW1 | 58 | 2.734 | captured from GW2 | 65.92 → 44 | 60.74 → 53 | 0-1 (crowd leads) | gw1.json |
ep_next,
captured from the official API before the same deadline. It is the fairest
benchmark available: same players, same week, same scoring. We started capturing
it from Gameweek 2, so GW1 has no comparison and the cell says so instead of
showing a zero.You do not have to take any of this on trust. The chain is public end to end:
1. The claim was frozen before the deadline. Every gameweek's projections are written to a timestamped snapshot at build time, before kickoff, and committed to the public repository. The build refuses to write a snapshot once the gameweek has locked, so a number cannot be quietly improved after the fact.
2. The grading is a published file. Each row above links its raw grading
JSON under /api/fpl/accuracy/ — every graded player, our projection,
the realized points and the error, not just the average.
3. The projections themselves are downloadable. The full board for every gameweek is on the open dataset page as JSON and CSV under CC BY 4.0. Grade us yourself against any scoring you like.
4. The code is open. The simulation, the grading and this page are in the repository.
We do not drop bad gameweeks, re-run the model on a finished week and report the better number, or quote accuracy over a hand-picked subset of players. The ledger above is every gameweek we have graded, in order. The track record carries the same discipline for the World Cup work.