DEV Community

Cover image for A Survey of Public APIs for Building a Football Live Score Site in 2026 — Part 3: Football Data API Review
Leo Marsh
Leo Marsh

Posted on AI-assisted

A Survey of Public APIs for Building a Football Live Score Site in 2026 — Part 3: Football Data API Review

A 2026 review of football data APIs for live scores, fixtures, standings, events, history, and odds.

News and weather can improve a match page, but neither can rescue a late score, an incorrect kickoff time, or a fixture that disappears after being postponed. The football data API is the central dependency of the entire product.

This is Part 3 of a survey of the public APIs needed to build a football live score site in 2026:

  1. News APIs
  2. Weather APIs for match-day context
  3. Football data APIs

Series scope and ground rules

The following rules apply to every article in this series:

  1. Candidate source: Every API considered comes from the public-apis repository on GitHub. The repository was selected because it has more than 400,000 GitHub stars and offers a broad, well-organized set of categories and API options.
  2. Review order: APIs are considered in the same order in which they appear in the repository. The order is not a ranking, and providers have not paid for placement.
  3. Shortlisting: Every entry in the relevant category is screened, but only APIs that plausibly fit a football live score site receive a detailed review.
  4. No implied endorsement: Inclusion in public-apis supplies the candidate pool; it does not mean that the repository or this series recommends an API.
  5. Type of review: This is a product-fit and documentation review, not a latency, uptime, completeness, or data-accuracy benchmark. Provider claims are identified as documented capabilities rather than independent measurements.
  6. Snapshot date: Documentation, pricing, and public usage terms were checked on September 12, 2026. They may change, so the linked official pages remain the final source of truth.
  7. Meaning of football: In this series, “football” means association football, also called soccer, unless stated otherwise.

For Part 3, all 48 entries in the repository's Sports & Fitness section were screened. Eight services made the detailed shortlist because they can plausibly supply the fixtures, scores, standings, or match details required by a football site.

What the core football feed actually needs

A homepage can be built from one “matches today” response, but a reliable match centre needs a more complete contract:

  • Stable competition, season, team, venue, and fixture identifiers
  • Kickoff timestamps in UTC, plus a clear postponement and rescheduling model
  • Explicit match states for scheduled, live, half-time, finished, extra time, penalties, postponed, cancelled, and abandoned fixtures
  • Home and away scores with half-time, full-time, extra-time, and penalty-shootout breakdowns
  • A live event timeline for goals, cards, substitutions, VAR, and penalties
  • Lineups, formations, benches, referees, and team or player statistics where the product needs them
  • Tables with points deductions, split groups, play-offs, and competition-specific rules
  • Coverage metadata that states which fields exist for each league and season
  • Sufficient history for team pages, head-to-head views, and corrections
  • Predictable quotas, caching rights, attribution rules, and commercial-use terms

The response shape matters, but corrections matter more. A provider must be able to change a score, event minute, lineup, or fixture status without breaking the application's identifiers.

Shortlist at a glance

API Free starting point Live scores on free access Lowest listed paid step Initial fit for a football site
5DollarFootballAPI Free: 60 requests/hour and top five leagues; Community: 300/hour and one additional country pack Yes $5/month Two $0 routes, followed by low-cost global coverage and unusually deep odds data
API-FOOTBALL 100 requests/day; all endpoints, recent-season limits Yes $19/month Broadest low-cost all-in-one feature set in this shortlist
football-data.org 12 competitions; 10 calls/minute No; free scores are delayed €12/month Clean fixture, score, and table API for selected competitions
OpenFootAPI 5,000 requests/month; 120-competition catalogue Scores, but advanced live events require paid access $14/month Open-data-oriented feed with lineups and xG on higher access
OpenLigaDB No key; community-maintained open database Depends on community updates No paid tier Excellent hobby and German-league starting point
SportScore About 10,000 requests/day/IP with attribution Yes No paid tier required Generous multi-sport feed if its link requirement is acceptable
Sportmonks Football Free-forever access to two leagues Yes €29/month Deep professional data with league-based pricing
TheSportsDB Shared free key; 30 requests/minute Premium only $9/month Accessible multi-sport metadata, artwork, schedules, and basic scores

These allowances are not directly comparable. A request that returns every live fixture is more valuable than a request that returns one league or one match. “Live score” can also mean anything from a near-real-time event stream to a score updated every two minutes.

1. 5DollarFootballAPI

