Cricsheet Ball-by-Ball Match Data Scraper
Pricing
Pay per event
Cricsheet Ball-by-Ball Match Data Scraper
Downloads and parses Cricsheet's ball-by-ball cricket match archives (Test, ODI, T20I, IPL, BBL and more). Returns one record per delivery with match metadata, innings, over, batter, bowler, runs, wicket, and extras — the highest-granularity cricket analytics dataset available.
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Share
Downloads and parses Cricsheet's open ball-by-ball cricket match archives. Returns one record per delivery — match metadata, innings, over, batter, bowler, runs scored, wickets, and extras — for every format in the Cricsheet dataset.
Cricsheet is the de-facto open cricket dataset used by fantasy platforms, betting models, and academic researchers. It covers Test, ODI, T20I, IPL, BBL, and dozens of other competitions. This actor flattens the archive into queryable per-delivery rows, which is the highest-granularity cricket analytics format available.
What you get
Each output record represents a single ball bowled:
| Field | Description |
|---|---|
match_id | Cricsheet unique match identifier |
competition | Competition name (e.g. Indian Premier League) |
format | Match type (test, odi, t20) |
match_date | Date of the match (YYYY-MM-DD) |
venue | Ground name and city |
team_a / team_b | Both teams |
batting_team | Which team is batting in this innings |
toss_winner | Team that won the toss |
result | Match result |
innings | Innings number (1 or 2) |
over | Over number (0-indexed) |
ball | Ball within the over |
batter | Batter facing |
non_striker | Non-striking batter |
bowler | Bowler |
runs_batter | Runs off the bat |
runs_extras | Extra runs |
runs_total | Total runs from this delivery |
wicket_kind | How the wicket fell (caught, bowled, lbw, run_out...) |
wicket_player_out | Player dismissed (empty if no wicket) |
extras_type | Type of extra (wides, noball, byes, legbyes) |
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
matchFormat | string | t20s | Format archive to download: all, tests, mdms, odis, t20s, t20is, ipl, bbl |
maxMatches | integer | 5 | Maximum matches to process. Leave blank for the full archive. |
maxItems | integer | 100 | Maximum delivery records to return. |
Format options
all— every match in the Cricsheet database (~22,000 matches, 141 MB)tests— Test matches only (~900 matches)mdms— Multi-day matches (~2,100 matches)odis— One-day internationals (~3,100 matches)t20s— T20 leagues worldwide (~5,400 matches)t20is— T20 internationals only (~320 matches)ipl— Indian Premier Leaguebbl— Big Bash League
Usage notes
Scale. A full all run with no maxMatches cap returns millions of delivery records. For most analytics use cases, select a specific format and set reasonable caps.
Resumable runs. maxItems caps the total deliveries emitted. maxMatches controls how many matches are parsed before stopping — useful when you need complete match records rather than a truncated mid-match stream.
Attribution. Cricsheet data is released under the Open Database License (ODbL). Give credit to Cricsheet.org when you publish work derived from this data.
Data source
Cricsheet.org — a community cricket data project providing ball-by-ball data for international and major T20 league cricket since 2005. The archive is updated regularly as new matches are played.