Cricket Database
0 of 50 calls today
Get a free API key Sign in Dashboard Upgrade

Pricing

Every ball since 2001. Pay for the window you need.

Cricket Database turns a ball-by-ball archive of every match since 2001 into one clean API: results, scorecards, every delivery, careers, head-to-heads, record lists and analysis, updated every morning. Plans are flat, never per call; the plan decides how far back you read, whether you see today, and how deep you go.

Matches
23,858
Endpoints
47
First ball
Dec 2001
What this plan readsThe last 30 days
Dec 200120102018Sep 202630 days agotoday
GET

Five plans, one API

Start on the free key with no card. Move up when you need more of the archive, today's matches or the analysis; every key moves with you.

Free key

Try it on real matches.

$0forever

 

  • 50 calls a day, 10 a minute
  • Last 30 days of results and scorecards
  • Yesterday's matches in full
  • First over of any match, ball by ball
  • Summaries for the rest of the archive
  • Players, teams, venues, competitions
Get a free key

Match Week

The latest, as it lands.

$49a month

 

  • 5,000 calls a day, 60 a minute
  • Last 7 days every ball, today included
  • Overs, partnerships and DRS reviews
  • Full scorecards for the last 30 days
  • Today's matches as they arrive
  • Everything in the free key

Archive

Everything, to yesterday.

$69a month

 

  • 25,000 calls a day, 120 a minute
  • Dec 2001 to yesterday all 23,858 matches
  • Every ball of every match
  • Every innings and spell, head-to-heads
  • Top 100 of every record list
  • Not today's matches: those are Match Week
Everything, including today

Pro

Archive plus Match Week.

$99a month

 

  • 50,000 calls a day, 180 a minute
  • Dec 2001 to today nothing held back
  • Every match since 2001, today included
  • Every ball, the day it arrives
  • Everything in Archive and Match Week
  • Double Archive's daily calls

Analyst Pro

Analysis on top.

$149a month

 

  • 100,000 calls a day, 300 a minute
  • Pro plus 12 analytical endpoints
  • Batter against bowler matchups
  • Career splits, phases and dismissals
  • Venue par scores and toss effect
  • Competition trends and chase odds

Every endpoint, and what each plan gets

All 47 endpoints of the API. Search by name, address or what it returns, or pick a group; press a plan's name to light up its column. Each endpoint opens its page in the documentation.