5DollarFootballAPI provides fixtures, live scores, results, standings, match events, team statistics, and pre-match and in-play odds. Its strongest differentiator is not a larger player database; it is the combination of a low entry price with historical bookmaker movement, including corner and card lines.

The free plan covers the Premier League, La Liga, Serie A, Bundesliga, and Ligue 1 at 60 requests per hour. It includes live scores, fixtures, standings, three months of results, and Bet365 odds, but fixture-list requests cannot expand a whole day's odds in one response.

Separately, Community Access provides a second $0 option for students, researchers, early-career developers, and people building without a budget. It raises the allowance to 300 requests per hour, with a 20-request-per-minute burst limit, and covers the same five leagues plus one country pack of the user's choice. It also extends results and Bet365 odds to 12 months. Access runs for 12 months at a time and can be renewed; it does not add batch odds or full tick history.

The $5 Pro plan moves to 10 requests per minute, more than 130 competitions, batch odds, and 12 months of history. The $25 Ultra plan adds all listed competitions, 19 bookmakers, and full odds tick history and results back to 2014. Public-facing products using either $0 plan must provide attribution; attribution is optional on paid plans.

The limitations are important. This is not the right choice for a product whose central features are player profiles, squads, transfers, injuries, confirmed lineups, or detailed player statistics.

Best fit: A budget-conscious live score or odds product that needs broad competition coverage and deep Asian, goal, corner, and card markets.

Main limitation: The player and lineup layer is much thinner than API-FOOTBALL or Sportmonks.

2. API-FOOTBALL

API-FOOTBALL has the broadest conventional football feature set in this group. The documented endpoints cover fixtures, livescores, events, lineups, team and player statistics, standings, injuries, transfers, coaches, predictions, and pre-match and in-play odds.

Its current coverage page lists 1,244 leagues and cups, with field-level coverage varying by competition and season. That coverage object is useful: an integration can check whether a league has events, lineups, statistics, predictions, or odds before presenting an empty module.

The free plan provides 100 requests per day and ten requests per minute. All endpoints and competitions are available, although the free plan limits historical seasons. Pro costs $19 per month for 7,500 requests per day, Ultra costs $29 for 75,000, and Mega costs $39 for 150,000.

One hundred daily calls are enough to study the schema but not to run a live-score service. Polling a centralized live endpoint every 30 seconds for four hours already consumes 480 requests. The application therefore needs a paid quota before it needs a large audience.

Best fit: A site that wants fixtures, live incidents, players, injuries, lineups, statistics, odds, and predictions from one established interface.

Main limitation: The free quota is an evaluation tier, and the large response surface requires careful coverage checks and caching.

3. football-data.org

football-data.org is narrower and easier to understand. Its main resources are competitions, matches, teams, standings, scorers, and people. For a conventional European fixtures-and-tables site, that smaller model can be an advantage.

The free plan covers 12 competitions at ten calls per minute, but scores and schedules are delayed. The €12 “Free w/ Livescores” plan removes that problem for the same 12 competitions and raises the limit to 20 calls per minute.

Deeper match data is packaged separately. The €29 Deep Data option adds lineups, substitutions, goal scorers, bookings, and squads. Standard starts at €49 for 30 competitions, while odds and detailed match statistics are separate €15 add-ons that require a regular plan.

This structure is more transparent than a generic “everything included” promise, but it means the cheapest live plan is not a complete match-centre plan.

Best fit: A focused application covering a small set of prominent competitions with a clean resource model.

Main limitation: The free tier is delayed, and events, squads, odds, and statistics can raise the effective production price.

4. OpenFootAPI

OpenFootAPI combines fixtures, results, standings, team search, lineups, live events, commentary, xG shot maps, derived match context, an SSE stream, and webhooks. Its responses also expose source and licence metadata, which is useful when the service combines several open-data sources.

The free Starter plan provides 5,000 authenticated requests per month, 60 requests per minute, and fixtures, scores, standings, and search across a 120-competition catalogue. The $14 Developer plan raises the allowance to 250,000 monthly requests and adds live events, lineups, xG, SSE, webhooks, and derived analytics. The $39 Pro plan provides two million monthly requests and explicitly includes commercial use.

Coverage is not uniform. The provider marks some advanced features as limited to major leagues or available on a best-effort basis. It also documents upstream-source migrations that can change historical identifiers. Consumers should therefore store the provider's coverage and provenance fields instead of assuming every match supports the same UI.

