A 5-minute live-data lag, by design

Live sports data isn’t one product — it’s a ladder, and the rung you stand on is set by what you’re willing to spend. We chose to be specific about ours instead of fudging.

What “live” actually means

“Live data” is one of those phrases that means something different at every price point. For a sportsbook, it’s sub-second updates from match-officials feeds. For a TV broadcaster, it’s direct ingest from rights-cleared providers. For a fantasy game refreshing on the half-time whistle, it’s “new enough that the score on screen matches the score in the broadcast.”

Those are all live. They cost between $0 and $50,000 a month to source. The trick is matching the rung of the ladder to the use case — which is the conversation we wanted to make easy for the kinds of builders we serve.

Why we landed at five minutes

Football data is a ladder, not a dial. Each rung has its own audience and its own price tag.

  • Sub-second. Direct match-officials feeds from Sportradar, Genius, Opta. Used by sportsbooks and broadcasters. Five-figure monthly contracts and up.
  • ~30 seconds. Apps like Sofascore and FotMob, built on broadcast reverse-engineering plus their own scrapers. Excellent products, but no public API.
  • 5–10 minutes. The realistic ceiling for an indie API working from public sources. This is us.
  • Post-match. Authoritative archives like FIFA’s. Definitive but only available after the whistle.

We’re on the third rung during live matches, and we move to the fourth once they’re over. That’s a real position in the market: it’s a great fit for fantasy games, prediction trackers, recap widgets, and post-match analysis. It’s the wrong vendor for sportsbooks and broadcast graphics.

How we get to the third rung honestly

Three concurrent sources, cross-checked in real time:

  1. Wikipedia match-page polling. Wikipedia editors update World Cup matches within a minute or two during tournaments — surprisingly reliable in practice. We poll the relevant pages on a fast cycle.
  2. FIFA match-center polling as an independent cross-check, on the same cycle.
  3. A manual operator override — an admin UI where we can correct a score, goalscorer, or red card if our two automated sources disagree with what we’re seeing on the broadcast.

Typical end-to-end lag during a live match runs 2–5 minutes. We say “5 minutes” on the marketing page so customers plan around the worst case rather than the median.

Where it’s heading

The five-minute number is a starting line, not a ceiling. The next set of upgrades focus on closing the gap for the use cases where it matters:

  • Webhook delivery on score changes. When our pipeline detects a goal or red card, fire an event to your endpoint immediately. Closes the polling gap for any UI that just needs to redraw on change.
  • Server-sent events streaming match-state updates for clients that prefer push to poll.
  • Continuous source improvements during the tournament. We’ll write up what we learn between matches.

None of those make us a sub-second feed. They make us a meaningfully better five-minute one. For the customers we’re actually serving, that’s the upgrade that matters.