What is Cricsheet?

Cricsheet is Retrosheet for Cricket. We provide ball-by-ball data for Men’s and Women’s Test Matches, One-day internationals, Twenty20 Internationals, some other international T20s, and all Indian Premier League seasons.

At the moment we have ball-by-ball information for 4,643 matches, comprising 422 Test matches, 6 other multi-day matches, 1,627 One-day internationals, 215 other one-day matches, 990 T20 internationals, 157 international T20s, 756 Indian Premier League matches, 292 Big Bash League matches, 121 NatWest T20 Blast matches, and 57 Pakistan Super League matches featuring 65 countries, 47 club teams, and 2 representative XIs going back as far as 2009 (for women), and 2005 (for men).

The most recent matches added to the site are: the Afghanistan vs West Indies Men’s ODI match that was played on the 6th of November, 2019, the Australia vs Pakistan Men’s T20 match that was played on the 5th of November, 2019, and the New Zealand vs England Men’s T20 match that was played on the 5th of November, 2019.

The data

The data is provided in number of zip files, one of which contains all of the matches, and the others certain sub-sets of matches, such as for type of matches, matches for certain countries, teams, or genders, or periods of time. We also provide (as an experiment) CSV, and XML versions of all matches. Below is the listing of the data grouped by types of matches (for any gender), or you can see the full set of downloads, in various formats, on the downloads page.

All matches
4,643 matches, 20M
Test matches
422 matches, 5M
Multi-day matches
6 matches, 70K
One-day internationals
1,627 matches, 7M
One-day matches
215 matches, 914K
T20 internationals
990 matches, 3M
Non-official T20 internationals
157 matches, 402K
Big Bash League matches
292 matches, 774K
Indian Premier League matches
756 matches, 2M
NatWest T20 Blast matches
121 matches, 315K
Pakistan Super League matches
57 matches, 152K

Using the data

What could you do with the data? Well that’s up to you really. You could investigate who are the best and worst value players in the IPL. Or see how much difference different non-strikers make to the scoring rate of the people they bat with. Or come up with something completely new that revolutionises cricket like finding the equivalent of DIPS (Defense independent pitching statistics) from baseball.

The data format

The data is provided in YAML format, a human-readable data format. There are libraries available to parse this in multiple languages. As for the structure of the file, hopefully it is clear enough when you have a look at the data, although a full description of the format is also available.

How can I help?

Spotting errors in the data

The first method of helping would be to spot any errors in the data. Ideally we won’t have any but there’s always the chance and if we can spot the errors we can fix them and write further validation to ensure that further examples don’t slip through.

Helping with missing data

The second method of helping is to help us get ball-by-ball data for our missing games. This doesn’t even have to involve finding the data, it’s possible you know a contact who may be able to shed light on some matches, or you know of someone who has the commentary for a match on tape. Even small bits of info might be enough to put us on the right track.

Blog Entries

We do have an infrequent blog to which we occasionally post about updates to the data format, additions to the site, or random musings. The most recent entry was “Hello again” on the 17th of April, 2019.

Getting in touch

You can contact the project at stephen (at) cricsheet (dot) org. Feel free to get in touch, we love hearing about what people are doing with the data.