Best fit: A developer who values open-data provenance, a modern API shape, and optional lineups, xG, streaming, or webhook delivery.

Main limitation: Advanced field coverage varies by upstream source, and commercial rights are stated most clearly on the higher Pro plan.

5. OpenLigaDB

OpenLigaDB is a free community database. Reading through its JSON API requires no authentication, and its OpenAPI interface exposes leagues, fixtures, results, goals, teams, groups, next and previous matches, and tables.

The project is strongest around German football. Its current database includes Bundesliga, 2. Bundesliga, 3. Liga, the DFB-Pokal, European competitions, German national teams, and a selection of other leagues maintained by users.

The data is available under the Open Database License, but club names, marks, logos, and linked images can have separate rights. Because results are entered and maintained by the community, the quality and update speed of one league should not be assumed for another.

Best fit: Hobby projects, teaching, prediction games, Bundesliga widgets, and applications that prefer an open database over a commercial feed.

Main limitation: Community maintenance and uneven league coverage make it risky as the only source for a global production live-score site.

6. SportScore

SportScore offers eight CORS-enabled REST endpoints for live scores, fixtures, match details, standings, brackets, top scorers, and player statistics across football, basketball, cricket, and tennis. No API key is required for its open-source and attribution access.

The documented allowance is approximately 10,000 requests per 24 hours per IP. That is unusually generous for a free live-score feed and is sufficient for a centrally cached prototype.

The commercial trade-off is unusually explicit: pages using the data must display a visible “Powered by SportScore” link, and the provider specifically requires that link to be dofollow. Some publishers and organizations do not permit contractual requirements about search-engine link attributes, so this condition needs legal and SEO review before integration.

Best fit: A free multi-sport project whose publishing policy accepts the required attribution link.

Main limitation: The dofollow-link requirement will be unacceptable or impossible on some platforms.

7. Sportmonks Football

Sportmonks Football is the deepest professional product in this shortlist. It documents more than 2,200 leagues and covers fixtures, live events, lineups, team and player statistics, standings, squads, coaches, referees, transfers, predictions, odds, xG, pressure metrics, and additional match facts.

The free-forever tier currently covers the Danish Superliga and Scottish Premiership. The Starter plan costs €29 per month for five selected leagues and 2,000 calls per entity per hour. Growth costs €99 for 30 leagues, and Pro costs €249 for 120. Annual billing reduces the displayed monthly equivalents.

Core football data is included, but advanced products such as odds and predictions, xG and pressure, news, and deeper historical data have separate pricing. The API's include system can return a deeply nested match in one call, reducing the need to stitch many resources together.

Best fit: A professional match centre, fantasy product, or analytics service that values deep player and match data and can price coverage by league.

Main limitation: Costs scale with selected leagues, while advanced analytics and odds can add to the advertised starting price.

8. TheSportsDB

TheSportsDB is a crowd-sourced multi-sport database with teams, players, venues, events, schedules, tables, artwork, and video metadata. The public V1 interface is deliberately easy to explore in a browser by using the shared key 123.

Free users receive 30 requests per minute, but some heavily used endpoints are restricted. Premium costs $9 per month, raises the limit to 100 requests per minute, unlocks the newer V2 API, and includes livescores and video highlights. The advertised livescore refresh is approximately two minutes.

This makes TheSportsDB more attractive for team pages, badges, venue information, schedules, and cross-sport discovery than for a second-by-second football match centre. Its community model also means that completeness varies by sport and competition.

Best fit: An affordable multi-sport site that needs rich descriptive metadata and artwork alongside schedules and scores.

Main limitation: The live-score feature is paid and slower than feeds designed around rapid in-play updates.

Why the other 40 entries were not detailed

The rest of the Sports & Fitness list contains useful services, but most answer a different product question.

  • Different sports: balldontlie, CFL, CollegeFootballData, Ergast F1, MLB, NBA, NHL, OpenF1, RacingHub, Squiggle, Strava, TourneyRadar, Tredict, Wger, and others are not association-football feeds.
  • Betting and odds specialists: Bet Better, Cloudbet, Lumify, Odds-API, Oddsmagnet, PropLine, and TheRundown may complement a score feed, but odds alone cannot establish the authoritative fixture and result model.
  • Narrow football additions: ScoreBat supplies video embeds; Football Charts supplies tables and model projections; Football Standings is an ESPN-derived standings wrapper; PlayerElo supplies player ratings; Premier League Standings covers one competition. Each can enrich a site but cannot power the entire core.
  • Directories, places, and recognition: Sport List & Data, Sport Places, Sport Vision, City Bikes, Fitbit, DiscGolf, and similar entries solve unrelated discovery or fitness problems.
  • Legacy or unclear starting points: The RapidAPI entry named Football still uses the old X-Mashape-Key label in the directory. Sport Data and SuredBits do not currently present a sufficiently clear, modern self-service path for a fair production comparison.

