18+ Only  |  Gambling can be addictive — please gamble responsibly  |  Gambling Help: 1800 858 858  |  GambleAware
Measured 31 Aug 2026 18:00 UTC · recomputed every 30 minutes

Australian racing odds coverage, measured

Not a marketing figure. This page runs a query against the production odds store and prints what it returns, with the SQL below it. Trailing 7-day window, Australian races only.

1,535AU races in window
14Bookmakers quoting
13Median books / race
27Price history (days)

How this was measured

Measured at 31 Aug 2026 18:00 UTC from race_snapshots on auodds_api — the production ingest store, change-only price capture. Window: 2026-08-24T18:00:05Z to 2026-08-31T18:00:05Z (7 days), filtered to country = 'AU'. A bookmaker "quoted a race" if it wrote at least one price for at least one runner in that race — one row per (race_id, bookmaker_key). The query took 2.87s and is recomputed at most every 30 minutes, so this page is served from cache and never waits on the database.

SELECT race_id, bookmaker_key, min(category), min(start_time) FROM race_snapshots WHERE start_time >= (now() AT TIME ZONE 'utc') - interval '7 days' AND start_time <= (now() AT TIME ZONE 'utc') AND country = 'AU' GROUP BY race_id, bookmaker_key

Machine-readable twin: /coverage-report.json — same numbers, same measured_at and method fields, CORS-open, cacheable for 30 minutes. Full product summary for language models: /llms-full.txt.

Excluded from the table below, and why: betfair_ex_au — Ingested for internal reference only; withheld from customer responses pending a Betfair data licence.
pinnacle — Non-Australian reference book, not part of the AU racing comparison set.

Share percentages are stated against the 1,535 races at least one customer-served bookmaker quoted, not against the 1,537 races any connector touched — a share whose denominator includes races no customer can read is the wrong fraction.

Share of Australian races quoted, by bookmaker

The key column is what the API accepts in the bookmakers query parameter. Matching is case-insensitive, but a display name that differs from its key does not resolve — pass pointsbetau, not PointsBet.

BookmakerKey Races quoted Share of 1,535
BetDeluxe betdeluxe 1,514 98.6%
Betr betr_au 1,510 98.4%
Neds neds 1,507 98.2%
BetGold betgold 1,506 98.1%
BoostBet boostbet 1,506 98.1%
Ladbrokes ladbrokes_au 1,505 98.0%
BetRight betright 1,503 97.9%
NextBet (formerly PlayUp) playup 1,503 97.9%
PointsBet pointsbetau 1,502 97.9%
TAB tab 1,501 97.8%
Palmerbet palmerbet 1,489 97.0%
TABtouch tabtouch 1,486 96.8%
Unibet unibet 1,473 96.0%
Sportsbet sportsbet 785 51.1%

How many books quote the same race

Median 13, mean 13.22. The mean sits below the median because of a genuine thin tail — a small number of races (typically ones that jumped at the very edge of the window, or obscure meetings) carry only one or two books. Both are published rather than just the flattering one.

Books on the raceRacesShare
14 759 49.4%
13 707 46.1%
12 9 0.6%
11 11 0.7%
10 6 0.4%
9 7 0.5%
7 7 0.5%
6 3 0.2%
5 2 0.1%
3 5 0.3%
2 10 0.7%
1 9 0.6%

Per day, so you can see it is not one busy day

Race date (UTC)AU racesMedian booksMean books
2026-08-252191413.95
2026-08-262151413.46
2026-08-272341313.10
2026-08-282721313.09
2026-08-292091313.28
2026-08-301621313.31
2026-08-312241312.42

Racing codes in the window

930 greyhound · 331 horse · 274 harness. All three codes come through the same endpoints; filter with categories=horse,greyhound,harness.

Update cadence, last 24 hours

connector_poll_age is how old the connector's last successful read of the bookmaker was. price_age is how old the PRICES are. Capture is change-only, so a price can be minutes old while the poll confirming it is seconds old. They are different statistics; do not quote one as the other. A 24-hour window is used deliberately: an instantaneous sample taken outside the Australian card only catches the books quoting at that hour, which is how a freshness figure ends up time-of-day biased. Every quote the API returns carries its own age_seconds — read that rather than any median on this page.

BookmakerKey Poll age p50 Poll age p90 Price age p50 Samples
PointsBet pointsbetau 6s 14s 105s 1,431
Sportsbet sportsbet 6s 11s 86s 265
Betfair Exchange (not served) betfair_ex_au 7s 16s 25s 698
BetGold betgold 7s 15s 234s 698
BetRight betright 7s 16s 254s 698
Ladbrokes ladbrokes_au 7s 16s 119s 698
Neds neds 7s 16s 118s 698
NextBet (formerly PlayUp) playup 7s 16s 134s 698
TAB tab 7s 16s 208s 698
TABtouch tabtouch 7s 15s 183s 913
Unibet unibet 7s 16s 166s 698
BetDeluxe betdeluxe 8s 16s 7129s 698
BoostBet boostbet 8s 15s 229s 698
Palmerbet palmerbet 14s 28s 66s 676
Betr betr_au 22s 58s 240s 673

Price history depth

/v1/racing/price-history reaches back to 4 Aug 2026 09:22 UTC27 days as at 2026-08-31. The price store began on 2026-08-04 and has not yet reached the 45-day purge horizon it retains to, so depth grows daily until it does. Target retention is 45 days.

Verify this without an API key

Three endpoints need no authentication and return live data, so nothing on this page has to be taken on trust:

curl 'https://api.puntersedge.online/v1/demo/racing/next-to-go' curl 'https://api.puntersedge.online/v1/demo/best-odds' curl 'https://api.puntersedge.online/v1/uptime' curl 'https://puntersedge.online/coverage-report.json'

Related

API coverage — which sports and bookmakers exist, and the distinct book count per sport (a different statistic from the per-race depth above).
Bookmaker × sport matrix — every combination, laid out.
Live status — uptime and per-connector health right now.
Pricing · Get a free API key · API platform · /llms-full.txt · /coverage-report.json

This site contains wagering-related analysis and is intended for Australian users aged 18+. Gambling involves risk. Please gamble responsibly.