4,600 markets open now

Sports market data, tick by tick.

Exchange ladders, bookmaker lines and fancy markets — normalised into one catalog, watched by a live trading desk, and published as one stream of markets, state and results.

Market state · last hour
19:11:45 UTC
  1. 19:11:16Cricket · India Legends v Bangladesh Champions / Bookmaker 1.0%opensuspended
  2. 19:11:16Cricket · India Legends v Bangladesh Champions / Bookmaker 0%opensuspended
  3. 19:10:57Soccer · Lillestrom v Molde / Over/Under 6.5 Goalsopensuspended
  4. 19:10:57Soccer · Lillestrom v Molde / Over/Under 4.5 Goalsopensuspended
  5. 19:10:57Soccer · Lillestrom v Molde / Over/Under 7.5 Goalsopensuspended
  6. 19:10:57Soccer · Lillestrom v Molde / Draw no Betopensuspended
  7. 19:10:57Soccer · Lillestrom v Molde / Match Oddsopensuspended
  8. 19:10:57Soccer · Lillestrom v Molde / Over/Under 8.5 Goalsopensuspended
  9. 19:10:57Soccer · Lillestrom v Molde / Over/Under 5.5 Goalsopensuspended
  10. 19:10:55Soccer · Coquimbo Unido v Colo Colo / Over/Under 4.5 Goalssuspendedclosed
  11. 19:10:55Horse Racing · Keeneland (US) 11th Oct / R5 1m Allwopensuspended
  12. 19:10:44Soccer · Hapoel Ramat Gan v Beitar Jerusalem / Over/Under 4.5 Goalsopensuspended
  13. 19:10:44Soccer · Hapoel Ramat Gan v Beitar Jerusalem / Over/Under 7.5 Goalsopensuspended
  14. 19:10:44Soccer · Hapoel Ramat Gan v Beitar Jerusalem / Both teams to Score?opensuspended
Open markets
4,600
open or suspended
In-play markets
986
trading live
Live events
51
in play now
Next 24 hours
347
events starting
Sports
5
92 competitions
State changes
2,681
in the last hour

What's in the feed

Four kinds of market, one shape.

Whatever the source, every market lands in the same tree — sport, competition, event, market, runner — with one canonical state. Counts are live.

Exchange ladders

4,013open

Betfair exchange markets on the live stream: back and lay depth, last traded price and traded volume for every runner, pre-match and in-play.

  • Match odds
  • Racing win
  • In-play

Bookmaker lines

14open

Fixed-odds bookmaker markets from the ICE feed, rated per 100, with per-runner suspension and ball-running freezes as they happen.

  • Per-100 rates
  • Runner status

Fancy & session lines

573open

Session, over and player run lines as Yes / No ladders — Khado bands, odd / even and last-digit markets included.

  • Sessions
  • Khado
  • Last digit

Desk-made markets

0open

Markets our traders author and price themselves where no feed has them: ball-by-ball overs, specials and manual books.

  • Ball-by-ball
  • Specials

How it moves

From raw feed to clean stream.

Feeds disagree, stall and arrive out of order. Tickline sits in between so what comes out the other side is consistent.

  1. 01

    Ingest

    The Betfair exchange stream and REST catalogue, and ICE Exchange's bookmaker and fancy feeds, polled and streamed continuously.

  2. 02

    Normalise

    One catalog tree with a single state per market. Writers are serialised by source revision, so a late update never overwrites a newer one.

  3. 03

    Trade

    A human desk holds prices, freezes runners, authors missing markets and declares results — every action code-confirmed and audited.

  4. 04

    Publish

    Each change is written with its event in the same transaction, then fanned out live over WebSocket. Nothing is published out of band.

Coverage, live

What's trading right now.

Every sport with an open market, and which feeds are carrying it. Refreshed every ten minutes.

SportLiveOpen markets
Soccer353,076
Tennis5628
Cricket10607
Greyhound Racing0155
Horse Racing1134

Market lifecycle

One state machine. No surprises.

Every market moves through the same states, enforced in one place. A closed market never reopens, and every transition is recorded with when and why.

  1. 1unpublishedbuilt, not yet visible
  2. 2opentrading
  3. 3suspendedpaused — reopens to open
  4. 4closedresult recorded
  5. 5settledfinal

Off the main path

voidedwith a stated reasonreviewheld for a human

Results carry the winners — dead heats included — any removed runners with their adjustment factors, and a void reason when there is one. A result is corrected by rollback, never by overwriting it.

Example · state change event
{
  "event_type": "market.suspended",
  "payload": {
    "market_id": 1452208,
    "market_type": "fancy",
    "event_id": 34871102,
    "category_id": 4,
    "status": "suspended",
    "result": null,
    "void_reason": null,
    "result_revision": 0,
    "settle_time": null,
    "occurred_at": "2026-10-10T14:02:31.418Z"
  }
}

The shape every transition is written in. Values are illustrative.

Client access

The feed is opening to a first set of trading teams.

Tell us the sports, markets and delivery you need, and we will come back with what we can carry for you today.

Request access hello@tickline.xyz