Plenty of clubs field a side in more than one competition in the same season, and most stats systems add the lot together. Here is why that happens, and how BetterCricket now pulls them apart.
A club asked us a fair question a few weeks ago. They run one side, and in a single summer that side plays in three separate competitions: a cup, a midweek competition and a divisional competition. On their stats page all of it was added together into one lump. Could we break it down by competition?
We could not, at the time. We can now.
Most club cricket looks tidy from the outside. You play in an association, the association runs grades, and a season is the grades you turned out in. Filter by season and grade and you have your answer.
A lot of clubs are not that shape. One plays across three different associations at the same time: its senior men's grades in one, its women's programme in another, an inclusive competition in a third. Another fields a single side in three competitions run by the one association. In both cases the season filter cannot help, because all of it happened in the same season, and the grade filter only helps if you already know which grades belong to which competition.
So the numbers get added together. A batting average across a cup, a midweek competition and a divisional competition is a real number, but it is not one a selector or a committee can do much with.
The obvious fix is to read the competition off the fixture data and group by it. We checked before building anything, and it is not there. Cricket Australia's feed gives us seasons, grades, matches and full scorecards, and at no point does it name the competition a grade sits under. PlayHQ's own website shows it, but that sits behind an interface we cannot rely on for something a club presses a button on.
What the feed does carry, on every single grade, is the association that runs it. That turned out to be sitting in a response we were already fetching and throwing away, and it goes back as far as a club's records do. We checked against a club whose records run back to the mid-1970s, and the association was on its oldest season.
The association gets a lot of clubs to the right answer on its own. A club playing three associations in one season now has its grades sorted into three groups automatically, named after the associations, with nobody touching anything.
It does not answer the club that started this. All three of their competitions are run by the same association, so the association can only put them in one bucket. That is the case that made this a club-owned thing rather than a synced one. A competition in BetterCricket is a named group of your own grades. We seed it from the association because that is the part we know for certain, and where you run several competitions under one association you split it yourself on Manage Grades: rename the group, add the others, drag each grade into the right one.
Once a club has done that, we leave it alone. Later syncs will not rename a competition you have named or move a grade you have placed.
Two things, because they answer different questions.
There is a Competition filter, sitting alongside the Grade Type and Match Type filters already on the dashboard, Leaderboard, Records, Players, Games and every player profile. Pick one and batting, bowling, fielding and matches all narrow together.
Then there is a breakdown, because a filter tells you how you went in one competition and not how they compare. A club page lists your record in each competition side by side with the grades under each, and every player profile has a Competitions tab that puts their batting, bowling and fielding in each one next to each other.
A club that plays one competition never sees any of it. The filter row does not render, because a control that can only ever answer "everything" is worse than no control at all.
A competition figure has to come from scorecards, because the scorecard is where the grade is recorded. Clubs that brought decades of history in from a spreadsheet often have season totals with no grade behind them, and those matches genuinely cannot be filed under a competition.
We report them separately, with a count, rather than putting them in a competition they might not belong to. It means a per-competition breakdown will sometimes not add up to a career total, and the page says why underneath instead of leaving you to work it out.
New matches pick up the association on every sync, so this looks after itself going forward. Older seasons need one pass from us to fill it in, and that is a message to support rather than a job for anyone at the club.
Why your stats page is your best recruitment tool · What to look for in a historical stats import · Pricing · Start your free trial
BetterCricket groups your grades into the competitions they were played in, automatically where we can and by hand where only the club knows. Search for your club at betterat.cricket/trial to get started. Learn more
Yes. BetterCricket has a Competition filter on the dashboard, Leaderboard, Records, Players, Games and every player profile, plus a breakdown that lists a club's record in each competition and a player's batting, bowling and fielding across all of them side by side.
That is the case this was built for. Each competition a side plays in is a different grade, so each reads separately once the grades are grouped. A player who turned out in a cup and a midweek competition in one summer gets a row for each.
No. The fixture feed carries seasons, grades, matches and scorecards, but never names the competition. It does name the association that runs each grade, so BetterCricket groups on that automatically and lets a club split it further where one association runs several competitions.
No. Grouping only changes how figures can be filtered and compared. Creating, renaming or deleting a competition never touches a game, a run or a wicket, and unfiltered totals stay exactly as they were.
It is reported separately with a count rather than being filed under a competition it might not belong to. Those matches still count in every unfiltered figure on the site.