[
  {
    "slug": "fbref",
    "name": "FBref",
    "url": "https://fbref.com/en/",
    "type": "data-site",
    "description": "Long-running free football stats reference site from Sports Reference. Since January 2026 it shows only basic and historical data after its advanced (Opta) data feed was terminated.",
    "leagues": [
      "100+ competitions (basic/historical)"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": false,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free website; Stathead (paid) query tool",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [
      "fbref-alternatives-context"
    ],
    "notes": "Advanced Opta stats (xG, xA, PSxG, progressive actions) removed on 2026-01-20 per the official Sports Reference blog. The site itself blocked automated verification.",
    "verified_source": "https://www.sports-reference.com/blog/2026/01/fbref-stathead-data-update/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://fbref.com/en/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "website",
      "competitions": [],
      "data_types": [
        "match-results",
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://www.sports-reference.com/blog/2026/01/fbref-stathead-data-update/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": "Basic and historical stats only since 20 Jan 2026 (advanced Opta data, including xG, removed). fbref.com blocks automated checks, so we could not confirm per-competition coverage."
    }
  },
  {
    "slug": "understat",
    "name": "Understat",
    "url": "https://understat.com/",
    "type": "data-site",
    "description": "Free expected-goals (xG) site for teams and players in six European leagues, with a built-in export of tables as CSV, JSON or XLSX.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Russian Premier League"
    ],
    "liga_mx": false,
    "liga_mx_femenil": false,
    "womens": false,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": false,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "fbref-alternative"
    ],
    "notes": "Own xG model. Export options (csv/json/xlsx) shown on the homepage.",
    "verified_source": "https://understat.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://understat.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://understat.com/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Also covers the Russian Premier League. Tables export to CSV/JSON/XLSX."
    }
  },
  {
    "slug": "fotmob",
    "name": "FotMob",
    "url": "https://www.fotmob.com/",
    "type": "data-site",
    "description": "Live scores and stats app/website covering 500+ leagues, with Opta-style league stat leaderboards including expected goals for many competitions.",
    "leagues": [
      "500+ leagues",
      "Liga MX",
      "Liga MX Femenil",
      "NWSL",
      "WSL",
      "Liga F",
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1"
    ],
    "liga_mx": true,
    "liga_mx_femenil": true,
    "womens": true,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free to use",
    "free_tier": true,
    "license": null,
    "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
    "api": false,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "fbref-alternative",
      "liga-mx-xg",
      "womens-xg"
    ],
    "notes": "Verified 2026-10-18 via FotMob's own league data: xG leaderboards present for Liga MX (Apertura 2026), NWSL and WSL; NOT present for Liga MX Femenil or Liga F (goals/basic stats only).",
    "verified_source": "https://www.fotmob.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.fotmob.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "champions-league",
        "europa-league",
        "mls",
        "usl-championship",
        "liga-mx",
        "brasileirao",
        "argentina-primera",
        "a-league",
        "world-cup",
        "copa-america",
        "nwsl",
        "wsl",
        "liga-f",
        "frauen-bundesliga",
        "liga-mx-femenil",
        "womens-world-cup"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship",
            "eredivisie",
            "primeira-liga",
            "mls",
            "liga-mx",
            "nwsl",
            "wsl",
            "champions-league",
            "europa-league",
            "world-cup",
            "copa-america",
            "brasileirao",
            "argentina-primera",
            "a-league"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        },
        {
          "competitions": [
            "usl-championship",
            "liga-f",
            "frauen-bundesliga",
            "womens-world-cup"
          ],
          "types": [
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": "Stat leaderboards without xG for this competition.",
          "via": null
        },
        {
          "competitions": [
            "liga-mx-femenil"
          ],
          "types": [
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": "Basic leaderboards only, no xG (checked 2026-10-18).",
          "via": null
        }
      ],
      "evidence": [
        "https://www.fotmob.com/api/data/leagues?id=47 (and the same endpoint for each league id checked)",
        "https://www.fotmob.com/leagues/230/stats/liga-mx"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Checked FotMob's own league data for each competition: xG leaderboards present or absent as listed. Terms forbid automated scraping."
    }
  },
  {
    "slug": "sofascore",
    "name": "SofaScore",
    "url": "https://www.sofascore.com/",
    "type": "data-site",
    "description": "Live scores and match statistics website and app.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": null,
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "Site and public endpoints returned bot-protection/403 to automated verification on 2026-10-18; coverage, xG and pricing fields left blank.",
    "verified_source": "https://www.sofascore.com/",
    "verification_status": "partial",
    "last_verified": "2026-10-18",
    "url_final": "https://www.sofascore.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": null,
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://www.sofascore.com/"
      ],
      "checked": "2026-10-19",
      "status": "unverified",
      "note": "Site returned bot protection (403) on 2026-10-18 and 2026-10-19; coverage not verified."
    }
  },
  {
    "slug": "whoscored",
    "name": "WhoScored",
    "url": "https://www.whoscored.com/",
    "type": "data-site",
    "description": "Match and player statistics site with player ratings and per-game leaderboards (shots, tackles, dribbles, pass accuracy) for major leagues.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "many other leagues"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free website",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [],
    "notes": "Homepage shows bookmaker odds and sponsored betting facts.",
    "verified_source": "https://www.whoscored.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.whoscored.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1"
      ],
      "data_types": [
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1"
          ],
          "types": [
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.whoscored.com/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": "Blocked automated checks on 2026-10-19; based on the 2026-10-18 homepage check."
    }
  },
  {
    "slug": "transfermarkt",
    "name": "Transfermarkt",
    "url": "https://www.transfermarkt.com/",
    "type": "data-site",
    "description": "Football database focused on market values, transfers, contracts and squads; homepage lists 1,362 leagues, 776 cups and 3.1M+ matches.",
    "leagues": [
      "1,362 leagues / 776 cups"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free website",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [
      "market-values"
    ],
    "notes": null,
    "verified_source": "https://www.transfermarkt.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.transfermarkt.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "eredivisie",
        "primeira-liga",
        "mls",
        "liga-mx",
        "brasileirao",
        "argentina-primera"
      ],
      "data_types": [
        "match-results",
        "transfers-market-values"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "eredivisie",
            "primeira-liga",
            "mls",
            "brasileirao",
            "argentina-primera"
          ],
          "types": [
            "transfers-market-values"
          ],
          "access": "free",
          "note": null,
          "via": null
        },
        {
          "competitions": [
            "liga-mx"
          ],
          "types": [
            "transfers-market-values",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.transfermarkt.com/wettbewerbe/europa",
        "https://www.transfermarkt.com/wettbewerbe/amerika",
        "https://www.transfermarkt.com/liga-mx-apertura/startseite/wettbewerb/MEXA"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Covers 1,362 leagues; we only list competitions we saw with market values on Transfermarkt's own pages."
    }
  },
  {
    "slug": "footystats",
    "name": "FootyStats",
    "url": "https://footystats.org/",
    "type": "data-site",
    "description": "Stats tables for 1,500+ leagues (goals, corners, cards, xG tables), with a free tier and a Premium subscription. Strong orientation toward betting-style stats.",
    "leagues": [
      "1,500+ leagues",
      "Liga MX",
      "Liga MX Femenil",
      "NWSL"
    ],
    "liga_mx": true,
    "liga_mx_femenil": true,
    "womens": true,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free tier; Premium shown at £19.99/month (offer price displayed to Mexico visitors)",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "liga-mx-xg"
    ],
    "notes": "Liga MX xG table shows values for free on 2026-10-18; the Liga MX Femenil xG page exists but all xG values are 0.00 (no xG data).",
    "verified_source": "https://footystats.org/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://footystats.org/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "mls",
        "liga-mx",
        "nwsl",
        "wsl",
        "liga-mx-femenil"
      ],
      "data_types": [
        "xg",
        "match-results"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "mls",
            "liga-mx",
            "nwsl",
            "wsl"
          ],
          "types": [
            "xg",
            "match-results"
          ],
          "access": "free",
          "note": "Team xG tables with non-zero values, free.",
          "via": null
        },
        {
          "competitions": [
            "liga-mx-femenil"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": "The Liga MX Femenil xG page exists but every value is 0.00.",
          "via": null
        }
      ],
      "evidence": [
        "https://footystats.org/england/premier-league/xg",
        "https://footystats.org/mexico/liga-mx/xg",
        "https://footystats.org/mexico/liga-mx-femenil/xg",
        "https://footystats.org/usa/nwsl/xg",
        "https://footystats.org/england/fa-womens-super-league/xg"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "opta-analyst",
    "name": "Opta Analyst",
    "url": "https://theanalyst.com/",
    "type": "data-site",
    "description": "Stats Perform's free editorial site with Opta stats, predictions and power rankings for football and other sports.",
    "leagues": [
      "Premier League",
      "Champions League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Championship",
      "WSL",
      "MLS"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": false,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "fbref-alternative"
    ],
    "notes": null,
    "verified_source": "https://theanalyst.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://theanalyst.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "champions-league",
        "mls",
        "wsl"
      ],
      "data_types": [
        "match-results",
        "player-stats",
        "fantasy"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship",
            "champions-league",
            "wsl",
            "mls"
          ],
          "types": [
            "match-results",
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        },
        {
          "competitions": [
            "premier-league"
          ],
          "types": [
            "fantasy"
          ],
          "access": "free",
          "note": "FPL section.",
          "via": null
        }
      ],
      "evidence": [
        "https://theanalyst.com/competition/premier-league",
        "https://theanalyst.com/competition/womens-super-league",
        "https://theanalyst.com/competition/mls"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "markstats",
    "name": "MarkStats",
    "url": "https://markstats.club/",
    "type": "data-site",
    "description": "Advanced football statistics and analytics portal for major European leagues (per its own site description).",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": null,
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "JavaScript-only site; only the official meta description could be read automatically.",
    "verified_source": "https://markstats.club/",
    "verification_status": "partial",
    "last_verified": "2026-10-18",
    "url_final": "https://markstats.club/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": null,
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://markstats.club/"
      ],
      "checked": "2026-10-19",
      "status": "unverified",
      "note": "JavaScript-only site; coverage could not be read."
    }
  },
  {
    "slug": "datamb",
    "name": "DataMB",
    "url": "https://datamb.football/",
    "type": "data-site",
    "description": "Player and team comparison site with radar charts and visual tools for the Premier League, La Liga, Bundesliga, Serie A, Ligue 1, Eredivisie, Liga Portugal and more.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Eredivisie",
      "Liga Portugal"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free browsing; 'Pro' plan available (price not readable automatically)",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://datamb.football/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://datamb.football/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "eredivisie",
        "primeira-liga"
      ],
      "data_types": [
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "eredivisie",
            "primeira-liga"
          ],
          "types": [
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://datamb.football/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "american-soccer-analysis",
    "name": "American Soccer Analysis",
    "url": "https://www.americansocceranalysis.com/",
    "type": "data-site",
    "description": "Volunteer analytics group publishing free xG, xPass and Goals Added (g+) models and interactive tables for North American leagues, plus a public API.",
    "leagues": [
      "MLS",
      "NWSL",
      "USL Championship",
      "USL League One",
      "USL Super League",
      "MLS Next Pro"
    ],
    "liga_mx": false,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": false,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "womens-xg"
    ],
    "notes": null,
    "verified_source": "https://github.com/American-Soccer-Analysis/itscalledsoccer",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.americansocceranalysis.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "mls",
        "usl-championship",
        "nwsl"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "mls",
            "nwsl",
            "usl-championship"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.americansocceranalysis.com/",
        "https://github.com/American-Soccer-Analysis/itscalledsoccer"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Also USL League One, USL Super League and MLS Next Pro. Free public API, no key."
    }
  },
  {
    "slug": "clubelo",
    "name": "ClubElo",
    "url": "http://clubelo.com/",
    "type": "data-site",
    "description": "Elo ratings and fixture probabilities for club teams worldwide, including Liga MX.",
    "leagues": [
      "Europe",
      "Liga MX",
      "MLS",
      "South America",
      "others"
    ],
    "liga_mx": true,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "error:URLError",
    "tags": [],
    "notes": null,
    "verified_source": "http://clubelo.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "http://clubelo.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "http://clubelo.com/API"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Elo ratings and fixture probabilities (incl. Liga MX and MLS), which is not one of the data types in our coverage map."
    }
  },
  {
    "slug": "xg-stat",
    "name": "xG Stat",
    "url": "https://www.xgstat.com/",
    "type": "data-site",
    "description": "Player xG-per-90 rankings, percentiles, match reports and shot maps for the Premier League and five other leagues.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Championship"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free to browse; 2026/27 Season Pass $54.99",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [
      "fbref-alternative"
    ],
    "notes": "xA, xT, shot maps and exports are Premier League only according to the site.",
    "verified_source": "https://www.xgstat.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.xgstat.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship"
      ],
      "data_types": [
        "xg",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship"
          ],
          "types": [
            "xg",
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.xgstat.com/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": "Blocked automated checks on 2026-10-19 (Vercel checkpoint); based on the 2026-10-18 check. xA, xT and exports are Premier League only."
    }
  },
  {
    "slug": "xg-lab",
    "name": "xG Lab",
    "url": "https://xglab.io/",
    "type": "data-site",
    "description": "Football analytics site with win-probability replays, xG timelines, shot maps and openly explained match predictions.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Champions League"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": null,
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": false,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "fbref-alternative"
    ],
    "notes": null,
    "verified_source": "https://xglab.io/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://xglab.io/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "champions-league",
        "mls",
        "world-cup"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "champions-league",
            "world-cup",
            "mls"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://xglab.io/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "tifolab",
    "name": "Tifolab",
    "url": "https://www.tifolab.com/",
    "type": "data-site",
    "description": "Player and team comparison tool with radars, percentiles, player search and shortlists across 74 competitions; free to explore without sign-up.",
    "leagues": [
      "74 competitions"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free to explore",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.tifolab.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.tifolab.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [],
      "data_types": [
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://www.tifolab.com/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": "74 competitions, but no list we could read (site blocked automated checks on 2026-10-19)."
    }
  },
  {
    "slug": "scout-lab-streamlit-app",
    "name": "Scout Lab (Streamlit app)",
    "url": "https://scoutlab.streamlit.app/",
    "type": "data-site",
    "description": "Free web app with player percentile rankings, radars, similarity scores and VAEP-based metrics for Big-5 league players.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": null,
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "Not the same product as Scout Lab AI (scoutlab.ai). Uses the socceraction framework for VAEP.",
    "verified_source": "https://scoutlab.streamlit.app/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://scoutlab.streamlit.app/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1"
      ],
      "data_types": [
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1"
          ],
          "types": [
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://scoutlab.streamlit.app/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": "Based on the listing's 2026-10-18 check; the app now redirects automated requests."
    }
  },
  {
    "slug": "liga-mx-official-site",
    "name": "LIGA MX (official site)",
    "url": "https://ligamx.net/",
    "type": "data-site",
    "description": "Official Liga MX website with fixtures, results, standings, club pages and official and historical statistics, in Spanish.",
    "leagues": [
      "Liga MX",
      "Expansión MX",
      "Liga MX Femenil",
      "youth leagues"
    ],
    "liga_mx": true,
    "liga_mx_femenil": true,
    "womens": true,
    "top5": false,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": "Site footer: reproduction prohibited (all rights reserved).",
    "api": null,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://ligamx.net/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://ligamx.net/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "liga-mx"
      ],
      "data_types": [
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "liga-mx"
          ],
          "types": [
            "match-results",
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://ligamx.net/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Official stats tables (goleo, minutos, tarjetas). No xG."
    }
  },
  {
    "slug": "liga-femenil-official-site",
    "name": "LIGA Femenil (official site)",
    "url": "https://ligafemenil.mx/",
    "type": "data-site",
    "description": "Official website of Liga MX Femenil with the calendar, results, standings and statistics, in Spanish.",
    "leagues": [
      "Liga MX Femenil",
      "Femenil Sub-19/18/17"
    ],
    "liga_mx": null,
    "liga_mx_femenil": true,
    "womens": true,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "womens"
    ],
    "notes": null,
    "verified_source": "https://ligafemenil.mx/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://ligafemenil.mx/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "liga-mx-femenil"
      ],
      "data_types": [
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "liga-mx-femenil"
          ],
          "types": [
            "match-results",
            "player-stats"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://ligafemenil.mx/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Official stats tables (goleo, minutos, tarjetas). No xG."
    }
  },
  {
    "slug": "soccerdonna",
    "name": "Soccerdonna",
    "url": "https://www.soccerdonna.de/",
    "type": "data-site",
    "description": "Women's football database (German-language portal) with players, clubs, transfers and competitions.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": null,
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": false,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "womens"
    ],
    "notes": null,
    "verified_source": "https://www.soccerdonna.de/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.soccerdonna.de/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "website",
      "competitions": [
        "frauen-bundesliga"
      ],
      "data_types": [
        "transfers-market-values"
      ],
      "cells": [
        {
          "competitions": [
            "frauen-bundesliga"
          ],
          "types": [
            "transfers-market-values"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.soccerdonna.de/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": "On 2026-10-19 the soccerdonna.de homepage served a Transfermarkt-branded page; based on the 2026-10-18 check (top market values and transfer records)."
    }
  },
  {
    "slug": "api-football",
    "name": "API-Football",
    "url": "https://www.api-football.com/",
    "type": "api",
    "description": "REST football API covering fixtures, live scores, events, lineups, players, transfers, injuries, statistics, odds and predictions. All plans include all competitions.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free 100 req/day; Pro $19, Ultra $29, Mega $39 per month",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [],
    "notes": "Free plan is limited in available seasons.",
    "verified_source": "https://www.api-football.com/pricing",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.api-football.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "api",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "champions-league",
        "europa-league",
        "mls",
        "usl-championship",
        "liga-mx",
        "brasileirao",
        "argentina-primera",
        "a-league",
        "world-cup",
        "euro",
        "copa-america",
        "nwsl",
        "wsl",
        "liga-f",
        "frauen-bundesliga",
        "liga-mx-femenil",
        "womens-world-cup",
        "womens-euro"
      ],
      "data_types": [
        "match-results",
        "player-stats",
        "lineups",
        "transfers-market-values",
        "odds"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship",
            "eredivisie",
            "primeira-liga",
            "mls",
            "usl-championship",
            "liga-mx",
            "liga-mx-femenil",
            "nwsl",
            "wsl",
            "liga-f",
            "frauen-bundesliga",
            "champions-league",
            "europa-league",
            "world-cup",
            "womens-world-cup",
            "euro",
            "womens-euro",
            "copa-america",
            "brasileirao",
            "argentina-primera",
            "a-league"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": "Free plan: 100 requests/day, limited seasons. All competitions are in all plans.",
          "via": null
        }
      ],
      "evidence": [
        "https://www.api-football.com/coverage",
        "https://www.api-football.com/pricing"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Per-league availability of lineups, statistics and odds varies by season and is not shown in a readable form, so only fixtures are mapped per league."
    }
  },
  {
    "slug": "sportmonks-football-api",
    "name": "Sportmonks Football API",
    "url": "https://www.sportmonks.com/football-api/",
    "type": "api",
    "description": "Commercial football API covering 2,200+ leagues with fixtures, live scores and stats, plus paid add-ons for xG, predictions and other data.",
    "leagues": [
      "2,200+ leagues",
      "Liga MX",
      "NWSL",
      "WSL"
    ],
    "liga_mx": true,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Plans from €29/month (€24/mo yearly); xG add-on from €15/month (yearly)",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "xG is a separate add-on; whether the xG add-on covers Liga MX was not verified. Coverage list includes Liga MX (#743) and NWSL; Liga MX Femenil league not found in coverage list (only the NWSL x Liga MXF Summer Cup).",
    "verified_source": "https://www.sportmonks.com/football-api/plans-pricing/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.sportmonks.com/football-api/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "api",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "champions-league",
        "europa-league",
        "mls",
        "usl-championship",
        "liga-mx",
        "brasileirao",
        "argentina-primera",
        "a-league",
        "world-cup",
        "euro",
        "copa-america",
        "nwsl",
        "liga-mx-femenil"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats",
        "lineups",
        "odds"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship",
            "eredivisie",
            "primeira-liga",
            "mls",
            "usl-championship",
            "liga-mx",
            "liga-mx-femenil",
            "champions-league",
            "europa-league",
            "world-cup",
            "euro",
            "copa-america",
            "brasileirao",
            "argentina-primera",
            "a-league"
          ],
          "types": [
            "match-results",
            "lineups",
            "player-stats",
            "odds"
          ],
          "access": "paid",
          "note": null,
          "via": null
        },
        {
          "competitions": [
            "nwsl"
          ],
          "types": [
            "match-results"
          ],
          "access": "paid",
          "note": "Coverage table shows no lineups, player stats or odds for NWSL.",
          "via": null
        }
      ],
      "evidence": [
        "https://www.sportmonks.com/football-api/coverage/",
        "https://www.sportmonks.com/football-api/plans-pricing/",
        "https://www.sportmonks.com/football-api/xg-data/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Paid plans from €29/month (pick 5 leagues). xG is a paid add-on and the page does not list which leagues it covers. Liga MX Femenil is #1579 in the coverage table."
    }
  },
  {
    "slug": "football-data-org",
    "name": "football-data.org",
    "url": "https://www.football-data.org/",
    "type": "api",
    "description": "Long-running REST API for fixtures, results, standings, lineups and squads with a free-forever tier of 12 competitions.",
    "leagues": [
      "12 competitions free",
      "Liga MX (tier not verified)"
    ],
    "liga_mx": true,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free (12 competitions, 10 calls/min); paid €12–€199/month",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.football-data.org/pricing",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.football-data.org/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "api",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "champions-league",
        "europa-league",
        "mls",
        "liga-mx",
        "brasileirao",
        "argentina-primera",
        "a-league",
        "world-cup",
        "euro",
        "copa-america",
        "womens-world-cup",
        "womens-euro"
      ],
      "data_types": [
        "xg",
        "match-results",
        "lineups",
        "odds"
      ],
      "cells": [
        {
          "competitions": [
            "champions-league",
            "primeira-liga",
            "premier-league",
            "eredivisie",
            "bundesliga",
            "ligue-1",
            "serie-a",
            "la-liga",
            "championship",
            "brasileirao",
            "world-cup",
            "euro"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": "Free tier: 12 competitions, 10 calls/minute, delayed scores.",
          "via": null
        },
        {
          "competitions": [
            "champions-league",
            "primeira-liga",
            "premier-league",
            "eredivisie",
            "bundesliga",
            "ligue-1",
            "serie-a",
            "la-liga",
            "championship",
            "brasileirao",
            "world-cup",
            "euro"
          ],
          "types": [
            "lineups"
          ],
          "access": "paid",
          "note": null,
          "via": null
        },
        {
          "competitions": [
            "liga-mx",
            "mls",
            "a-league",
            "argentina-primera",
            "europa-league",
            "copa-america",
            "womens-world-cup",
            "womens-euro"
          ],
          "types": [
            "match-results"
          ],
          "access": "paid",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.football-data.org/coverage",
        "https://www.football-data.org/pricing"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Odds and statistics (incl. xG) are paid add-ons; their competition lists were not readable."
    }
  },
  {
    "slug": "thesportsdb",
    "name": "TheSportsDB",
    "url": "https://www.thesportsdb.com/",
    "type": "api",
    "description": "Crowd-sourced multi-sport database and JSON API (teams, players, events, artwork) with a free API key.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free; Premium $9/month; Business $20/month",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.thesportsdb.com/pricing",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.thesportsdb.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "api",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie"
      ],
      "data_types": [
        "match-results"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "championship",
            "bundesliga",
            "serie-a",
            "ligue-1",
            "la-liga",
            "eredivisie"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://www.thesportsdb.com/api/v1/json/123/all_leagues.php",
        "https://www.thesportsdb.com/pricing"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "The free test key lists only some leagues; other leagues not checked."
    }
  },
  {
    "slug": "goal-api",
    "name": "GOAL API",
    "url": "https://goal-api.com/",
    "type": "api",
    "description": "Football data API with live scores, fixtures, standings, lineups and match statistics for 1,000+ competitions over REST and WebSocket, plus a hosted MCP server for AI assistants.",
    "leagues": [
      "1,000+ competitions"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free plan, no card (1,000 requests/day per its MCP page); paid plans",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "mcp"
    ],
    "notes": null,
    "verified_source": "https://goal-api.com/mcp",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://goal-api.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "api",
      "competitions": [
        "championship",
        "mls",
        "argentina-primera"
      ],
      "data_types": [
        "match-results",
        "lineups"
      ],
      "cells": [
        {
          "competitions": [
            "championship",
            "mls",
            "argentina-primera"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://goal-api.com/coverage",
        "https://goal-api.com/mcp"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Coverage page lists 1,019 leagues; we only mapped the ones we could read with their data."
    }
  },
  {
    "slug": "footystats-api",
    "name": "FootyStats API",
    "url": "https://footystats.org/api/",
    "type": "api",
    "description": "JSON API from FootyStats with league, team, player and match stats (goals, BTTS, corners, cards and more) for up to 1,500+ leagues.",
    "leagues": [
      "1,500+ leagues",
      "Liga MX",
      "Liga MX Femenil",
      "NWSL",
      "WSL"
    ],
    "liga_mx": true,
    "liga_mx_femenil": true,
    "womens": true,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free (Premier League only); Hobby £29.99, Serious £69.99, Everything £389.99 per month",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "Marketed to bettors and modelers.",
    "verified_source": "https://footystats.org/api/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://footystats.org/api",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "api",
      "competitions": [
        "premier-league",
        "liga-mx",
        "nwsl",
        "wsl",
        "liga-mx-femenil"
      ],
      "data_types": [
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league"
          ],
          "types": [
            "match-results",
            "player-stats"
          ],
          "access": "free",
          "note": "Free plan is Premier League only.",
          "via": null
        },
        {
          "competitions": [
            "liga-mx",
            "liga-mx-femenil",
            "nwsl",
            "wsl"
          ],
          "types": [
            "match-results",
            "player-stats"
          ],
          "access": "paid",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://footystats.org/api/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "statorium",
    "name": "Statorium",
    "url": "https://statorium.com/",
    "type": "api",
    "description": "Multi-sport data API and HTML widgets (JSON feed, WordPress integration) with football coverage.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Quote-based; free trial offered",
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://statorium.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://statorium.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "api",
      "competitions": [
        "premier-league",
        "la-liga",
        "bundesliga",
        "mls",
        "world-cup",
        "womens-euro"
      ],
      "data_types": [
        "match-results"
      ],
      "cells": [
        {
          "competitions": [
            "world-cup",
            "womens-euro",
            "premier-league",
            "bundesliga",
            "la-liga",
            "mls"
          ],
          "types": [
            "match-results"
          ],
          "access": "paid",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://statorium.com/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Quote-based pricing with a free trial."
    }
  },
  {
    "slug": "sportsdataio-soccer-api",
    "name": "SportsDataIO Soccer API",
    "url": "https://sportsdata.io/soccer-api",
    "type": "api",
    "description": "Commercial soccer data feeds (schedules, scores, standings, rosters) covering many international leagues including Liga MX.",
    "leagues": [
      "Liga MX",
      "MLS",
      "EPL",
      "many others"
    ],
    "liga_mx": true,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Contact for pricing; free trial",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://sportsdata.io/soccer-api",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://sportsdata.io/soccer-api",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "api",
      "competitions": [
        "premier-league",
        "mls",
        "liga-mx"
      ],
      "data_types": [
        "match-results",
        "lineups",
        "odds",
        "fantasy"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "mls",
            "liga-mx"
          ],
          "types": [
            "match-results"
          ],
          "access": "paid",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://sportsdata.io/soccer-api"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Free trial only."
    }
  },
  {
    "slug": "dribble",
    "name": "Dribble",
    "url": "https://dribble360.com/",
    "type": "api",
    "description": "Football dataset and API sold as CSV downloads, REST API and BigQuery access, with player/team match stats and xG for 23 leagues; also offers fan tools and AI features.",
    "leagues": [
      "23 leagues"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": null,
      "basic": null
    },
    "pricing": "From $19/month (API); BigQuery Starter $49, Pro $149, Max $499 per month",
    "free_tier": null,
    "license": null,
    "commercial_use": "Personal/academic on Starter; commercial licence on Pro and above; raw redistribution needs a separate agreement.",
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "fbref-alternative"
    ],
    "notes": null,
    "verified_source": "https://dribble360.com/pricing",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://dribble360.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "api",
      "competitions": [
        "premier-league"
      ],
      "data_types": [
        "xg",
        "event-data",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league"
          ],
          "types": [
            "event-data"
          ],
          "access": "paid",
          "note": "Enriched Premier League event detail (Max plan).",
          "via": null
        }
      ],
      "evidence": [
        "https://dribble360.com/pricing"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "xG and stats for 23 leagues; the league list was not readable."
    }
  },
  {
    "slug": "opta-stats-perform",
    "name": "Opta (Stats Perform)",
    "url": "https://www.statsperform.com/opta/",
    "type": "api",
    "description": "Enterprise sports data provider (3,900+ competitions, 20+ sports) offering event data, tracking (Opta Vision), xG, predictions and data feeds for media, teams and betting operators.",
    "leagues": [
      "3,900+ competitions"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Enterprise (contact sales)",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "blocked",
    "tags": [],
    "notes": "Owner of the Opta data that FBref lost in January 2026.",
    "verified_source": "https://www.statsperform.com/opta/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.statsperform.com/opta/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "api",
      "competitions": [],
      "data_types": [
        "xg",
        "event-data",
        "tracking-data",
        "match-results",
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://www.statsperform.com/opta/"
      ],
      "checked": "2026-10-18",
      "status": "verified",
      "note": "Enterprise, 3,900+ competitions; no public per-league list (site blocked automated checks on 2026-10-19)."
    }
  },
  {
    "slug": "hudl-statsbomb",
    "name": "Hudl StatsBomb",
    "url": "https://www.hudl.com/products/statsbomb",
    "type": "api",
    "description": "Professional event data (3,400+ events per match across 300+ competitions), player-location (360) data and broadcast-tracking physical data for clubs and media.",
    "leagues": [
      "300+ competitions"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Enterprise (request a demo)",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.hudl.com/products/statsbomb",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.hudl.com/products/statsbomb",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "api",
      "competitions": [],
      "data_types": [
        "xg",
        "event-data",
        "tracking-data",
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://www.hudl.com/products/statsbomb"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Enterprise, 300+ competitions; 360 data for 40+ key leagues. No public per-league list."
    }
  },
  {
    "slug": "hudl-wyscout",
    "name": "Hudl Wyscout",
    "url": "https://www.hudl.com/products/wyscout",
    "type": "scouting-platform",
    "description": "Video and data scouting platform with match footage and performance stats from 1,000+ competitions, widely used by clubs and agents.",
    "leagues": [
      "1,000+ competitions"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": true,
      "tracking": null,
      "basic": null
    },
    "pricing": "Contact sales / request a demo",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.hudl.com/products/wyscout",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.hudl.com/products/wyscout",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [
        "event-data",
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://www.hudl.com/products/wyscout"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "1,000+ competitions; no public per-league list."
    }
  },
  {
    "slug": "skillcorner",
    "name": "SkillCorner",
    "url": "https://skillcorner.com/",
    "type": "scouting-platform",
    "description": "AI broadcast-tracking provider supplying physical and off-ball data for scouting and performance across 150+ competitions.",
    "leagues": [
      "150+ competitions"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Enterprise",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://skillcorner.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://skillcorner.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://skillcorner.com/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "150+ competitions; no public per-league list."
    }
  },
  {
    "slug": "impect-catapult",
    "name": "IMPECT (Catapult)",
    "url": "https://www.catapult.com/solutions/impect",
    "type": "scouting-platform",
    "description": "Football event data and scouting platform known for Packing data; now part of Catapult.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": null,
      "basic": null
    },
    "pricing": "Enterprise",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": true,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "impect.com redirects to catapult.com.",
    "verified_source": "https://www.catapult.com/solutions/impect",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.catapult.com/solutions/impect",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [
        "xg",
        "event-data"
      ],
      "cells": [],
      "evidence": [
        "https://www.catapult.com/solutions/impect"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "twelve-earpiece",
    "name": "Twelve / Earpiece",
    "url": "https://twelve.football/",
    "type": "ai-tool",
    "description": "AI football analysis assistant (Earpiece) for scouting and opposition analysis via web and WhatsApp, covering 300+ leagues, with free 'Earpiece Labs' tools.",
    "leagues": [
      "300+ leagues"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free start; from €20 per seat/month (credit-based); team tiers higher",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "ai"
    ],
    "notes": null,
    "verified_source": "https://twelve.football/pricing",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://twelve.football/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "ai-tool",
      "competitions": [],
      "data_types": [
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://twelve.football/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "scoutingstats-ai",
    "name": "ScoutingStats.AI",
    "url": "https://scoutingstats.ai/",
    "type": "ai-tool",
    "description": "Scouting platform with player comparisons, advanced search, radars and match models for 20 leagues including Liga MX.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Championship",
      "Eredivisie",
      "Liga Portugal",
      "Süper Lig",
      "Brasileirão",
      "Liga MX"
    ],
    "liga_mx": true,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free (5 player profiles/day); Analyst £12.99/mo; Scout £19.99/mo",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "Also sells a betting-oriented 'Analyst' plan.",
    "verified_source": "https://scoutingstats.ai/premium",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://scoutingstats.ai/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "freemium",
      "format": "ai-tool",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "mls",
        "liga-mx",
        "brasileirao"
      ],
      "data_types": [
        "player-stats",
        "odds",
        "fantasy"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship",
            "eredivisie",
            "primeira-liga",
            "brasileirao",
            "liga-mx",
            "mls"
          ],
          "types": [
            "player-stats"
          ],
          "access": "free",
          "note": "Free tier: 5 player profiles/day.",
          "via": null
        },
        {
          "competitions": [
            "premier-league"
          ],
          "types": [
            "fantasy"
          ],
          "access": "free",
          "note": "FPL tools.",
          "via": null
        }
      ],
      "evidence": [
        "https://scoutingstats.ai/",
        "https://scoutingstats.ai/premium"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "transferroom",
    "name": "TransferRoom",
    "url": "https://www.transferroom.com/",
    "type": "scouting-platform",
    "description": "Transfer marketplace and market intelligence network connecting clubs, agents and players.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Contact sales (free registration for players)",
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.transferroom.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.transferroom.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [
        "transfers-market-values"
      ],
      "cells": [],
      "evidence": [
        "https://www.transferroom.com/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "scisports",
    "name": "SciSports",
    "url": "https://www.scisports.com/",
    "type": "scouting-platform",
    "description": "Football analysis and recruitment software for clubs and youth programmes.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Contact sales",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "error:TimeoutError",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.scisports.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.scisports.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://www.scisports.com/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "analytics-fc",
    "name": "Analytics FC",
    "url": "https://analyticsfc.co.uk/",
    "type": "scouting-platform",
    "description": "Data-driven football consultancy and analytics provider.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Contact sales",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://analyticsfc.co.uk/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://analyticsfc.co.uk/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://analyticsfc.co.uk/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "smarterscout-vantage-fc",
    "name": "smarterscout (Vantage FC)",
    "url": "https://vantagefc.com/",
    "type": "scouting-platform",
    "description": "Player-analytics tool for evaluating style, quality and comparable profiles, now offered by talent-intelligence firm Vantage FC.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": null,
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "smarterscout.com redirects to vantagefc.com (2026-10-18).",
    "verified_source": "https://vantagefc.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://vantagefc.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": null,
      "format": "website",
      "competitions": [],
      "data_types": [
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://vantagefc.com/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": null
    }
  },
  {
    "slug": "metrica-sports",
    "name": "Metrica Sports",
    "url": "https://www.metrica-sports.com/",
    "type": "scouting-platform",
    "description": "Video analysis software for coaches and analysts (PlayBase and Metrica Nexus) with tracking and data integration.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": true,
      "basic": null
    },
    "pricing": "Plans from entry-level to elite (see site)",
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": true,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.metrica-sports.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.metrica-sports.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://www.metrica-sports.com/"
      ],
      "checked": "2026-10-18",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "trumedia",
    "name": "TruMedia",
    "url": "https://www.trumedianetworks.com/",
    "type": "scouting-platform",
    "description": "Sports analytics and data-visualisation software for teams and media.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Contact sales",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.trumedianetworks.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.trumedianetworks.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://www.trumedianetworks.com/"
      ],
      "checked": "2026-10-18",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "eyeball",
    "name": "Eyeball",
    "url": "https://www.eyeball.club/",
    "type": "scouting-platform",
    "description": "Youth football scouting and video platform ('operating system for youth football').",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": null,
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://www.eyeball.club/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.eyeball.club/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": null,
      "format": "website",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://www.eyeball.club/"
      ],
      "checked": "2026-10-18",
      "status": "partial",
      "note": null
    }
  },
  {
    "slug": "second-spectrum-genius-sports",
    "name": "Second Spectrum (Genius Sports)",
    "url": "https://www.geniussports.com/",
    "type": "scouting-platform",
    "description": "Optical tracking and performance analytics, now part of Genius Sports.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": true,
      "basic": null
    },
    "pricing": "Enterprise",
    "free_tier": false,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [],
    "notes": "secondspectrum.com redirects to Genius Sports Performance Studio.",
    "verified_source": "https://www.geniussports.com/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.geniussports.com/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "website",
      "competitions": [],
      "data_types": [
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://www.geniussports.com/"
      ],
      "checked": "2026-10-18",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "scout-lab-ai",
    "name": "Scout Lab AI",
    "url": "https://scoutlab.ai/",
    "type": "ai-tool",
    "description": "AI tool that turns uploaded match video (Veo, Trace, YouTube, phone) into player-evaluation reports for coaches, clubs and parents.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Usage-based (no subscription required)",
    "free_tier": null,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "ok",
    "tags": [
      "ai",
      "video"
    ],
    "notes": null,
    "verified_source": "https://scoutlab.ai/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://scoutlab.ai/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "paid",
      "format": "ai-tool",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://scoutlab.ai/"
      ],
      "checked": "2026-10-18",
      "status": "verified",
      "note": "Turns your own match video into reports; no league data."
    }
  },
  {
    "slug": "football-data-mcp",
    "name": "Football Data MCP",
    "url": "https://www.kupsas.com/football-data-mcp",
    "type": "ai-tool",
    "description": "MCP server that lets AI assistants (Claude, ChatGPT, Cursor, Gemini) query player stats, xG, comparisons and shot maps for 10 leagues; hosted or self-hosted.",
    "leagues": [
      "Premier League",
      "La Liga",
      "Bundesliga",
      "Serie A",
      "Ligue 1",
      "Eredivisie",
      "Liga Portugal",
      "Championship",
      "Champions League",
      "Europa League"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Self-host for free; hosted API option",
    "free_tier": true,
    "license": "GPL-3.0",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "kupsas/football-data-mcp",
    "github_stars": 6,
    "github_last_commit": "2026-06-03",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "ai",
      "mcp"
    ],
    "notes": "Built on ScraperFC; data scraped from FBref, SofaScore, Understat and Transfermarkt.",
    "verified_source": "https://www.kupsas.com/football-data-mcp",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://www.kupsas.com/football-data-mcp",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "ai-tool",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "champions-league",
        "europa-league"
      ],
      "data_types": [
        "xg",
        "player-stats",
        "transfers-market-values"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "eredivisie",
            "primeira-liga",
            "championship",
            "champions-league",
            "europa-league"
          ],
          "types": [
            "xg",
            "player-stats",
            "transfers-market-values"
          ],
          "access": "free",
          "note": "Seasons 2023/24 to 2025/26.",
          "via": "Scraped from FBref, SofaScore, Understat and Transfermarkt"
        }
      ],
      "evidence": [
        "https://www.kupsas.com/football-data-mcp"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "statsbomb-open-data",
    "name": "StatsBomb Open Data",
    "url": "https://github.com/hudl/open-data",
    "type": "dataset",
    "description": "Free event data (JSON) for selected competitions, including many women's competitions, released by Hudl StatsBomb.",
    "leagues": [
      "FA WSL",
      "NWSL",
      "Frauen-Bundesliga",
      "Liga F",
      "Serie A Women",
      "Women's World Cup",
      "Women's Euro 2025",
      "FIFA World Cup",
      "Euro 2024",
      "Copa América 2024",
      "MLS 2023",
      "La Liga (Messi seasons)",
      "Bundesliga 2023/24"
    ],
    "liga_mx": false,
    "liga_mx_femenil": false,
    "womens": true,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free",
    "free_tier": true,
    "license": "Custom terms (see LICENSE.pdf); credit StatsBomb when publishing",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "hudl/open-data",
    "github_stars": 3712,
    "github_last_commit": "2026-09-07",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "womens-xg",
      "free"
    ],
    "notes": null,
    "verified_source": "https://github.com/hudl/open-data",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/hudl/open-data",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "champions-league",
        "europa-league",
        "mls",
        "argentina-primera",
        "world-cup",
        "euro",
        "copa-america",
        "nwsl",
        "wsl",
        "liga-f",
        "frauen-bundesliga",
        "womens-world-cup",
        "womens-euro"
      ],
      "data_types": [
        "xg",
        "event-data",
        "match-results",
        "lineups"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "champions-league",
            "europa-league",
            "world-cup",
            "womens-world-cup",
            "euro",
            "womens-euro",
            "copa-america",
            "mls",
            "nwsl",
            "wsl",
            "liga-f",
            "frauen-bundesliga",
            "argentina-primera"
          ],
          "types": [
            "event-data",
            "xg",
            "lineups",
            "match-results"
          ],
          "access": "free",
          "note": "Selected seasons only, mostly historical: e.g. Premier League 2003/04 and 2015/16, La Liga 2004/05-2020/21 (Messi era), Champions League finals, Europa League 1988/89, Argentina 1981 and 1997/98, World Cup 2018 and 2022, Euro 2020 and 2024, Copa América 2024, MLS 2023, NWSL 2018 and 2023, WSL 2018/19-2020/21 and 2023/24, Liga F, Frauen-Bundesliga and Serie A Women 2023/24, Women's World Cup 2019 and 2023, Women's Euro 2022 and 2025.",
          "via": null
        }
      ],
      "evidence": [
        "https://github.com/hudl/open-data",
        "https://raw.githubusercontent.com/hudl/open-data/master/data/competitions.json"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "360 freeze-frame data for some matches. Credit StatsBomb when you publish."
    }
  },
  {
    "slug": "skillcorner-open-data",
    "name": "SkillCorner Open Data",
    "url": "https://github.com/SkillCorner/opendata",
    "type": "dataset",
    "description": "Free broadcast tracking data for 10 sample A-League 2024/25 matches plus season-level physical aggregates.",
    "leagues": [
      "A-League (sample)"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free",
    "free_tier": true,
    "license": "MIT (repo)",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "SkillCorner/opendata",
    "github_stars": 436,
    "github_last_commit": "2026-09-14",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/SkillCorner/opendata",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/SkillCorner/opendata",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "a-league"
      ],
      "data_types": [
        "tracking-data"
      ],
      "cells": [
        {
          "competitions": [
            "a-league"
          ],
          "types": [
            "tracking-data"
          ],
          "access": "free",
          "note": "10 matches from 2024/25.",
          "via": null
        }
      ],
      "evidence": [
        "https://github.com/SkillCorner/opendata"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "metrica-sports-sample-data",
    "name": "Metrica Sports Sample Data",
    "url": "https://github.com/metrica-sports/sample-data",
    "type": "dataset",
    "description": "Three anonymised sample games of synchronised tracking and event data from Metrica Sports.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "metrica-sports/sample-data",
    "github_stars": 503,
    "github_last_commit": "2021-04-15",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/metrica-sports/sample-data",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/metrica-sports/sample-data",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [],
      "data_types": [
        "event-data",
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/metrica-sports/sample-data"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Three anonymised matches; competition not disclosed."
    }
  },
  {
    "slug": "fjelstul-world-cup-database",
    "name": "Fjelstul World Cup Database",
    "url": "https://github.com/jfjelstul/worldcup",
    "type": "dataset",
    "description": "Comprehensive database of every men's (1930–2022) and women's (1991–2019) FIFA World Cup, 27 datasets.",
    "leagues": [
      "FIFA World Cup",
      "FIFA Women's World Cup"
    ],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": "CC-BY-SA 4.0",
    "commercial_use": "Commercial use allowed with attribution and share-alike.",
    "api": null,
    "spanish": null,
    "github_repo": "jfjelstul/worldcup",
    "github_stars": 337,
    "github_last_commit": "2026-06-11",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/jfjelstul/worldcup",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/jfjelstul/worldcup",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "world-cup",
        "womens-world-cup"
      ],
      "data_types": [
        "match-results"
      ],
      "cells": [
        {
          "competitions": [
            "world-cup",
            "womens-world-cup"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": "Men's 1930-2022, women's 1991-2019.",
          "via": null
        }
      ],
      "evidence": [
        "https://github.com/jfjelstul/worldcup"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "openfootball-football-json",
    "name": "openfootball football.json",
    "url": "https://github.com/openfootball/football.json",
    "type": "dataset",
    "description": "Public-domain JSON fixtures and results for the Premier League, Bundesliga, La Liga, Serie A and more; no API key needed.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": "CC0-1.0",
    "commercial_use": "Public domain (CC0).",
    "api": null,
    "spanish": null,
    "github_repo": "openfootball/football.json",
    "github_stars": 1041,
    "github_last_commit": "2026-09-22",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/openfootball/football.json",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/openfootball/football.json",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship"
      ],
      "data_types": [
        "match-results"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "championship",
            "bundesliga",
            "la-liga",
            "serie-a",
            "ligue-1"
          ],
          "types": [
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": null
        }
      ],
      "evidence": [
        "https://github.com/openfootball/football.json"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "openfootball-worldcup-json",
    "name": "openfootball worldcup.json",
    "url": "https://github.com/openfootball/worldcup.json",
    "type": "dataset",
    "description": "Public-domain JSON data for World Cups (national teams and clubs), including Canada/USA/Mexico 2026.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": "CC0-1.0",
    "commercial_use": "Public domain (CC0).",
    "api": null,
    "spanish": null,
    "github_repo": "openfootball/worldcup.json",
    "github_stars": 484,
    "github_last_commit": "2026-08-11",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/openfootball/worldcup.json",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/openfootball/worldcup.json",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "world-cup"
      ],
      "data_types": [
        "match-results",
        "lineups"
      ],
      "cells": [
        {
          "competitions": [
            "world-cup"
          ],
          "types": [
            "match-results",
            "lineups"
          ],
          "access": "free",
          "note": "Full match details incl. lineups added for 2026.",
          "via": null
        }
      ],
      "evidence": [
        "https://github.com/openfootball/worldcup.json"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "transfermarkt-datasets",
    "name": "transfermarkt-datasets",
    "url": "https://github.com/dcaribou/transfermarkt-datasets",
    "type": "dataset",
    "description": "Open pipeline that extracts and publishes cleaned Transfermarkt datasets (players, clubs, games, appearances, valuations).",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": "CC0-1.0 (repo)",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "dcaribou/transfermarkt-datasets",
    "github_stars": 520,
    "github_last_commit": "2026-09-05",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/dcaribou/transfermarkt-datasets",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/dcaribou/transfermarkt-datasets",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "world-cup",
        "euro",
        "copa-america"
      ],
      "data_types": [
        "match-results",
        "player-stats",
        "lineups",
        "transfers-market-values"
      ],
      "cells": [
        {
          "competitions": [
            "world-cup",
            "euro",
            "copa-america"
          ],
          "types": [
            "match-results",
            "lineups"
          ],
          "access": "free",
          "note": "Updates paused; data current to 6 July 2026.",
          "via": null
        }
      ],
      "evidence": [
        "https://github.com/dcaribou/transfermarkt-datasets"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Built from Transfermarkt. Covers 65 competitions incl. domestic leagues, but the README does not list them, so only the national-team tournaments it names are mapped."
    }
  },
  {
    "slug": "football-data-co-uk",
    "name": "football-data.co.uk",
    "url": "https://www.football-data.co.uk/data.php",
    "type": "dataset",
    "description": "Free historical CSV/Excel results and match stats for 25+ leagues going back decades, including Mexico; primarily aimed at betting-model research.",
    "leagues": [
      "25+ European leagues",
      "Mexico Liga MX",
      "USA",
      "Brazil",
      "Argentina",
      "Japan",
      "others"
    ],
    "liga_mx": true,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free",
    "free_tier": true,
    "license": null,
    "commercial_use": "Site states use is for private individuals only, not commercial or data-training products.",
    "api": null,
    "spanish": null,
    "github_repo": null,
    "github_stars": null,
    "github_last_commit": null,
    "github_archived": null,
    "url_status": "redirect",
    "tags": [],
    "notes": "Heavy betting content and odds data on site.",
    "verified_source": "https://www.football-data.co.uk/data.php",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://football-data.co.uk/data.php",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "dataset",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "championship",
        "eredivisie",
        "primeira-liga",
        "mls",
        "liga-mx",
        "brasileirao",
        "argentina-primera"
      ],
      "data_types": [
        "match-results",
        "odds"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "championship",
            "eredivisie",
            "primeira-liga"
          ],
          "types": [
            "match-results",
            "odds"
          ],
          "access": "free",
          "note": "Results, match stats and closing odds; private use only.",
          "via": null
        },
        {
          "competitions": [
            "liga-mx",
            "mls",
            "brasileirao",
            "argentina-primera"
          ],
          "types": [
            "match-results",
            "odds"
          ],
          "access": "free",
          "note": "'Extra leagues' files; private use only.",
          "via": null
        }
      ],
      "evidence": [
        "https://www.football-data.co.uk/data.php",
        "https://www.football-data.co.uk/all_new_data.php",
        "https://www.football-data.co.uk/notes.txt"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "kloppy",
    "name": "kloppy",
    "url": "https://kloppy.pysport.org/",
    "type": "library",
    "description": "Python library that standardises soccer tracking and event data from many providers into one model.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "BSD-3-Clause",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "PySport/kloppy",
    "github_stars": 565,
    "github_last_commit": "2026-10-17",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://kloppy.pysport.org/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://kloppy.pysport.org/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "event-data",
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/PySport/kloppy"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "socceraction",
    "name": "socceraction",
    "url": "https://socceraction.readthedocs.io/",
    "type": "library",
    "description": "Python library that converts event data to SPADL and values player actions with VAEP or xT.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "ML-KULeuven/socceraction",
    "github_stars": 818,
    "github_last_commit": "2026-01-07",
    "github_archived": false,
    "url_status": "redirect",
    "tags": [],
    "notes": null,
    "verified_source": "https://socceraction.readthedocs.io/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://socceraction.readthedocs.io/en/latest/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "event-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/ML-KULeuven/socceraction"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "mplsoccer",
    "name": "mplsoccer",
    "url": "https://mplsoccer.readthedocs.io/",
    "type": "library",
    "description": "Python library for drawing football pitches, shot maps, radars and pizza charts with matplotlib.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "andrewRowlinson/mplsoccer",
    "github_stars": 550,
    "github_last_commit": "2026-09-14",
    "github_archived": false,
    "url_status": "redirect",
    "tags": [],
    "notes": null,
    "verified_source": "https://mplsoccer.readthedocs.io/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://mplsoccer.readthedocs.io/en/latest/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://mplsoccer.readthedocs.io/"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Visualisation only."
    }
  },
  {
    "slug": "soccerdata",
    "name": "soccerdata",
    "url": "https://soccerdata.readthedocs.io/",
    "type": "library",
    "description": "Python scrapers for Club Elo, ESPN, FBref, Football-Data.co.uk, Sofascore, SoFIFA, Understat and WhoScored returning pandas DataFrames.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": true
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "probberechts/soccerdata",
    "github_stars": 2116,
    "github_last_commit": "2026-10-18",
    "github_archived": false,
    "url_status": "redirect",
    "tags": [],
    "notes": "Respect each source's terms; scraping may be prohibited by some sites.",
    "verified_source": "https://soccerdata.readthedocs.io/",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://soccerdata.readthedocs.io/en/latest/",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "scraper",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1"
      ],
      "data_types": [
        "xg",
        "event-data",
        "match-results",
        "player-stats",
        "lineups",
        "odds"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": "Understat"
        }
      ],
      "evidence": [
        "https://soccerdata.readthedocs.io/en/latest/datasources/index.html",
        "https://soccerdata.readthedocs.io/en/latest/datasources/Understat.html"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Scrapes ClubElo, ESPN, FBref, Football-Data.co.uk, Sofascore, SoFIFA, Understat and WhoScored. Check each site's terms."
    }
  },
  {
    "slug": "worldfootballr",
    "name": "worldfootballR",
    "url": "https://github.com/JaseZiv/worldfootballR",
    "type": "library",
    "description": "R package for extracting football data from FBref, Transfermarkt and Understat.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "JaseZiv/worldfootballR",
    "github_stars": 598,
    "github_last_commit": "2025-09-18",
    "github_archived": true,
    "url_status": "ok",
    "tags": [],
    "notes": "Repository archived (read-only) since 2025-09; no longer maintained.",
    "verified_source": "https://github.com/JaseZiv/worldfootballR",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/JaseZiv/worldfootballR",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "scraper",
      "competitions": [],
      "data_types": [
        "match-results",
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/JaseZiv/worldfootballR"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Archived and no longer maintained."
    }
  },
  {
    "slug": "statsbombpy",
    "name": "statsbombpy",
    "url": "https://github.com/hudl/statsbombpy",
    "type": "library",
    "description": "Official Python client to stream StatsBomb open data (free) or API data (with credentials).",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": null,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "hudl/statsbombpy",
    "github_stars": 747,
    "github_last_commit": "2026-09-07",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "womens-xg"
    ],
    "notes": null,
    "verified_source": "https://github.com/hudl/statsbombpy",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/hudl/statsbombpy",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "champions-league",
        "europa-league",
        "mls",
        "argentina-primera",
        "world-cup",
        "euro",
        "copa-america",
        "nwsl",
        "wsl",
        "liga-f",
        "frauen-bundesliga",
        "womens-world-cup",
        "womens-euro"
      ],
      "data_types": [
        "xg",
        "event-data",
        "match-results",
        "lineups"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "champions-league",
            "europa-league",
            "world-cup",
            "womens-world-cup",
            "euro",
            "womens-euro",
            "copa-america",
            "mls",
            "nwsl",
            "wsl",
            "liga-f",
            "frauen-bundesliga",
            "argentina-primera"
          ],
          "types": [
            "event-data",
            "xg",
            "lineups",
            "match-results"
          ],
          "access": "free",
          "note": "Selected seasons only, mostly historical: e.g. Premier League 2003/04 and 2015/16, La Liga 2004/05-2020/21 (Messi era), Champions League finals, Europa League 1988/89, Argentina 1981 and 1997/98, World Cup 2018 and 2022, Euro 2020 and 2024, Copa América 2024, MLS 2023, NWSL 2018 and 2023, WSL 2018/19-2020/21 and 2023/24, Liga F, Frauen-Bundesliga and Serie A Women 2023/24, Women's World Cup 2019 and 2023, Women's Euro 2022 and 2025.",
          "via": "StatsBomb Open Data"
        }
      ],
      "evidence": [
        "https://github.com/hudl/statsbombpy",
        "https://github.com/hudl/open-data",
        "https://raw.githubusercontent.com/hudl/open-data/master/data/competitions.json"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "statsbombr",
    "name": "StatsBombR",
    "url": "https://github.com/hudl/StatsBombR",
    "type": "library",
    "description": "Official R package to stream StatsBomb data from the API or the free open-data repository.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": null,
    "stats": {
      "xg": true,
      "event_data": true,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "hudl/StatsBombR",
    "github_stars": 312,
    "github_last_commit": "2026-09-07",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "womens-xg"
    ],
    "notes": null,
    "verified_source": "https://github.com/hudl/StatsBombR",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/hudl/StatsBombR",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1",
        "champions-league",
        "europa-league",
        "mls",
        "argentina-primera",
        "world-cup",
        "euro",
        "copa-america",
        "nwsl",
        "wsl",
        "liga-f",
        "frauen-bundesliga",
        "womens-world-cup",
        "womens-euro"
      ],
      "data_types": [
        "xg",
        "event-data",
        "match-results",
        "lineups"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1",
            "champions-league",
            "europa-league",
            "world-cup",
            "womens-world-cup",
            "euro",
            "womens-euro",
            "copa-america",
            "mls",
            "nwsl",
            "wsl",
            "liga-f",
            "frauen-bundesliga",
            "argentina-primera"
          ],
          "types": [
            "event-data",
            "xg",
            "lineups",
            "match-results"
          ],
          "access": "free",
          "note": "Selected seasons only, mostly historical: e.g. Premier League 2003/04 and 2015/16, La Liga 2004/05-2020/21 (Messi era), Champions League finals, Europa League 1988/89, Argentina 1981 and 1997/98, World Cup 2018 and 2022, Euro 2020 and 2024, Copa América 2024, MLS 2023, NWSL 2018 and 2023, WSL 2018/19-2020/21 and 2023/24, Liga F, Frauen-Bundesliga and Serie A Women 2023/24, Women's World Cup 2019 and 2023, Women's Euro 2022 and 2025.",
          "via": "StatsBomb Open Data"
        }
      ],
      "evidence": [
        "https://github.com/hudl/StatsBombR",
        "https://github.com/hudl/open-data",
        "https://raw.githubusercontent.com/hudl/open-data/master/data/competitions.json"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "scraperfc",
    "name": "ScraperFC",
    "url": "https://github.com/oseymour/ScraperFC",
    "type": "library",
    "description": "Python package for scraping soccer data from Capology, ClubElo, FBref, Sofascore, Transfermarkt and Understat.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "GPL-3.0",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "oseymour/ScraperFC",
    "github_stars": 417,
    "github_last_commit": "2026-04-08",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": "Respect each source's terms.",
    "verified_source": "https://github.com/oseymour/ScraperFC",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/oseymour/ScraperFC",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "scraper",
      "competitions": [],
      "data_types": [
        "match-results",
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/oseymour/ScraperFC"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "understatapi",
    "name": "understatAPI",
    "url": "https://github.com/collinb9/understatAPI",
    "type": "library",
    "description": "Python package for scraping data from understat.com.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": true,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "collinb9/understatAPI",
    "github_stars": 48,
    "github_last_commit": "2026-02-21",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/collinb9/understatAPI",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/collinb9/understatAPI",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "scraper",
      "competitions": [
        "premier-league",
        "la-liga",
        "serie-a",
        "bundesliga",
        "ligue-1"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "premier-league",
            "la-liga",
            "serie-a",
            "bundesliga",
            "ligue-1"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": "Understat"
        }
      ],
      "evidence": [
        "https://github.com/collinb9/understatAPI"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "floodlight",
    "name": "floodlight",
    "url": "https://github.com/floodlight-sports/floodlight",
    "type": "library",
    "description": "Python package for streamlined analysis of sports tracking and event data.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "floodlight-sports/floodlight",
    "github_stars": 133,
    "github_last_commit": "2026-05-04",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/floodlight-sports/floodlight",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/floodlight-sports/floodlight",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "event-data",
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/floodlight-sports/floodlight"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "databallpy",
    "name": "databallpy",
    "url": "https://github.com/Alek050/databallpy",
    "type": "library",
    "description": "Python package to read, preprocess, visualise and synchronise soccer event and tracking data.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": true,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "Alek050/databallpy",
    "github_stars": 106,
    "github_last_commit": "2026-10-16",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/Alek050/databallpy",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/Alek050/databallpy",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "event-data",
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/Alek050/databallpy"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "ggsoccer",
    "name": "ggsoccer",
    "url": "https://github.com/Torvaney/ggsoccer",
    "type": "library",
    "description": "R package for plotting soccer event data on pitches with ggplot2.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "Torvaney/ggsoccer",
    "github_stars": 206,
    "github_last_commit": "2024-10-07",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/Torvaney/ggsoccer",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/Torvaney/ggsoccer",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://github.com/Torvaney/ggsoccer"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Visualisation only."
    }
  },
  {
    "slug": "itscalledsoccer",
    "name": "itscalledsoccer",
    "url": "https://github.com/American-Soccer-Analysis/itscalledsoccer",
    "type": "library",
    "description": "Python wrapper for the American Soccer Analysis API (MLS, NWSL, USL, MLS Next Pro).",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": true,
    "top5": null,
    "stats": {
      "xg": true,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": true,
    "spanish": null,
    "github_repo": "American-Soccer-Analysis/itscalledsoccer",
    "github_stars": 61,
    "github_last_commit": "2026-10-10",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "womens-xg"
    ],
    "notes": null,
    "verified_source": "https://github.com/American-Soccer-Analysis/itscalledsoccer",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/American-Soccer-Analysis/itscalledsoccer",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [
        "mls",
        "usl-championship",
        "nwsl"
      ],
      "data_types": [
        "xg",
        "match-results",
        "player-stats"
      ],
      "cells": [
        {
          "competitions": [
            "mls",
            "nwsl",
            "usl-championship"
          ],
          "types": [
            "xg",
            "player-stats",
            "match-results"
          ],
          "access": "free",
          "note": null,
          "via": "American Soccer Analysis API"
        }
      ],
      "evidence": [
        "https://github.com/American-Soccer-Analysis/itscalledsoccer"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "lanusstats",
    "name": "LanusStats",
    "url": "https://github.com/federicorabanos/LanusStats",
    "type": "library",
    "description": "Spanish-language Python scraping library for FBref, FotMob, SofaScore, 365Scores and Transfermarkt.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": true,
    "github_repo": "federicorabanos/LanusStats",
    "github_stars": 137,
    "github_last_commit": "2026-10-03",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": "Docs in Spanish. Respect each source's terms.",
    "verified_source": "https://github.com/federicorabanos/LanusStats",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/federicorabanos/LanusStats",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "scraper",
      "competitions": [],
      "data_types": [
        "player-stats"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/federicorabanos/LanusStats"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "unravelsports",
    "name": "unravelsports",
    "url": "https://github.com/UnravelSports/unravelsports",
    "type": "library",
    "description": "Python package with intermediate steps to turn raw sports (tracking) data into analysis-ready information, incl. graph neural network tooling.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MPL-2.0",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "UnravelSports/unravelsports",
    "github_stars": 249,
    "github_last_commit": "2026-01-16",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/UnravelSports/unravelsports",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/UnravelSports/unravelsports",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/UnravelSports/unravelsports"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "matplotsoccer",
    "name": "matplotsoccer",
    "url": "https://github.com/TomDecroos/matplotsoccer",
    "type": "library",
    "description": "Python package to visualise soccer event data.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "TomDecroos/matplotsoccer",
    "github_stars": 147,
    "github_last_commit": "2020-04-10",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/TomDecroos/matplotsoccer",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/TomDecroos/matplotsoccer",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://github.com/TomDecroos/matplotsoccer"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Visualisation only."
    }
  },
  {
    "slug": "d3-soccer",
    "name": "d3-soccer",
    "url": "https://github.com/probberechts/d3-soccer",
    "type": "library",
    "description": "D3.js plugin for visualising event-stream soccer data in the browser.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "BSD-3-Clause",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "probberechts/d3-soccer",
    "github_stars": 78,
    "github_last_commit": "2024-12-07",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/probberechts/d3-soccer",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/probberechts/d3-soccer",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://github.com/probberechts/d3-soccer"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Visualisation only."
    }
  },
  {
    "slug": "laurieontracking",
    "name": "LaurieOnTracking",
    "url": "https://github.com/Friends-of-Tracking-Data-FoTD/LaurieOnTracking",
    "type": "library",
    "description": "Tutorial code (Friends of Tracking) for working with Metrica tracking data in Python.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "Friends-of-Tracking-Data-FoTD/LaurieOnTracking",
    "github_stars": 362,
    "github_last_commit": "2021-06-15",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "learning"
    ],
    "notes": null,
    "verified_source": "https://github.com/Friends-of-Tracking-Data-FoTD/LaurieOnTracking",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/Friends-of-Tracking-Data-FoTD/LaurieOnTracking",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/Friends-of-Tracking-Data-FoTD/LaurieOnTracking"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  },
  {
    "slug": "soccer-analytics-handbook",
    "name": "Soccer Analytics Handbook",
    "url": "https://github.com/devinpleuler/analytics-handbook",
    "type": "library",
    "description": "Getting-started guide and notebooks for soccer analytics.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "MIT",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "devinpleuler/analytics-handbook",
    "github_stars": 1713,
    "github_last_commit": "2024-05-26",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "learning"
    ],
    "notes": null,
    "verified_source": "https://github.com/devinpleuler/analytics-handbook",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/devinpleuler/analytics-handbook",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://github.com/devinpleuler/analytics-handbook"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Learning resource."
    }
  },
  {
    "slug": "awesome-soccer-analytics",
    "name": "awesome-soccer-analytics",
    "url": "https://github.com/matiasmascioto/awesome-soccer-analytics",
    "type": "library",
    "description": "Curated list of soccer-analytics resources (not actively updated).",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "CC0-1.0",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "matiasmascioto/awesome-soccer-analytics",
    "github_stars": 633,
    "github_last_commit": "2020-09-27",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "learning"
    ],
    "notes": null,
    "verified_source": "https://github.com/matiasmascioto/awesome-soccer-analytics",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/matiasmascioto/awesome-soccer-analytics",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://github.com/matiasmascioto/awesome-soccer-analytics"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Learning resource."
    }
  },
  {
    "slug": "edd-webster-football-analytics",
    "name": "Edd Webster football_analytics",
    "url": "https://github.com/eddwebster/football_analytics",
    "type": "library",
    "description": "Collection of football analytics projects and a curated list of public resources.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": null,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": null,
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "eddwebster/football_analytics",
    "github_stars": 2813,
    "github_last_commit": "2025-10-09",
    "github_archived": false,
    "url_status": "ok",
    "tags": [
      "learning"
    ],
    "notes": null,
    "verified_source": "https://github.com/eddwebster/football_analytics",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/eddwebster/football_analytics",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [],
      "cells": [],
      "evidence": [
        "https://github.com/eddwebster/football_analytics"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": "Learning resource."
    }
  },
  {
    "slug": "socceranimate-dato-futbol",
    "name": "soccerAnimate (Dato-Futbol)",
    "url": "https://github.com/Dato-Futbol/soccerAnimate",
    "type": "library",
    "description": "R package by the Spanish-language Dato Fútbol project for animating tracking data.",
    "leagues": [],
    "liga_mx": null,
    "liga_mx_femenil": null,
    "womens": null,
    "top5": null,
    "stats": {
      "xg": null,
      "event_data": null,
      "tracking": true,
      "basic": null
    },
    "pricing": "Free / open source",
    "free_tier": true,
    "license": "GPL-2.0",
    "commercial_use": null,
    "api": null,
    "spanish": null,
    "github_repo": "Dato-Futbol/soccerAnimate",
    "github_stars": 132,
    "github_last_commit": "2024-03-12",
    "github_archived": false,
    "url_status": "ok",
    "tags": [],
    "notes": null,
    "verified_source": "https://github.com/Dato-Futbol/soccerAnimate",
    "verification_status": "verified",
    "last_verified": "2026-10-18",
    "url_final": "https://github.com/Dato-Futbol/soccerAnimate",
    "url_checked": "2026-10-18",
    "coverage": {
      "access": "free",
      "format": "library",
      "competitions": [],
      "data_types": [
        "tracking-data"
      ],
      "cells": [],
      "evidence": [
        "https://github.com/Dato-Futbol/soccerAnimate"
      ],
      "checked": "2026-10-19",
      "status": "verified",
      "note": null
    }
  }
]