Zafronix WC API

2026-05-04 · launch

Why we built a World Cup API

Two facts shape the public-data landscape for the FIFA World Cup right now:

The middle tier — "I just want JSON, $9/mo is fine" — is mostly empty. Ball Don't Lie's FIFA API exists and is good for recent tournaments. We're going wider on history (every WC since 1930 with player-level squads) and narrower on live data (5-min lag, not real-time).

The actual wedge

Player-level historical depth. We've spent ~40 hours curating 23 tournaments with full squads, DOB, position, and club affiliations cross-checked against FIFA archives, RSSSF, and English Wikipedia. That dataset is genuinely rare in queryable form.

If you want to ask "how many WC defenders were born in October during the 1980s, north hemisphere only," you can't do that with any public API today. You can with ours, and the answer comes back in <200ms.

Honest about the business

This is a side project. Realistic peak revenue: $200–1,500/mo at WC 2026 peak, dropping 70–90% post-tournament. We're building it because:

  1. The dataset our other product (siono.app) needed already existed.
  2. siono.app benefits from migrating off direct file reads to a real API — load test before public launch.
  3. Brand asset for the studio.
  4. If it works, we extend to Euro 2028, Copa, Women's WC.

If MRR is <$300 by August 2026, we freeze it as a free archive and write a "what we learned" post. Either outcome is a win.

What you can do with it today

23 tournaments × ~2,500 player-rows × structured trivia. Use cases that fit:

Use cases that don't fit:

Tech

Hono on Node, Zod for runtime validation, SQLite for keys + usage (Phase 2), Stripe for billing (Phase 2). Source is on GitHub. We deliberately picked boring tools — this needs to run for 6 months without us thinking about it.

What's next

Phase 1 (now): historical-only API, free tier, manual key issuance.

Phase 1.5: siono.app migrates to consume the API as the first real customer (dogfooding).

Phase 2 (late May 2026): Stripe billing live, self-service signup, live tournament data ingestion.

Phase 3 (post-tournament): assess MRR, decide whether to extend or freeze.

Get a free key at /signup. Read the docs. Or kick the tires anonymously: curl https://api.zafronix.com/fifa/worldcup/v1/tournaments.