§ data coverage

What we actually have.

Every field in the foot.io schema, with its live fill-rate. No marketing averages — this page pulls the raw numbers every time it loads. If a column says 23% coverage, it's because 77% of rows have it null. We'd rather show you the real floor than promise a ceiling.

Database totals

§ row counts across the key tables
Loading…

How to read the coverage tables below

STRONG

≥ 70% coverage

Fill-rate table-stakes. You can safely rely on this field being present when building against our API.

MEDIUM

20% – 69% coverage

Populated for most well-documented entities (top leagues, famous players) but sparse on the long tail.

SPARSE

1% – 19% coverage

Narrow-source fields (StatsBomb open data, FBref top-5 leagues, FPL Premier League only). Expect gaps.

EMPTY

< 1% coverage

Schema exists, ingester scaffolded or running. Check back soon — or subscribe to the changelog.

Player field coverage

§ of 54,257 players · refreshed from data_coverage_snapshot
Loading…

Team field coverage

§ of 4,213 clubs + national teams
Loading…

Competition field coverage

§ of 90 competitions
Loading…

Refresh cadence

This page reads from data_coverage_snapshot, a materialized view refreshed nightly in the same GitHub Action that runs our data-quality check. If you want to know exactly what the DB holds right this second, use the query below.

GET /rest/v1/data_coverage_snapshot?select=*
     ↳ live fill-rate per (entity, field) pair — the source of this page

POST /rest/v1/rpc/refresh_data_coverage
     ↳ force a refresh (service-role only)