Skip to content

Data sourcing

We only show data we are legally allowed to show.

Every external source we ingest is declared in a registry with its real license, terms, attribution, and a legal verdict. Ingestion code checks that registry before it fetches a single row, so a source whose terms forbid commercial or automated use cannot be wired into the product. We prefer openly-licensed aggregators over scraping, we attribute what requires it, and we publish what we refuse to touch — and why.

Cleared to ingest
10
Refused / gated
13

Sources we ingest

Open-licensed or licensed feeds, used within their terms. Attribution is rendered wherever the data appears.

nflverse (nflverse-data)

bulk-open-data

Cleared · attribute
License
CC-BY-4.0
Commercial
permitted
Attribution
required
Rate limit
GitHub release assets; cache 30m+, no high-frequency polling.

CC-BY-4.0 explicitly permits commercial use with attribution.

Data via nflverse (nflverse-data), licensed CC BY 4.0.

player_stats_weekrostersplayerssnap_countsngsinjuriesdepth_chartspfr_advstatsschedulespbp+5

The Odds API

licensed-api

Licensed
Commercial
permitted
Attribution
not required
Rate limit
Plan quota; cache /sports ~1h, /events ~10m.

Commercial use in user-facing analytics is permitted; never re-expose odds as our own feed/API.

oddsscoresevents

Sleeper

public-api

Use with caution
Commercial
not granted
Attribution
required
Rate limit
<1000 req/min (self-throttled)

Public, keyless, read-only API; no written commercial grant published — low legal risk, attribute trending data and confirm before making load-bearing.

Player movement data via the Sleeper API.

players/nflplayers/nfl/trending

US National Weather Service (api.weather.gov)

public-api

Cleared
Commercial
permitted
Attribution
not required
Rate limit
Be reasonable; send a User-Agent. No key.

US-government public-domain weather data — free for commercial use, no key. The clean weather source for game environments.

pointsgridpointsforecastforecast-hourly

Retrosheet

bulk-open-data

Cleared · attribute
Commercial
permitted
Attribution
required
Rate limit
Bulk download; cache locally.

Complete MLB play-by-play/box history; explicitly permits commercial products with the mandated notice.

The information used here was obtained free of charge from and is copyrighted by Retrosheet. Interested parties may contact Retrosheet at www.retrosheet.org.

eventsgamelogsrosters

Sean Lahman Baseball Database

bulk-open-data

Cleared · attribute
Commercial
permitted
Attribution
required
Rate limit
Bulk download; cache locally.

Season-level MLB stats/bios/teams; CC-BY-SA permits commercial use with attribution + share-alike.

Baseball data from the Sean Lahman Database, licensed CC BY-SA 3.0.

battingpitchingfieldingteamssalaries

openfootball

bulk-open-data

Cleared
License
CC0-1.0
Commercial
permitted
Attribution
not required
Rate limit
GitHub; cache locally.

Global soccer fixtures/results as CC0 public domain — the cleanest legal source; no attribution required.

matchesclubsleagues

MoneyPuck

bulk-open-data

Cleared · attribute
Commercial
permitted
Attribution
required
Rate limit
Bulk CSV; cache locally.

Free NHL shot-level + xG/win-probability CSVs back to 2008; credit MoneyPuck.

NHL advanced stats via MoneyPuck.com.

shotsskatersgoaliesteamslines

Cricsheet

bulk-open-data

Cleared · attribute
Commercial
permitted
Attribution
required
Rate limit
Bulk download; cache locally.

Ball-by-ball cricket across all formats; ODC-BY permits commercial use with attribution.

Cricket data via Cricsheet, licensed ODC-BY.

matches-jsonmatches-csv

football-data.co.uk

bulk-open-data

Use with caution
Commercial
permitted
Attribution
required
Rate limit
Bulk CSV; cache locally.

Free historical soccer results + closing odds (high CLV value); no formal license posted, so credit and confirm before heavy commercial reliance.

Soccer results & odds via football-data.co.uk.

resultsclosing-odds

Sources we refuse to touch

Technically reachable, legally off-limits for a commercial product — or requiring spend we have not committed. We name them so the boundary is auditable, not implied.

SportsDataIO (Fantasy/DFS API)

licensed-api

Paid plan required
Commercial
permitted
Attribution
not required
Rate limit
Per paid subscription plan.

Licensed DFS salary/slate feed covering DraftKings/FanDuel/Yahoo — the legal route to DK salaries. Requires a paid subscription; get a written rep that they are authorized to redistribute DK DFS salaries.

dfs-slatesdfs-salariesprojections

FantasyData (DFS API)

licensed-api

Paid plan required
Commercial
permitted
Attribution
not required
Rate limit
Per paid subscription plan.

Licensed DFS salary/projection feed (DK/FD). A legal alternative to SportsDataIO; requires a paid plan and an authorized-redistribution rep.

dfs-slatesdfs-salariesprojections

DraftKings (unofficial hidden JSON API)

scrape

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a — do not automate.

DK ToU bars automated collection, commercial use, and redistribution; uncopyrightable salary facts do not cure the contract breach (hiQ v. LinkedIn), and DK enforces via cease-and-desist. Use a licensed DFS feed instead.

Open-Meteo

public-api

Paid plan required
License
CC-BY-4.0
Commercial
not granted
Attribution
required
Rate limit
Free tier ~10k calls/day, non-commercial only.

Clean CC-BY data, but commercial use requires a paid subscription we do not yet hold — founder-gated spend.

Weather data by Open-Meteo.com (CC BY 4.0).

forecasthistorical-weather

ESPN (undocumented JSON)

public-api

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a — do not automate.

ESPN ToU restricts to personal, non-commercial use and prohibits high-volume automated access.

Pro-Football-Reference / Sports-Reference

scrape

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a — bot access blocked.

ToS forbids automated scraping and building tools from scraped data. Use nflverse's pfr_advstats release instead.

nfeloapp / nfelo

bulk-open-data

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a

No license granted on their outputs. Go to the nflverse source they build on instead.

Sports-Reference family (PFR, BBR, B-Ref, Hockey-Ref, FBref, Stathead)

scrape

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a — bot access barred.

ToS bars scrapers/bots; data is third-party-licensed and cannot be redistributed (custom data starts at $5,000). Use nflverse pfr_advstats / open archives instead.

Pro Football Focus (PFF)

licensed-api

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a

Proprietary grades behind a commercial license; no scraping. Licensable only by agreement.

Ergast Motor Racing Data (F1)

public-api

Refused
Commercial
not granted
Attribution
required
Rate limit
n/a

CC-BY-NC is non-commercial only (and the API is deprecated). Not usable in a commercial product.

Understat (soccer xG)

scrape

Refused
Commercial
not granted
Attribution
not required
Rate limit
n/a

No official API or commercial-use license; scraping is a ToS grey area we refuse. Use openfootball / football-data.co.uk for soccer.

Sourcing doctrine

  • Prefer open-licensed aggregators over scraping.
  • Read the actual license/ToS, not the marketing page.
  • Respect robots.txt and anti-automation clauses — accessible is not permitted.
  • Attribute every source whose license requires it.
  • Cache politely, rate-limit ourselves, never re-expose a licensed feed.
  • No fabricated data — every datapoint traces to a real source row.