What horse racing data coverage means in practice
Before you build a model or a product, you need to know what the data actually holds. How many races? Which jurisdictions? Since when?
This piece answers those questions for HorseRaceDatabase (HRDB). It covers the United Kingdom, Ireland and Hong Kong.
No tips. No predictions. Just what is in the database.
The size of the dataset
The verified totals are:
- 2.2M result records
- 226K races
- 173K horses
- 85+ racecourses
A result record is one runner in one race. A race has many runners, so the record count is far larger than the race count.
The horse count matters for a different reason. Every horse has a stable identifier. That lets you follow one animal across seasons, courses and trainers without matching on names.
How far back the history goes
Depth differs by jurisdiction. It is better to know this early than to discover it halfway through a backtest.
- Hong Kong: history from 1979.
- UK and Ireland: history from 2011.
Hong Kong gives you decades of racing in a single, closed environment. The UK and Ireland give you a broad, modern sample across many courses and race types.
If your model needs long runs of seasons under one racing authority, the Hong Kong archive is the relevant one. If it needs variety of courses, going and race type, the UK and Ireland archive is.
Sectional times
Sectional times are less common than results. Few providers offer them.
HRDB holds them from:
- Hong Kong: 2008
- UK: 2017
This means the sectional window is shorter than the results window. Plan for that. A feature built on sectionals will have fewer seasons behind it than one built on finishing positions alone.
What a racing day looks like in the data
Take one recent day as an example. It was a typical mid-week card.
In the UK and Ireland, the day had:
- 47 races
- 536 runners
- Six courses: Chepstow, Dundalk, Kempton, Musselburgh, Nottingham and Wexford
- Four race types: Chase, Hurdle, Flat Turf and Flat AW
The feature race was the British Stallion Studs EBF Restricted Maiden Stakes at Musselburgh, 12:35. It was run over 7f 15y on good to soft, good in places, with eight runners and prize money of £16,200.
In Hong Kong, the same day had:
- 9 races
- 108 runners
- One course: Happy Valley
The Hong Kong feature was over 1650 metres on the Turf A Course, with 12 runners and prize money of 2,050,000.
That was 56 races and 644 runners in one day, across two schemas. Each of those becomes rows with stable identifiers for the race, the horse, the jockey and the trainer.
How the data is organised
UK and Hong Kong data live in separate, isolated schemas. They are not blended into one table with a flag column. Each has its own structure, which reflects how each jurisdiction publishes its racing.
The public API documentation lists:
- 26 UK data endpoints
- 30 Hong Kong data endpoints
They cover races, racecards, records (results), horses, jockeys, trainers and courses. Hong Kong also has veterinary records.
Ireland sits alongside the UK in the coverage, as the example card above shows with Dundalk and Wexford.
How often it updates
Racecards and results are updated daily.
This is worth stating plainly. The data is updated daily, after racing. It is not a live or real-time feed, and there are no webhooks. If your product needs in-race prices or live ticks, this is not that source.
If your work is historical analysis, model training, daily dashboards or a nightly ingestion pipeline, a daily cadence fits well.
What is not covered
Coverage is currently the United Kingdom, Ireland and Hong Kong. Other regions are not available. The USA, Canada and further markets are only on the roadmap.
We would rather say so than let you find out after integration.
Three questions to ask any racing data provider
Use these on us, and on anyone else.
- How deep is the history, by jurisdiction? A single headline year can hide big differences between countries.
- How deep are the sectionals? Often shorter than results, as above.
- Are identifiers stable? Without them, joins across seasons become name matching, and names are not unique.
That third point is a story of its own. Every nightly update passes automated integrity gates before it is published. They are a topic for another article.
Formats
The same coverage reaches you in different ways:
- Historical datasets in CSV, SQL and JSON
- A REST API with stable identifiers and per-plan usage limits
- Bespoke exports and enterprise support
Choose the dataset when you want a bulk load for training. Choose the API when you want daily updates flowing into a pipeline.
Summary
HRDB holds 2.2M result records across 226K races, 173K horses and 85+ racecourses. Hong Kong runs from 1979, the UK and Ireland from 2011. Sectionals start in 2008 for Hong Kong and 2017 for the UK. Updates arrive daily, after racing.
Know the boundaries first. Then build.
Next step: Explore the datasets

Comments are closed