How it works

What goes into a forecast, what doesn't, and how to check every one.

What the forecasts use

Results, shots, shots on target, corners and cards from every match in the last four years, across all divisions of each country. Clubs get attacking and defensive ratings that weight recent matches more. Shots on target feed an expected-goals estimate, so a side that creates a lot but finishes badly isn't written off. Pi-ratings add a second opinion on the result.

What they don't use

Injuries, suspensions, line-ups, transfers, weather or referees. Forecasts are sealed up to three days ahead, so late team news isn't in them.

The reasons

Each forecast comes with a few lines on what drove it, taken from the same numbers the model uses: team ratings against the league average, expected goals against actual goals, form, rest and the table. Head-to-head records are shown as context only.

Sealing

Each forecast is written as a small document with a random nonce, and its SHA-256 fingerprint is published immediately. Every entry includes the previous entry's fingerprint, so entries can't be reordered, removed or slipped in later. The database stamps the time, rejects anything sealed less than ten minutes before kickoff, and refuses all edits. Contents open to everyone at half-time, 50 minutes after kickoff.

Grading

Results come from football-data.co.uk. A right result means our most likely outcome happened. Over/under and both teams to score count as right when the side we rated above 50% came in. Log loss scores the full probabilities against the bookmaker's closing odds with their margin removed.

Not betting advice

The model doesn't beat bookmaker prices on average, and nobody should bet expecting it to. Bet only what you can afford to lose. 18+.

Verify the ledger

Your browser downloads every entry, recomputes each fingerprint and checks the chain.

Paste an entry's contents to see its fingerprint.

Outside copies

Once a day the latest fingerprint is published somewhere this site can't edit.