Growing Discord community — direct access to the developer, live coverage & picks. Join now →

The Best Free Football API

61826+ matches with 15 years of history. Multi-bookmaker odds, manager intelligence, per-shot xG, ML predictions, live scores — all free with no rate limits.

Multi-Bookmaker Odds

15+ bookmakers across 32 leagues. 1X2, Over/Under, BTTS, Double Chance, Handicap, Correct Score, Player Props. Best-odds comparison. Coverage map

Manager Intelligence

787+ coaches with tactical profiles, preferred formations, win rates, avg goals, xG, discipline stats. Embedded in every match response. Stats

ML Predictions

CatBoost v5.0 ensemble (XGBoost + LightGBM + CatBoost) for 8 markets. 163 features including spatial data and Elo ratings. Retrained weekly.

Pre-Match Data

Unavailable players (injuries, suspensions, doubtful) per match. Official lineups fetched 1h before kick-off. Head coaches for both teams.

47957+ Players

Full profiles: position, nationality, market value, height, preferred foot, contract, transfers with fees. 30+ per-match stats including xG, xA, heatmaps.

Live Scores + Spatial

Real-time scores (30s cache). Shot maps with per-shot xG, momentum graphs, average positions, goal build-up sequences with passing chains.

15 Years of History

61826+ matches since 2004. Premier League, La Liga, Serie A, Bundesliga, Ligue 1, Championship, Liga Portugal, Eredivisie. All via the same endpoints.

3,500+ with xG Shotmaps

Professional-grade spatial data: per-shot xG, shot coordinates, lineups with formations, goal/card/substitution incidents. Free.

How BSD Compares to Other Football APIs

Feature BSD (Free) football-data.org API-Football SportMonks
Price Free Free (limited) $0-$200+/mo $20-$100+/mo
Rate Limits None 10 req/min 100 req/day (free) Tier-based
Multi-Bookmaker Odds 15+ bookmakers No Yes (paid) Yes (paid)
Manager/Coach Profiles 787+ with stats Name only Name only Basic
ML Predictions CatBoost ensemble No No No
Injuries / Suspensions Per match No Yes (paid) Yes (paid)
Pre-Match Lineups 1h before kick-off No Yes Yes (paid)
Shot Maps / xG per shot Yes No No No
Player Stats (per match) 30+ fields + heatmap No Yes (paid) Yes (paid)
Live Scores 30s refresh Yes Yes Yes
Leagues 48+ 12 (free) 800+ 1500+
Historical Data 15 years (46k+ matches) 4 years 10+ years (paid) 10+ years (paid)
Referee Stats Cards/match, fouls No No Basic
Transfer History Full with fees No Yes (paid) Yes (paid)
OpenAPI / Swagger Yes No Yes Yes
Comparison accurate as of April 2026. Based on publicly available documentation and free tier features. SportMonks and API-Football offer more leagues but most advanced features require paid plans.

Quick Start

Get match odds with coach profiles in 3 lines:

import requests

headers = {"Authorization": "Token YOUR_API_KEY"}
events = requests.get("https://sports.bzzoiro.com/api/events/", headers=headers).json()

for e in events["results"]:
    coach = e.get("home_coach", {}) or {}
    print(f"{e['home_team']} ({coach.get('profile','?')}) vs {e['away_team']}")
    print(f"  Odds: H={e.get('odds_home')} D={e.get('odds_draw')} A={e.get('odds_away')}")
    if e.get("unavailable_players"):
        injured = e["unavailable_players"]["home"]
        print(f"  Unavailable: {', '.join(p['name'] for p in injured)}")

FAQ

Bzzoiro Sports Data (BSD) provides the most feature-rich free football API. It includes multi-bookmaker odds (15+ providers), manager tactical profiles, ML predictions, live scores, pre-match lineups, injuries/suspensions, player stats with xG, and shot maps — features that other APIs charge $100+/month for.

Yes. BSD provides odds from 15+ bookmakers across 32 leagues, completely free. You can compare odds per match with /api/odds/compare/, find best odds with /api/odds/best/, and get odds embedded in every event response. No other free API offers this.

Yes. BSD provides similar data to API-Football and SportMonks paid tiers — including multi-bookmaker odds, player stats, live scores, lineups, and transfers — completely free with no rate limits. BSD also adds ML predictions, manager intelligence, and shot maps that neither API-Football nor SportMonks provide at any price.

Yes. Every match in the /api/events/ endpoint includes an unavailable_players field listing all injured, suspended, and doubtful players grouped by team. Official lineups are automatically fetched about 1 hour before kick-off and included in the match response.

100% free · No rate limits · No credit card