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
| Column | Meaning |
|---|---|
kickoff_utc | Kick-off time, ISO 8601, UTC. |
league | Competition name, e.g. “Premier League”. |
home_team | Home team, full name. |
away_team | Away team, full name. |
home_goals | Full-time home goals. |
away_goals | Full-time away goals. |
market | Market: 1x2, ou25 (Over/Under 2.5) or btts. |
predicted | Our call: home/draw/away, over/under, or yes/no. |
actual | What happened, same vocabulary as predicted. |
correct | true when the call matched the outcome. |
p_home | Published probability of a home win (0–1). |
p_draw | Published probability of a draw (0–1). |
p_away | Published probability of an away win (0–1). |
p_over25 | Published probability of over 2.5 goals (0–1). |
p_btts | Published probability of both teams scoring (0–1). |
confidence | Model confidence in the main pick (0–1). |
model_version | Version of the model that priced the match. |
settled_at | When the prediction was graded, ISO 8601, UTC. |
match_url | Permanent 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.