47 of 47 endpoints
EndpointFree$0Match Week$49 a monthArchive$69 a monthPro$99 a monthAnalyst Pro$149 a month
/v1/usageUsageCalls today, the daily limit, when it resets, and which plan the key is on.FullFullFullFullFull
/v1/statusStatusThe latest update, match, delivery and people counts. No key needed; use it as a health check.FullFullFullFullFull
/v1/searchSearchPlayers, teams, venues and competitions by name, including the other names a player has been recorded under.FullFullFullFullFull
/v1/matchesMatchesMatches, newest first, filtered and paged: ball by ball from December 2001, and every men's Test, ODI and T20 international back to 1877 with its scorecard (coverage scorecard), its innings totals (coverage totals) or its result (coverage result_only). The free key and Match Week see the last 30 days.30 days30 daysand todayTo yesterdayFullFull
/v1/matches/{match}MatchOne match: teams, result, toss, venue, officials, player of the match and the innings totals. An international held without its balls answers coverage scorecard or totals, with each innings, its extras and fall of wickets, or result_only. Older than 30 days on the free key comes back as a summary.30 days30 daysand todayTo yesterdayFullFull
/v1/matches/{match}/scorecardScorecardEvery innings: batting with dismissals, bowling, extras, did not bat and fall of wickets, and weather: each day's highest and lowest temperature, rain, humidity, dew point and wind at the ground.30 days30 daysand todayTo yesterdayFullFull
/v1/matches/{match}/deliveriesDeliveriesEvery ball, with batter, non-striker, bowler, runs, extras and wickets. Match Week reads the last 7 days, Archive everything to yesterday, Pro and Analyst Pro everything. Players come once in a dictionary; balls carry their addresses.First over7 daysand todayTo yesterdayFullFull
/v1/matches/{match}/oversOversOver by over: runs, wickets, extras, the running total and the bowler.7 daysand todayTo yesterdayFullFull
/v1/matches/{match}/partnershipsPartnershipsEvery partnership, worked out from the balls: the pair, runs, balls and how it ended.7 daysand todayTo yesterdayFullFull
/v1/matches/{match}/reviewsDRS reviewsEvery DRS review: the ball, who asked, the batter, the umpire, the decision and umpire's call.7 daysand todayTo yesterdayFullFull
/v1/results/yesterdayLatest resultsEvery result from the latest day in the database.FullFullFullFullFull
/v1/liveLive matchesEvery match in play now, men and women, international and domestic, with the score of each innings and the state of play in words. Updated every minute. state=upcoming lists matches starting in the next 24 hours, finished those of the last 48 hours. ball_by_ball says whether the match has every ball; some domestic matches have the score only.FullFullFull
/v1/live/{match}A live matchOne live match: the score, the batting and bowling of every innings so far, who is in and on strike, the bowler, the partnership, the run rate, the chase (target, runs needed, balls left and required rate) and the last 12 balls as marks (. 1 4 6 W 1wd 2nb 1lb 1b). last_ball is the cursor to pass to the balls endpoint.FullFullFull
/v1/live/{match}/ballsLive deliveriesEvery ball of a live match in order, with the same fields as deliveries: batter, partner, bowler, runs, extras and wickets. Pass after (the next value of the last answer, or last_ball from the match) to get only the balls bowled since, so a poll every minute costs one call. A ball corrected by the scorers takes the place of the first version.FullFullFull
/v1/playersPlayersPlayers who have played, most matches first, or matched by name.FullFullFullFullFull
/v1/players/{player}PlayerA player: teams with match counts, first and latest match, birth and death details (born, birthplace, died, deathplace, nationality) and playing style (batting_style, bowling_style), each null when not known. Dates are YYYY-MM-DD, or YYYY-MM or YYYY when only that much is known.FullFullFullFullFull
/v1/players/{player}/statsCareer statsCareer batting and bowling by format.FullFullFullFullFull
/v1/players/{player}/inningsBatting logEvery batting innings, newest first. Lower plans get the last ten.Last 10Last 10FullFullFull
/v1/players/{player}/bowlingBowling logEvery bowling spell, newest first. Lower plans get the last ten.Last 10Last 10FullFullFull
/v1/teamsTeamsEvery team, international or club, with match counts.FullFullFullFullFull
/v1/teams/{team}TeamA team: record by format, main competitions and most-capped players.FullFullFullFullFull
/v1/teams/{team}/matchesTeam matchesA team's matches, with every filter of /v1/matches.30 days30 daysand todayTo yesterdayFullFull
/v1/teams/{team}/head-to-head/{other}Head to headTwo teams against each other, by format, with the last ten meetings.FullFullFull
/v1/venuesVenuesEvery ground, with city and match counts.FullFullFullFullFull
/v1/venues/{venue}VenueA ground: matches by format, highest totals and most runs there.FullFullFullFullFull
/v1/venues/{venue}/matchesVenue matchesMatches at a ground, with every filter of /v1/matches.30 days30 daysand todayTo yesterdayFullFull
/v1/competitionsCompetitionsEvery competition, with kind, gender, span and match count.FullFullFullFullFull
/v1/competitions/{competition}CompetitionA competition: the names it was filed under, titles by team and all-time leaders.FullFullFullFullFull
/v1/competitions/{competition}/seasonsSeasonsEvery season with its champion, final and top run scorer and wicket taker.FullFullFullFullFull
/v1/competitions/{competition}/seasons/{season}SeasonA season: every result, the results table and the leaders. Seasons like 2025/26 are written 2025-26.FullFullFullFullFull
/v1/recordsRecordsRecord lists. Lower plans get the top 10; Archive and Analyst Pro the top 100.Top 10Top 10FullFullFull
/v1/analytics/matchupsMatchupsBatter against bowler: balls, runs, dismissals, strike rate and average. Analyst Pro adds dots, boundaries, how out and every format separately.HeadlineHeadlineHeadlineHeadlineFull
/v1/analytics/players/{player}/splitsSplitsBatting by opposition, venue, year, innings and position; bowling by opposition, venue, year and innings.Full
/v1/analytics/players/{player}/phasesPhasesPowerplay, middle and death: strike rate, dot and boundary rates and dismissals; bowling economy and wickets.Full
/v1/analytics/players/{player}/dismissalsDismissalsHow a player gets out: by kind, by bowler and by balls faced.Full
/v1/analytics/players/{player}/scoringScoring shapeScoring shape: the share of dots, singles, twos, threes, fours and sixes, boundary runs and sixes per 100 balls.Full
/v1/analytics/players/{player}/formRolling formRolling average and strike rate over recent innings. Lower plans get the last five.Last 5Last 5Last 5Last 5Full
/v1/analytics/venues/{venue}/par-scoresPar scoresFirst-innings totals by format and year: average, median, highest, lowest, and batting first against chasing.Full
/v1/analytics/venues/{venue}/tossToss effectHow often the toss winner bats, and how often they win after batting or fielding.Full
/v1/analytics/teams/{team}/phasesTeam phasesA team's run rate and wickets by phase, batting and bowling, year by year.Full
/v1/analytics/competitions/{competition}/trendsCompetition trendsSeason by season: first-innings average, run rate, runs per wicket, boundaries per match and chase wins.Full
/v1/analytics/chasesChasesChase success by target band. Rain-affected chases are left out.Full
/v1/analytics/matches/{match}/wormWormRuns and wickets per over and the running totals for every innings, for worm and Manhattan charts.30 days30 days30 days30 daysFull
/v1/analytics/matches/{match}/win-probabilityWin probabilityAfter each over of a one-day or T20 match, how likely the batting side was to win, from models fitted on our own ball-by-ball record of completed matches: one for the first innings, one for the chase. model gives when they were fitted, how many matches they learned from, and their Brier score on matches held back from fitting (0 is perfect, 0.25 is a coin toss).SampleSampleSampleSampleFull
/v1/exportBulk filesEvery match held ball by ball as files to download instead of pages to call: matches, innings, batting, bowling and every ball, one file a year for each, and one file each for players, teams and grounds, as gzipped CSV or gzipped JSON lines. Each entry gives its rows, size, sha256 and download address. Files are rebuilt each night up to yesterday, a year only when its matches changed. Addresses in the files are the same as everywhere in the API.To yesterdayTo yesterdayTo yesterday
/v1/live/streamLive streamLive scores pushed instead of polled: one connection sends server-sent events as they happen. snapshot on connect (every match in play, as /v1/live gives it), score when a match's score or state changes, and ball for every new ball (as /v1/live/{match}/balls gives it, with its match). match= follows one match only. Send the key in a header as on every call, so read it with any SSE client on a server (curl -N, Python sseclient, Node eventsource). Each event carries an id: a client that reconnects sends it back by itself and carries on with no ball missed or repeated. A connection lasts 2 minutes and the client reconnects by itself; each connection counts as one call, and a key holds up to 2 at once. For the balls already bowled, call /v1/live/{match}/balls once, then follow the stream.FullFullFull
/v1/export/{file}Download a bulk fileOne bulk file, sent as it is: gzipped CSV (a header row, then one row a record) or gzipped JSON lines (one object a line), with Content-Length, an ETag of its sha256 and X-Rows. Each download counts as one call. The example shows the file's entry; the call itself answers the file.To yesterdayTo yesterdayTo yesterday
Full everything since Dec 2001, today included where it applies30 days, 7 days: that window, then a summaryTop 10 a sample, with the plan that opens the rest not on this plan

