Open data · CC BY 4.0

The FootInsights open dataset

Every prediction we have ever published, graded against the final score — as one plain CSV, free for research, journalism and side projects. The same append-only ledger behind our track record, in machine-readable form.

predictions.csv

1,066 graded predictions across 189 matches · Bundesliga, Campeonato Brasileiro Série A, Championship, Eredivisie, Ligue 1, Premier League, Primeira Liga, Primera Division, Serie A · Sun 16 Aug to Thu 3 Sept

Regenerated on every site build (several times a day). Snapshot built 2026-09-04.

Download CSV

What this data is

One row per prediction: three markets per match — result (1X2), Over/Under 2.5 goals, and both teams to score — each with the probabilities we published before kick-off, the final score, and whether the call was right. Rows are never edited or deleted; new matchdays only append. Losing runs are in there, because that is the point.

Predictions are written to the database before the match starts, stamped with their model version, and graded automatically at full time — the methodology page explains the model and its limits. Upcoming, not-yet-settled predictions are on the predictions pages and enter the file once graded.

Columns

ColumnMeaning
kickoff_utcKick-off time, ISO 8601, UTC.
leagueCompetition name, e.g. “Premier League”.
home_teamHome team, full name.
away_teamAway team, full name.
home_goalsFull-time home goals.
away_goalsFull-time away goals.
marketMarket: 1x2, ou25 (Over/Under 2.5) or btts.
predictedOur call: home/draw/away, over/under, or yes/no.
actualWhat happened, same vocabulary as predicted.
correcttrue when the call matched the outcome.
p_homePublished probability of a home win (0–1).
p_drawPublished probability of a draw (0–1).
p_awayPublished probability of an away win (0–1).
p_over25Published probability of over 2.5 goals (0–1).
p_bttsPublished probability of both teams scoring (0–1).
confidenceModel confidence in the main pick (0–1).
model_versionVersion of the model that priced the match.
settled_atWhen the prediction was graded, ISO 8601, UTC.
match_urlPermanent URL of the match's prediction page.

Probabilities for Under and BTTS-No calls are the complements of the stored p_over25 and p_btts. Fields can be empty where a value was never recorded — we publish nothing rather than a made-up number.

License & how to cite

The dataset is licensed under Creative Commons Attribution 4.0. Use it in anything, commercial included — just credit FootInsights with a link:

Data: FootInsights open predictions dataset, https://footinsights.com/data/

If you build something with it, we would genuinely like to see it — it is the best way this project grows.

Caveats

  • The ledger starts on 16 August 2026, when the model went live — it grows every matchday, but early cuts are small. Every number you derive should carry its sample size.
  • These are the model's pre-match probabilities, not betting advice; our own backtests show the closing-odds market ahead of the model. Fixtures and results underneath come from football-data.org.
  • Squad market values shown across the site are community estimates from Transfermarkt, ingested weekly via the CC0 transfermarkt-datasets project — context, not facts.

The same ledger, as a pageAbout the project