Exclusion here is not a negative product rating. It only means the API cannot independently supply the minimum football match model used in this survey.

Live-score quota math

The useful question is not “How many requests are free?” It is “How many upstream requests does one live matchday require?”

Suppose the backend polls one endpoint every 30 seconds during a four-hour window:

4 hours × 60 minutes × 2 requests per minute = 480 requests
Enter fullscreen mode Exit fullscreen mode

That single centralized job already exceeds API-FOOTBALL's 100-request free daily quota and consumes nearly 10% of OpenFootAPI's free monthly allowance in one afternoon. If the application polls once per league or once per visitor, the architecture fails before the product becomes popular.

A production design should:

  1. Poll upstream providers only from the backend.
  2. Prefer a single all-live or date-level endpoint over one request per match.
  3. Cache slow-changing teams, competitions, venues, and standings separately.
  4. Increase polling only while matches are in play.
  5. Push changes to browsers through SSE, WebSockets, or short polling against the application's own cache.
  6. Keep the last known value and its update time, but never label stale data as live.
  7. Reserve quota for corrections after full time.

Batching and cache design can be more important than the headline rate limit.

Normalize the match before building the interface

Every provider names scores and statuses differently. The website should depend on an internal match object:

{
  "id": "provider:fixture-id",
  "competition_id": "provider:competition-id",
  "season": "2026/27",
  "kickoff_at_utc": "2026-09-12T14:00:00Z",
  "status": "in_play",
  "status_detail": "second_half",
  "minute": 67,
  "home": { "id": "provider:home-id", "name": "Home FC", "score": 2 },
  "away": { "id": "provider:away-id", "name": "Away FC", "score": 1 },
  "score": {
    "half_time": [1, 1],
    "full_time": null,
    "extra_time": null,
    "penalties": null
  },
  "updated_at_utc": "2026-09-12T15:26:10Z",
  "provider": "example"
}
Enter fullscreen mode Exit fullscreen mode

The adapter should preserve the raw provider status and identifiers alongside the normalized values. Otherwise, debugging an unusual abandoned match or penalty shootout becomes guesswork.

A practical decision guide

There is no credible universal winner without measuring the same live matches and corrections across providers.

Based on documented product fit:

  • API-FOOTBALL is the broadest low-cost all-in-one option, especially when players, injuries, transfers, and lineups matter.
  • football-data.org is the cleanest focused option for a small number of prominent competitions.
  • Sportmonks has the deepest professional data model, with pricing that makes the most sense when each selected league earns its place.
  • OpenLigaDB is the most attractive open community source for German football and educational projects.
  • OpenFootAPI is interesting when provenance, xG, live streaming, and webhooks matter, provided competition-level coverage is checked carefully.
  • SportScore offers exceptional free volume if the required dofollow attribution fits the publisher's policy.
  • TheSportsDB is strongest as a multi-sport metadata and artwork layer rather than the fastest football feed.
  • 5DollarFootballAPI stands out for low-cost football coverage and odds depth: its $5 plan covers more than 130 competitions with live scores, fixtures, standings, and batch odds, while higher tiers add 19 bookmakers and full historical odds movements across match, corner, and card markets. It is best suited to live-score and odds-led products rather than player-profile or lineup-heavy applications.

The defensible next step is a parallel benchmark using the same competitions and fixtures.

That benchmark should record:

  • Time from an on-pitch event to the first API response containing it
  • Missing and later-corrected fixtures
  • Score, status, and event corrections after full time
  • Lineup availability before kickoff
  • Coverage differences by league and season
  • Requests required to render the same match centre
  • Effective monthly cost at the intended polling schedule

Documentation can identify which providers are credible enough to benchmark. Only live observation can determine which one is reliable enough for a specific product.

AI disclosure: AI was used to assist with research organization and English editing. The linked official sources were checked before publication.

Top comments (1)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.