How the limits work

Two limits, both on every response, so your code never has to guess. Every key on your account shares its plan's limits.

Calls a day

Counted across your keys and reset at midnight UTC. Checking /v1/usage never counts.

X-Quota-Limit: 25000
X-Quota-Remaining: 24310
X-Quota-Reset: 1790726400

Calls a minute

A steady pace, so one busy script cannot crowd out the rest. Spread your calls and you will not meet it.

X-RateLimit-Limit: 120
X-RateLimit-Remaining: 117
X-RateLimit-Reset: 1790654460

At a limit

A 429 with a plain reason and Retry-After. Nothing is ever billed extra: calls stop until the reset, or until you move up a plan.

429 rate_limited
429 quota_exceeded
Retry-After: 38

Billing questions

Can I change plan later?

Any time, from Plan and billing on your account. A change applies straight away; the difference is charged or credited to your next bill.

What happens to my keys?

Nothing you need to do. Every key on your account moves to the new plan and its limits at once.

How do I cancel?

From your account. The plan runs to the end of the month or year you paid for, then your keys move to the free key.

What will I see on my card?

DEVELOPERDATA.NET. For a charge you do not recognise, use developerdata.net/support.

Is there a trial?

The free key is the trial, with no card and no clock. It calls the same API on the last 30 days of cricket.

Invoices and receipts?

On Stripe's secure billing page, opened from your account: every invoice, your card, and cancelling.

Try it before you pay

A free key in one step with Google. Fifty calls a day on real matches.

Card charges appear as DEVELOPERDATA.NET. Questions about a charge: developerdata.net/support. Cricket Database is operated by DeveloperData.net, Bangkok, Thailand.