The NCAA Football API for developers ballers.
A decade of FBS football — 9,689 games from 2016 through the 2026 schedule, joined to conference standings and per-game player stats on 95% of finished games. Multi-book odds cover 725 finished FBS games. FCS (Football Championship Subdivision) is live as a separate league — 6,751 games. Scores on every finished game, player stats on 52% of finished, no odds. Built on the College Football Data feed.
1,000 req/day free (2,000 with GitHub). No credit card.
NCAA FBS · 9,689 games · player stats on 95% of finished · FCS also live (6,751 games)
Seasons: 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026
Need the pro league too? The NFL API page covers six complete seasons of play-by-play with EPA and win probability. See the NFL API →
- 9,204
- FBS games, 2016 through the 2026 schedule
- 2016-08-27 to 2026-11-28, includes 1,024 shared FBS-vs-FCS buy games
- 93%
- of FBS games have per-game player stats
- 4.1M player-stat rows, across 8,188 of 8,798 finished games
- 139
- FCS teams, a separate league sharing the same sport
- 7,113 games touch an FCS team (6,089 FCS-vs-FCS + the 1,024 shared buy games)
- 88-99%
- of FCS games have player stats, 2021-2025
- sparse before 2021 — an upstream source limit, not a gap on our end (1.1M rows total)
- 716
- 2025 FBS games with real multi-book odds
- 64% of the season — a closed, off-season archive today
Stats included
Every football stat field the API returns today — 96 in total, grouped by how they are produced. Each group carries its own freshness, because a sport is rarely uniformly current.
Per-game player stats
Post-gameWritten after the game ends — not a live in-game feed. Last ingested 2026-08-30.
- Endpoint
- /v1/players/:id/stats
- Last updated
- 2026-08-30
Fields (77)
QB Hits, QB Rating, Adjusted QBR, Passes Defended, QB Hurries, Sacks, Solo Tackles, Defensive Touchdowns, Tackles for Loss, Total Tackles, Fumbles, Fumbles Lost, Fumbles Recovered, Interceptions, Interception Return Touchdowns, Interception Return Yards, Kick Return Average, Longest Kick Return, Kick Returns, Kick Return Touchdowns, Kick Return Yards, Field Goals, Longest Field Goal, Field Goal %, Kicking Points, Total Kicking Attempts, Extra Points, Yards per Attempt, Completions/Attempts, Interceptions Thrown, QBR, Passing Touchdowns, Passing Yards, Punt Return Average, Longest Punt Return, Punt Returns, Punt Return Touchdowns, Punt Return Yards, Punting Average, Punts Inside the 20, Longest Punt, Punts, Touchbacks, Punting Yards, Yards per Reception, Longest Reception, Receptions, Receiving Touchdowns, Receiving Yards, Yards per Carry, Carries, Longest Rush, Rushing Touchdowns, Rushing Yards, Completions Passing Attempts, Extra Points Made Extra Point Attempts, Field Goals Made Field Goal Attempts, Gross Average Punt Yards, Hurries, Interception Touchdowns, Interception Yards, Long Field Goal Made, Long Kick Return, Long Punt, Long Punt Return, Long Reception, Long Rushing, Punt Yards, Punts Inside20, Receiving Targets, Rushing Attempts, Sacks/Sack Yards Lost, Total Kicking Points, Yards per Kick Return, Yards per Pass Attempt, Yards per Punt Return, Yards per Rush Attempt
Team stats (per game)
Post-gameWritten after the game ends — not a live in-game feed. Last ingested 2026-08-30.
- Endpoint
- /v1/matches/:id/statistics
- Last updated
- 2026-08-30
Fields (25)
Completions/Attempts, Defensive Touchdowns, First Downs, First Downs (passing), First Downs (penalty), First Downs (rushing), Fourth-Down Efficiency, Fumbles Lost, Interceptions Thrown, Net Passing Yards, Time of Possession, Red Zone Attempts, Rushing Attempts, Rushing Yards, Sacks / Yards Lost, Score, Third-Down Efficiency, Total Drives, Total Offensive Plays, Total Penalties Yards, Total Yards, Turnovers, Yards per Pass, Yards per Play, Yards per Rush Attempt
Not included
- Not shown here — player_per_week_nflverse: nflverse per-week player stats — the same granularity as the primary per-game set, from a second source.
- Not shown here — play_by_play: play-by-play events, not a stat line — mostly identifiers once classified.
- Not shown here — rosters: roster listings — reference data, and no route serves them.
Missing a stat?
We build what people actually ask for. If a field you need is not on this page, tell us — requests are how we decide what to add next.
What you can build
Season archive
Every FBS result with conference and bowl context, 2016-2026.
Conference standings tool
Final standings across Power Five and Group of Five.
Player stat leaders
Season and game-level passing/rushing/receiving leaders across a decade of FBS play, plus FCS.
FCS scores + stats
Full FCS schedules (139 teams) and player stats alongside FBS, same schema, same key.
Closing-line archive
Real multi-book odds for 716 of the 2025 season's 1,121 games — backtest a model against actual closing lines.
Team trends dashboard
Per-team results and form across the season.
Rivalry tool
All-time head-to-head records between programs.
Backtest engine
Replay completed games and their odds for model validation.
Endpoints
On the gateway at api.bigballsdata.com. Authenticate with the bearer token from /dashboard/keys.
| Method | Path | Returns | Plan |
|---|---|---|---|
| GET | /v1/matches?sport=american_football&league=ncaaf | NCAA FBS football games (2016-2026, 9,204 games) with final scores and linescores | Free |
| GET | /v1/matches?sport=american_football&league=ncaaf-fcs | FCS-vs-FCS games (6,089) — the 1,024 shared FBS-vs-FCS buy games surface via /v1/teams/:id/form instead, on either team | Free |
| GET | /v1/players/:id/stats | Per-game player stats — passing, rushing, receiving, and more (93% of FBS games; FCS 88-99% for 2021-2025, sparse before) | Free |
| GET | /v1/matches/:id/odds | Current per-book odds for one FBS game — empty between seasons; the 2025 archive is on /v1/odds/historical, not here | Edge |
| GET | /v1/odds/historical?sport=american_football&league=ncaaf | Opening, T-24h, and closing odds snapshots for backtesting — 716 of the 2025 season's 1,121 games (64%) | Edge |
| GET | /v1/standings?sport=american_football&league=ncaaf | Conference + division standings (FBS only — FCS standings not loaded yet) | Free |
| GET | /v1/teams/:id/form | Recent W/L form — works for FBS or FCS teams, and surfaces shared buy games | Solo |
| GET | /v1/teams/:id/h2h-intelligence | Head-to-head history between programs, FBS or FCS | Solo |
Read live from GET /v1/coverage — the same endpoint you can call yourself. Dates are absolute, not a build timestamp.
Start on the free tier
100 requests per minute and 1,000 per day, free — the highest per-minute burst of any free sports API we checked. Burst is what matters when something asks several questions in a row and waits on each answer.
- Every sport and league we cover — the paid tiers add history depth and premium fields, not more leagues.
- Calls are counted one for one — no credit weighting, no markets-times-regions arithmetic.
- Link GitHub and the daily cap goes to 2,000.
- No credit card.
Or ask your AI tool directly
Connect your account to Claude, ChatGPT, Cursor, Perplexity or any other MCP-compatible tool and ask for football data in conversation — scores, standings, player stats and Elo ratings, with no API key to paste and no code to write. Your plan and limits carry over exactly as they do here.
Connect your AI tool →Integrate in a few lines
import { BigBallSportsClient } from '@bigballsdata/sdk';
const client = new BigBallSportsClient(process.env.BBS_API_KEY!);
const games = await client.matches.list({ sport: 'american_football', league: 'ncaaf', season: '2025' });
for (const g of games.data) {
console.log(g.home, 'vs', g.away, '-', g.status);
// The 2025 archive lives on /v1/odds/historical — 716 of the season's
// 1,121 games carry opening/closing snapshots. /v1/matches/:id/odds
// serves CURRENT pricing only, so it is empty between seasons.
const odds = await client.get(`/v1/odds/historical?match_id=${g.id}`);
if (odds.data) console.log(' odds:', odds.data);
}Every FBS conference. FCS too. A decade of history. One key.
Scores, standings, per-game player stats, and real closing-line odds for FBS football — plus a full FCS division as a separate league on the same sport — sit behind the same schema and the same key as every other sport on the API. No separate CFB vendor, no second bill for the odds archive.
- A decade of FBS football, not a sample — 9,204 games from 2016 through the 2026 schedule, every conference, bowls and the CFP.
- Per-game player stats for 93% of FBS games since 2016 — 4.1M rows, not a minority-coverage sample.
- FCS is a real, separate coverage line too — 139 teams, 7,113 games; player stats are strong 2021-2025 (88-99%) and sparse before that — an upstream source limit, not a gap on our end.
- Real multi-book odds for 716 of the 2025 season's 1,121 games, the same archive backing the NFL and NBA odds surfaces.
- The same canonical envelope as every other sport, so NCAAF code ports straight to the NFL API.
- Free tier covers scores, standings, and player stats; per-game and historical odds both require the Edge plan or higher.
Live today on the free tier — 1,000 req/day (2,000 with GitHub), no credit card. The two divisions open on different days: FCS starts Thursday 27 August 2026 at 22:00 UTC, FBS on Saturday 29 August at 16:00 UTC.
Frequently asked
- Is NCAA football live right now?
- It depends which division, and the two do not start together. FCS (league=ncaaf-fcs) opens Thursday 27 August 2026 at 22:00 UTC with 22 games. FBS (league=ncaaf) does not start until Saturday 29 August at 16:00 UTC — there are no FBS games at all on the 27th or 28th. Once a game is under way, be precise about what "live" means, because it differs by field. The score, the current period and the game clock come from a live feed, and GET /v1/matches/:id is served uncached, so what you read is what we hold. Once any game anywhere is under way the poll runs every 15 seconds, putting us roughly 15-20 seconds behind the play. The FIRST game of a slate is slower: with nothing live the poller backs off to a 2-minute cycle, so kickoff itself can take up to about two minutes to register. Per-game player stats, team stats and box scores are NOT live: they land after the game via an hourly job, so during play they are absent or still showing a previous week. There is no play-by-play and no drive data for college football at all. If you need in-game player numbers, this API does not serve them for NCAAF yet.
- How fast are NCAAF live scores, and what updates during a game?
- This applies once a game is actually under way — note FCS and FBS open on different days (27 and 29 August 2026 respectively). The poller is adaptive, and the honest answer has two numbers. While any game is in progress it polls every 15 seconds, plus up to about 4 seconds of scheduling stagger — roughly 15-20 seconds from the feed to our database, usually less. When nothing is live it backs off to a 2-minute cycle to stay polite to the upstream feed, so the first kickoff of a slate can take up to about two minutes to appear; every update after that is on the 15-second cadence. Measured, not estimated: a first pitch on 27 August 2026 registered 114 seconds after the feed flipped it to in-progress. GET /v1/matches/:id sets no cache-control header and is served uncached, so there is no extra staleness between our database and your read. Nothing else moves during the game: per-game player stats, team stats and box scores are written by an hourly job after the fact, GET /v1/matches/:id/statistics is cached for 5 minutes and is not a live surface, and play-by-play and drive data do not exist for college football on this API. Live per-player box scores do exist for NBA, MLB and NHL, but American football is not wired into that worker.
- How far back does NCAAF history go?
- A full decade — 9,204 FBS games from 2016 through the 2026 schedule (2016-08-27 to 2026-11-28). Per-game player stats are live for 2016 through 2025, covering 93% of finished FBS games (8,188 of 8,798). That total includes 1,024 FBS-vs-FCS "buy games" — previously excluded because FCS opponents had no resolvable roster, now carried since FCS is its own separate league (see below).
- Which programs are covered?
- All FBS programs across the Power Five, Group of Five, and independents, built on the College Football Data feed. FCS (Football Championship Subdivision) is also covered as a separate league — see the FCS question below.
- Do you cover FCS (Football Championship Subdivision)?
- Yes — as a separate league (league=ncaaf-fcs), sharing the same American Football sport as FBS, not merged into it. 139 teams. A decade of regular-season history, 2016-2025 (weeks 1-15 only — the 24-team FCS postseason playoff is not loaded, a real gap). 7,113 games touch an FCS team: 6,089 FCS-vs-FCS games filed under the FCS league, plus 1,024 FBS-vs-FCS "buy games" filed under NCAAF (FBS) since they are part of the FBS team's own schedule too — both kinds show up on either team's own record via /v1/teams/:id/form and /v1/teams/:id/h2h-intelligence, but a league-scoped browse (league=ncaaf-fcs) surfaces the 6,089 FCS-vs-FCS games only. Per-game player stats are strong for 2021-2025 (88-99% of games) and the 1,024 buy games are covered back to 2016 — but pure FCS-vs-FCS box scores are sparse before 2021: the upstream source's own historical FCS box-score collection doesn't reach back that far, a source limit, not a gap on our end. End-to-end that's about 58% of the 7,113 games (1,087,323 rows across 42,761 players). No standings, Elo ratings, or odds for FCS yet.
- Are NCAA football odds available?
- Yes — for FBS, on /v1/odds/historical. Opening and closing snapshots are archived for 716 of the 2025 season's 1,121 games (64%), which is what you want for backtesting. Reach for that endpoint rather than /v1/matches/:id/odds: the per-match route serves CURRENT pricing only, so it returns nothing for a finished 2025 game and nothing at all between seasons. Same shape as the NFL odds surface — 2026 pricing resumes closer to kickoff. No odds are loaded for FCS today.
- Does the NCAAF API include play-by-play or box scores?
- There's no play-by-play for college football on this API — unlike the NFL surface, no per-play feed exists. Per-game player stats (passing, rushing, receiving, and more) are a real, comprehensive product though: 93% of finished FBS games from 2016 through 2025 carry box-score-level player stats via /v1/players/:id/stats — 4.1M rows across 8,188 games. FCS is strong too, just split by era: 88-99% of FCS games from 2021-2025, sparse before that — the upstream source's own historical FCS box-score collection doesn't reach back past 2021, a real source limit, not a partial rollout on our end (1.1M rows across the 7,113 games that touch an FCS team, ~58% end-to-end).
- Is it on the free tier?
- Yes. Scores, standings, team form, head-to-head history, and per-game player stats are all on the free tier at 1,000 req/day (2,000 with GitHub) — FBS and FCS alike. Per-game and historical odds both require the Edge plan ($149/mo) or higher.
Related APIs
Other APIs you can build with: