{
 "meta": {
  "title": "The State of Free Soccer Data 2026",
  "url": "https://sportsdatastack.com/report/state-of-free-soccer-data-2026/",
  "published": "2026-10-27",
  "coverage_checked": "2026-10-19",
  "generated_by": "scripts/report_stats.py",
  "inputs": [
   "data/listings.json",
   "data/taxonomy.json"
  ],
  "note_rules": [
   {
    "class": "historical",
    "regex": "selected seasons|historical",
    "meaning": "Selected past seasons only"
   },
   {
    "class": "historical",
    "regex": "\\b(?:19|20)\\d\\d-(?:19|20)\\d\\d\\b",
    "meaning": "Closed range of past years (ends before the latest edition)"
   },
   {
    "class": "sample",
    "regex": "\\b\\d+ matches\\b",
    "meaning": "A fixed sample of matches"
   },
   {
    "class": "paused",
    "regex": "updates paused",
    "meaning": "Updates paused; not ongoing"
   }
  ],
  "caveat_rules": [
   {
    "caveat": "limited seasons",
    "regex": "limited seasons",
    "meaning": "Free plan has limited seasons; which seasons is not stated"
   }
  ],
  "best_free_rule": "Candidates: listings with free source cells in the need's scope (primary cells only, except Python/R libraries, where via cells are what the library fetches). Score = number of current free (competition x type) cells in scope; ties broken by verified status, API/dataset format, number of data types offered, GitHub stars, then name. If no current free cell exists, the best historical/sample option is shown and flagged."
 },
 "headline": {
  "listings": 85,
  "mapped_sources": 32,
  "cells_covered": 154,
  "cells_total": 234,
  "cells_with_free": 144,
  "cells_with_current_free": 113,
  "xg_free": {
   "premier-league": 7,
   "mls": 6,
   "liga-mx": 3,
   "liga-mx-femenil": 0
  },
  "xg_men_mean": 3.74,
  "xg_women_mean": 1.71,
  "xg_men_current_mean": 3.11,
  "xg_women_current_mean": 0.86,
  "women_xg_without_current_free": 5,
  "women_competitions": 7,
  "event_free_competitions": 18,
  "event_current_free_competitions": 0,
  "event_free_sources": 1,
  "event_zero_source": 8,
  "tracking_free_competitions": 1,
  "tracking_current_free_competitions": 0,
  "tracking_paid_listings": 5,
  "tracking_free_listings": 10,
  "tracking_free_detail": "A-League, SkillCorner Open Data: 10 matches from 2024/25",
  "event_free_source_names": [
   "StatsBomb Open Data"
  ]
 },
 "totals": {
  "listings": 85,
  "by_access": {
   "free": 49,
   "paid": 16,
   "freemium": 16,
   "unknown": 4
  },
  "by_format": {
   "website": 30,
   "api": 15,
   "library": 17,
   "dataset": 9,
   "ai-tool": 9,
   "scraper": 5
  },
  "by_coverage_status": {
   "verified": 75,
   "partial": 8,
   "unverified": 2
  },
  "by_listing_verification_status": {
   "verified": 83,
   "partial": 2
  },
  "by_checked_date": {
   "2026-10-18": 13,
   "2026-10-19": 66,
   "2026-10-26": 6
  },
  "mapped_sources": 32,
  "mapped_sources_by_access": {
   "free": 18,
   "freemium": 11,
   "paid": 3
  },
  "not_counted": {
   "via_only": {
    "n": 6,
    "slugs": [
     "football-data-mcp",
     "itscalledsoccer",
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ]
   },
   "type_level_only": {
    "n": 28,
    "slugs": [
     "databallpy",
     "fbref",
     "floodlight",
     "fut-traffic",
     "hudl-statsbomb",
     "hudl-wyscout",
     "impect-catapult",
     "kickoffapi",
     "kloppy",
     "lanusstats",
     "laurieontracking",
     "metrica-sports",
     "metrica-sports-sample-data",
     "opta-stats-perform",
     "scraperfc",
     "second-spectrum-genius-sports",
     "skillcorner",
     "smarterscout-vantage-fc",
     "socceraction",
     "socceranimate-dato-futbol",
     "thestatsapi",
     "tifolab",
     "touchline",
     "transferroom",
     "twelve-earpiece",
     "unravelsports",
     "worldfootballr",
     "zerozero-api"
    ]
   },
   "enterprise_paid_without_league_list": {
    "n": 9,
    "slugs": [
     "hudl-statsbomb",
     "hudl-wyscout",
     "impect-catapult",
     "metrica-sports",
     "opta-stats-perform",
     "second-spectrum-genius-sports",
     "skillcorner",
     "thestatsapi",
     "transferroom"
    ]
   },
   "outside_map_types": {
    "n": 17,
    "slugs": [
     "analytics-fc",
     "awesome-soccer-analytics",
     "clubelo",
     "d3-soccer",
     "edd-webster-football-analytics",
     "eyeball",
     "football-blueprints",
     "football-docs",
     "ggsoccer",
     "matplotsoccer",
     "mplsoccer",
     "nutmeg",
     "reep",
     "scisports",
     "scout-lab-ai",
     "soccer-analytics-handbook",
     "trumedia"
    ]
   },
   "unverified": {
    "n": 2,
    "slugs": [
     "markstats",
     "sofascore"
    ],
    "notes": {
     "markstats": "JavaScript-only site; coverage could not be read.",
     "sofascore": "Site returned bot protection (403) on 2026-10-18 and 2026-10-19; coverage not verified."
    }
   }
  },
  "leagues": 26,
  "leagues_men": 19,
  "leagues_women": 7,
  "data_types": 9,
  "cells_total": 234,
  "cells_covered": 154,
  "cells_with_free": 144,
  "cells_with_current_free": 113,
  "cells_free_noncurrent_only": 31,
  "cells_paid_only": 10,
  "cells_empty": 80,
  "source_cells_primary": 567,
  "source_cells_via": 213
 },
 "note_classes": [
  {
   "note": "10 matches from 2024/25.",
   "class": "sample",
   "caveat": null,
   "listings": [
    "skillcorner-open-data"
   ]
  },
  {
   "note": "Men's 1930-2022, women's 1991-2019.",
   "class": "historical",
   "caveat": null,
   "listings": [
    "fjelstul-world-cup-database"
   ]
  },
  {
   "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.",
   "class": "historical",
   "caveat": null,
   "listings": [
    "statsbomb-open-data",
    "statsbombpy (via)",
    "statsbombr (via)"
   ]
  },
  {
   "note": "Updates paused; data current to 6 July 2026.",
   "class": "paused",
   "caveat": null,
   "listings": [
    "transfermarkt-datasets"
   ]
  },
  {
   "note": null,
   "class": "current",
   "caveat": null,
   "listings": [
    "american-soccer-analysis",
    "datamb",
    "fotmob",
    "goal-api",
    "itscalledsoccer (via)",
    "liga-femenil-official-site",
    "liga-mx-official-site",
    "openfootball-football-json",
    "opta-analyst",
    "scout-lab-streamlit-app",
    "soccerdata (via)",
    "soccerdonna",
    "thesportsdb",
    "transfermarkt",
    "understat",
    "understatapi (via)",
    "whoscored",
    "xg-lab",
    "xg-stat"
   ]
  },
  {
   "note": "'Extra leagues' files; private use only.",
   "class": "current",
   "caveat": null,
   "listings": [
    "football-data-co-uk"
   ]
  },
  {
   "note": "Basic leaderboards only, no xG (checked 2026-10-18).",
   "class": "current",
   "caveat": null,
   "listings": [
    "fotmob"
   ]
  },
  {
   "note": "FPL section.",
   "class": "current",
   "caveat": null,
   "listings": [
    "opta-analyst"
   ]
  },
  {
   "note": "FPL tools.",
   "class": "current",
   "caveat": null,
   "listings": [
    "scoutingstats-ai"
   ]
  },
  {
   "note": "Free plan is Premier League only.",
   "class": "current",
   "caveat": null,
   "listings": [
    "footystats-api"
   ]
  },
  {
   "note": "Free plan: 100 requests/day, limited seasons. All competitions are in all plans.",
   "class": "current",
   "caveat": "limited seasons",
   "listings": [
    "api-football"
   ]
  },
  {
   "note": "Free tier: 12 competitions, 10 calls/minute, delayed scores.",
   "class": "current",
   "caveat": null,
   "listings": [
    "football-data-org"
   ]
  },
  {
   "note": "Free tier: 5 player profiles/day.",
   "class": "current",
   "caveat": null,
   "listings": [
    "scoutingstats-ai"
   ]
  },
  {
   "note": "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025.",
   "class": "current",
   "caveat": null,
   "listings": [
    "strikerapi"
   ]
  },
  {
   "note": "Full match details incl. lineups added for 2026.",
   "class": "current",
   "caveat": null,
   "listings": [
    "openfootball-worldcup-json"
   ]
  },
  {
   "note": "Results, match stats and closing odds; private use only.",
   "class": "current",
   "caveat": null,
   "listings": [
    "football-data-co-uk"
   ]
  },
  {
   "note": "Seasons 2023/24 to 2025/26.",
   "class": "current",
   "caveat": null,
   "listings": [
    "football-data-mcp (via)"
   ]
  },
  {
   "note": "Sportsbook lines from 2017-18; opening and closing lines from June 2020 (The Odds API).",
   "class": "current",
   "caveat": null,
   "listings": [
    "strikerapi"
   ]
  },
  {
   "note": "Stat leaderboards without xG for this competition.",
   "class": "current",
   "caveat": null,
   "listings": [
    "fotmob"
   ]
  },
  {
   "note": "Team xG tables with non-zero values, free.",
   "class": "current",
   "caveat": null,
   "listings": [
    "footystats"
   ]
  },
  {
   "note": "The Liga MX Femenil xG page exists but every value is 0.00.",
   "class": "current",
   "caveat": null,
   "listings": [
    "footystats"
   ]
  }
 ],
 "by_type": [
  {
   "id": "xg",
   "short": "xG",
   "name": "xG (expected goals)",
   "leagues_covered": 25,
   "leagues_with_free": 25,
   "leagues_with_current_free": 20,
   "leagues_paid_only": 0,
   "leagues_empty": 1,
   "listings_declaring": {
    "free": 11,
    "paid": 5,
    "freemium": 6,
    "unknown": 0
   },
   "listings_declaring_total": 22,
   "listings_declaring_without_cells": 8,
   "mapped_sources": 8,
   "mapped_free_sources": 8,
   "free_source_slugs": [
    "american-soccer-analysis",
    "footystats",
    "fotmob",
    "statsbomb-open-data",
    "strikerapi",
    "understat",
    "xg-lab",
    "xg-stat"
   ],
   "source_cells": {
    "free": 83,
    "paid": 0,
    "current_free": 65
   }
  },
  {
   "id": "event-data",
   "short": "Events",
   "name": "Event data",
   "leagues_covered": 18,
   "leagues_with_free": 18,
   "leagues_with_current_free": 0,
   "leagues_paid_only": 0,
   "leagues_empty": 8,
   "listings_declaring": {
    "free": 9,
    "paid": 5,
    "freemium": 0,
    "unknown": 0
   },
   "listings_declaring_total": 14,
   "listings_declaring_without_cells": 10,
   "mapped_sources": 2,
   "mapped_free_sources": 1,
   "free_source_slugs": [
    "statsbomb-open-data"
   ],
   "source_cells": {
    "free": 18,
    "paid": 1,
    "current_free": 0
   }
  },
  {
   "id": "tracking-data",
   "short": "Tracking",
   "name": "Tracking data",
   "leagues_covered": 1,
   "leagues_with_free": 1,
   "leagues_with_current_free": 0,
   "leagues_paid_only": 0,
   "leagues_empty": 25,
   "listings_declaring": {
    "free": 10,
    "paid": 5,
    "freemium": 0,
    "unknown": 0
   },
   "listings_declaring_total": 15,
   "listings_declaring_without_cells": 14,
   "mapped_sources": 1,
   "mapped_free_sources": 1,
   "free_source_slugs": [
    "skillcorner-open-data"
   ],
   "source_cells": {
    "free": 1,
    "paid": 0,
    "current_free": 0
   }
  },
  {
   "id": "match-results",
   "short": "Results",
   "name": "Match results & fixtures",
   "leagues_covered": 26,
   "leagues_with_free": 26,
   "leagues_with_current_free": 26,
   "leagues_paid_only": 0,
   "leagues_empty": 0,
   "listings_declaring": {
    "free": 21,
    "freemium": 11,
    "paid": 5,
    "unknown": 0
   },
   "listings_declaring_total": 37,
   "listings_declaring_without_cells": 8,
   "mapped_sources": 24,
   "mapped_free_sources": 21,
   "free_source_slugs": [
    "american-soccer-analysis",
    "api-football",
    "fjelstul-world-cup-database",
    "football-data-co-uk",
    "football-data-org",
    "footystats",
    "footystats-api",
    "fotmob",
    "goal-api",
    "liga-femenil-official-site",
    "liga-mx-official-site",
    "openfootball-football-json",
    "openfootball-worldcup-json",
    "opta-analyst",
    "statsbomb-open-data",
    "strikerapi",
    "thesportsdb",
    "transfermarkt",
    "transfermarkt-datasets",
    "understat",
    "xg-lab"
   ],
   "source_cells": {
    "free": 168,
    "paid": 42,
    "current_free": 145
   }
  },
  {
   "id": "player-stats",
   "short": "Player stats",
   "name": "Player stats",
   "leagues_covered": 25,
   "leagues_with_free": 24,
   "leagues_with_current_free": 24,
   "leagues_paid_only": 1,
   "leagues_empty": 1,
   "listings_declaring": {
    "free": 18,
    "freemium": 11,
    "paid": 5,
    "unknown": 1
   },
   "listings_declaring_total": 35,
   "listings_declaring_without_cells": 16,
   "mapped_sources": 15,
   "mapped_free_sources": 14,
   "free_source_slugs": [
    "american-soccer-analysis",
    "datamb",
    "footystats-api",
    "fotmob",
    "liga-femenil-official-site",
    "liga-mx-official-site",
    "opta-analyst",
    "scout-lab-streamlit-app",
    "scoutingstats-ai",
    "strikerapi",
    "understat",
    "whoscored",
    "xg-lab",
    "xg-stat"
   ],
   "source_cells": {
    "free": 101,
    "paid": 24,
    "current_free": 101
   }
  },
  {
   "id": "lineups",
   "short": "Lineups",
   "name": "Lineups",
   "leagues_covered": 26,
   "leagues_with_free": 23,
   "leagues_with_current_free": 16,
   "leagues_paid_only": 3,
   "leagues_empty": 0,
   "listings_declaring": {
    "freemium": 7,
    "free": 6,
    "paid": 2,
    "unknown": 0
   },
   "listings_declaring_total": 15,
   "listings_declaring_without_cells": 7,
   "mapped_sources": 6,
   "mapped_free_sources": 4,
   "free_source_slugs": [
    "openfootball-worldcup-json",
    "statsbomb-open-data",
    "strikerapi",
    "transfermarkt-datasets"
   ],
   "source_cells": {
    "free": 37,
    "paid": 32,
    "current_free": 16
   }
  },
  {
   "id": "transfers-market-values",
   "short": "Transfers",
   "name": "Transfers & market values",
   "leagues_covered": 12,
   "leagues_with_free": 12,
   "leagues_with_current_free": 12,
   "leagues_paid_only": 0,
   "leagues_empty": 14,
   "listings_declaring": {
    "freemium": 1,
    "free": 4,
    "paid": 2,
    "unknown": 0
   },
   "listings_declaring_total": 7,
   "listings_declaring_without_cells": 4,
   "mapped_sources": 2,
   "mapped_free_sources": 2,
   "free_source_slugs": [
    "soccerdonna",
    "transfermarkt"
   ],
   "source_cells": {
    "free": 12,
    "paid": 0,
    "current_free": 12
   }
  },
  {
   "id": "odds",
   "short": "Odds",
   "name": "Betting odds",
   "leagues_covered": 20,
   "leagues_with_free": 14,
   "leagues_with_current_free": 14,
   "leagues_paid_only": 6,
   "leagues_empty": 6,
   "listings_declaring": {
    "freemium": 6,
    "free": 2,
    "paid": 2,
    "unknown": 0
   },
   "listings_declaring_total": 10,
   "listings_declaring_without_cells": 7,
   "mapped_sources": 3,
   "mapped_free_sources": 2,
   "free_source_slugs": [
    "football-data-co-uk",
    "strikerapi"
   ],
   "source_cells": {
    "free": 26,
    "paid": 20,
    "current_free": 26
   }
  },
  {
   "id": "fantasy",
   "short": "Fantasy",
   "name": "Fantasy football",
   "leagues_covered": 1,
   "leagues_with_free": 1,
   "leagues_with_current_free": 1,
   "leagues_paid_only": 0,
   "leagues_empty": 25,
   "listings_declaring": {
    "free": 1,
    "freemium": 1,
    "paid": 1,
    "unknown": 0
   },
   "listings_declaring_total": 3,
   "listings_declaring_without_cells": 1,
   "mapped_sources": 2,
   "mapped_free_sources": 2,
   "free_source_slugs": [
    "opta-analyst",
    "scoutingstats-ai"
   ],
   "source_cells": {
    "free": 2,
    "paid": 0,
    "current_free": 2
   }
  }
 ],
 "xg": {
  "by_competition": [
   {
    "id": "premier-league",
    "short": "Premier League",
    "gender": "men",
    "group": "Europe: top 5",
    "free": 7,
    "current_free": 6,
    "paid": 0,
    "n": 7,
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "la-liga",
    "short": "La Liga",
    "gender": "men",
    "group": "Europe: top 5",
    "free": 7,
    "current_free": 6,
    "paid": 0,
    "n": 7,
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "serie-a",
    "short": "Serie A",
    "gender": "men",
    "group": "Europe: top 5",
    "free": 7,
    "current_free": 6,
    "paid": 0,
    "n": 7,
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "bundesliga",
    "short": "Bundesliga",
    "gender": "men",
    "group": "Europe: top 5",
    "free": 7,
    "current_free": 6,
    "paid": 0,
    "n": 7,
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "ligue-1",
    "short": "Ligue 1",
    "gender": "men",
    "group": "Europe: top 5",
    "free": 7,
    "current_free": 6,
    "paid": 0,
    "n": 7,
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "mls",
    "short": "MLS",
    "gender": "men",
    "group": "Americas",
    "free": 6,
    "current_free": 5,
    "paid": 0,
    "n": 6,
    "free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "nwsl",
    "short": "NWSL",
    "gender": "women",
    "group": "Women",
    "free": 5,
    "current_free": 4,
    "paid": 0,
    "n": 5,
    "free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "champions-league",
    "short": "Champions League",
    "gender": "men",
    "group": "Club cups",
    "free": 4,
    "current_free": 3,
    "paid": 0,
    "n": 4,
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "championship",
    "short": "Championship",
    "gender": "men",
    "group": "Europe: other",
    "free": 3,
    "current_free": 3,
    "paid": 0,
    "n": 3,
    "free_sources": [
     "fotmob",
     "strikerapi",
     "xg-stat"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "liga-mx",
    "short": "Liga MX",
    "gender": "men",
    "group": "Americas",
    "free": 3,
    "current_free": 3,
    "paid": 0,
    "n": 3,
    "free_sources": [
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "europa-league",
    "short": "Europa League",
    "gender": "men",
    "group": "Club cups",
    "free": 3,
    "current_free": 2,
    "paid": 0,
    "n": 3,
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "argentina-primera",
    "short": "Argentine Primera",
    "gender": "men",
    "group": "Americas",
    "free": 3,
    "current_free": 2,
    "paid": 0,
    "n": 3,
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "world-cup",
    "short": "World Cup",
    "gender": "men",
    "group": "International",
    "free": 3,
    "current_free": 2,
    "paid": 0,
    "n": 3,
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "xg-lab"
    ],
    "current_free_sources": [
     "fotmob",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "wsl",
    "short": "WSL",
    "gender": "women",
    "group": "Women",
    "free": 3,
    "current_free": 2,
    "paid": 0,
    "n": 3,
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "eredivisie",
    "short": "Eredivisie",
    "gender": "men",
    "group": "Europe: other",
    "free": 2,
    "current_free": 2,
    "paid": 0,
    "n": 2,
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "primeira-liga",
    "short": "Primeira Liga",
    "gender": "men",
    "group": "Europe: other",
    "free": 2,
    "current_free": 2,
    "paid": 0,
    "n": 2,
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "brasileirao",
    "short": "Brasileirão",
    "gender": "men",
    "group": "Americas",
    "free": 2,
    "current_free": 2,
    "paid": 0,
    "n": 2,
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "copa-america",
    "short": "Copa América",
    "gender": "men",
    "group": "International",
    "free": 2,
    "current_free": 1,
    "paid": 0,
    "n": 2,
    "free_sources": [
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "usl-championship",
    "short": "USL Championship",
    "gender": "men",
    "group": "Americas",
    "free": 1,
    "current_free": 1,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "american-soccer-analysis"
    ],
    "current_free_sources": [
     "american-soccer-analysis"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "a-league",
    "short": "A-League",
    "gender": "men",
    "group": "Asia-Pacific",
    "free": 1,
    "current_free": 1,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": []
   },
   {
    "id": "euro",
    "short": "Euro",
    "gender": "men",
    "group": "International",
    "free": 1,
    "current_free": 0,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "liga-f",
    "short": "Liga F",
    "gender": "women",
    "group": "Women",
    "free": 1,
    "current_free": 0,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "frauen-bundesliga",
    "short": "Frauen-Bundesliga",
    "gender": "women",
    "group": "Women",
    "free": 1,
    "current_free": 0,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "womens-world-cup",
    "short": "Women's World Cup",
    "gender": "women",
    "group": "Women",
    "free": 1,
    "current_free": 0,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "womens-euro",
    "short": "Women's Euro",
    "gender": "women",
    "group": "Women",
    "free": 1,
    "current_free": 0,
    "paid": 0,
    "n": 1,
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": []
   },
   {
    "id": "liga-mx-femenil",
    "short": "Liga MX Femenil",
    "gender": "women",
    "group": "Women",
    "free": 0,
    "current_free": 0,
    "paid": 0,
    "n": 0,
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": []
   }
  ],
  "by_gender": {
   "men": {
    "any_free": {
     "n": 19,
     "mean": 3.74,
     "median": 3,
     "total": 71
    },
    "current_free": {
     "n": 19,
     "mean": 3.11,
     "median": 2,
     "total": 59
    },
    "competitions_zero_free": [],
    "competitions_zero_current_free": [
     "euro"
    ]
   },
   "women": {
    "any_free": {
     "n": 7,
     "mean": 1.71,
     "median": 1,
     "total": 12
    },
    "current_free": {
     "n": 7,
     "mean": 0.86,
     "median": 0,
     "total": 6
    },
    "competitions_zero_free": [
     "liga-mx-femenil"
    ],
    "competitions_zero_current_free": [
     "liga-f",
     "frauen-bundesliga",
     "womens-world-cup",
     "womens-euro",
     "liga-mx-femenil"
    ]
   }
  },
  "competitions_with_free": 25,
  "competitions_with_current_free": 20,
  "competitions_zero_free": [
   "liga-mx-femenil"
  ],
  "competitions_zero_current_free": [
   "euro",
   "liga-f",
   "frauen-bundesliga",
   "womens-world-cup",
   "womens-euro",
   "liga-mx-femenil"
  ],
  "competitions_no_source": [
   "liga-mx-femenil"
  ],
  "free_xg_sources": [
   "american-soccer-analysis",
   "footystats",
   "fotmob",
   "statsbomb-open-data",
   "strikerapi",
   "understat",
   "xg-lab",
   "xg-stat"
  ],
  "current_free_xg_sources": [
   "american-soccer-analysis",
   "footystats",
   "fotmob",
   "strikerapi",
   "understat",
   "xg-lab",
   "xg-stat"
  ],
  "women": {
   "competitions": 7,
   "with_current_free": [
    "nwsl",
    "wsl"
   ],
   "without_current_free": [
    "liga-f",
    "frauen-bundesliga",
    "liga-mx-femenil",
    "womens-world-cup",
    "womens-euro"
   ],
   "historical_only": [
    "liga-f",
    "frauen-bundesliga",
    "womens-world-cup",
    "womens-euro"
   ],
   "no_free_at_all": [
    "liga-mx-femenil"
   ]
  },
  "liga_mx_femenil": {
   "sources": 0,
   "free": 0,
   "paid": 0,
   "footystats_note": "The Liga MX Femenil xG page exists but every value is 0.00.",
   "footystats_checked": "2026-10-19",
   "fotmob_note": "Basic leaderboards only, no xG (checked 2026-10-18)."
  },
  "type_level_only": [
   "dribble",
   "football-data-org",
   "hudl-statsbomb",
   "impect-catapult",
   "kickoffapi",
   "opta-stats-perform",
   "sportmonks-football-api",
   "thestatsapi"
  ]
 },
 "event": {
  "competitions_with_any_source": 18,
  "competitions_with_free": 18,
  "competitions_with_current_free": 0,
  "free_sources": [
   "statsbomb-open-data"
  ],
  "free_source_classes": [
   "historical"
  ],
  "paid_sources": [
   "dribble"
  ],
  "competitions_zero_source": [
   "championship",
   "eredivisie",
   "primeira-liga",
   "usl-championship",
   "liga-mx",
   "brasileirao",
   "a-league",
   "liga-mx-femenil"
  ],
  "competitions_zero_free": [
   "championship",
   "eredivisie",
   "primeira-liga",
   "usl-championship",
   "liga-mx",
   "brasileirao",
   "a-league",
   "liga-mx-femenil"
  ],
  "competitions_zero_current_free": [
   "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"
  ],
  "type_level_only": [
   "databallpy",
   "floodlight",
   "hudl-statsbomb",
   "hudl-wyscout",
   "impect-catapult",
   "kloppy",
   "metrica-sports-sample-data",
   "opta-stats-perform",
   "socceraction",
   "soccerdata"
  ],
  "free_source_names": [
   "StatsBomb Open Data"
  ]
 },
 "tracking": {
  "listings_declaring": {
   "free": 10,
   "paid": 5,
   "freemium": 0,
   "unknown": 0
  },
  "listings": [
   {
    "slug": "databallpy",
    "name": "databallpy",
    "access": "free",
    "format": "library",
    "kind": "library",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "floodlight",
    "name": "floodlight",
    "access": "free",
    "format": "library",
    "kind": "library",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "fut-traffic",
    "name": "Fut Traffic",
    "access": "free",
    "format": "ai-tool",
    "kind": "own-video",
    "has_league_cells": false,
    "note": "Tracking data (distance and speed per player) derived from your own panoramic footage; no league data."
   },
   {
    "slug": "hudl-statsbomb",
    "name": "Hudl StatsBomb",
    "access": "paid",
    "format": "api",
    "kind": "league-data",
    "has_league_cells": false,
    "note": "Enterprise, 300+ competitions; 360 data for 40+ key leagues. No public per-league list."
   },
   {
    "slug": "kloppy",
    "name": "kloppy",
    "access": "free",
    "format": "library",
    "kind": "library",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "laurieontracking",
    "name": "LaurieOnTracking",
    "access": "free",
    "format": "library",
    "kind": "library",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "metrica-sports",
    "name": "Metrica Sports",
    "access": "paid",
    "format": "website",
    "kind": "league-data",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "metrica-sports-sample-data",
    "name": "Metrica Sports Sample Data",
    "access": "free",
    "format": "dataset",
    "kind": "sample",
    "has_league_cells": false,
    "note": "Three anonymised matches; competition not disclosed."
   },
   {
    "slug": "opta-stats-perform",
    "name": "Opta (Stats Perform)",
    "access": "paid",
    "format": "api",
    "kind": "league-data",
    "has_league_cells": false,
    "note": "Enterprise, 3,900+ competitions; no public per-league list (site blocked automated checks on 2026-10-19)."
   },
   {
    "slug": "second-spectrum-genius-sports",
    "name": "Second Spectrum (Genius Sports)",
    "access": "paid",
    "format": "website",
    "kind": "league-data",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "skillcorner",
    "name": "SkillCorner",
    "access": "paid",
    "format": "website",
    "kind": "league-data",
    "has_league_cells": false,
    "note": "150+ competitions; no public per-league list."
   },
   {
    "slug": "skillcorner-open-data",
    "name": "SkillCorner Open Data",
    "access": "free",
    "format": "dataset",
    "kind": "sample",
    "has_league_cells": true,
    "note": "10 matches from 2024/25."
   },
   {
    "slug": "socceranimate-dato-futbol",
    "name": "soccerAnimate (Dato-Futbol)",
    "access": "free",
    "format": "library",
    "kind": "library",
    "has_league_cells": false,
    "note": null
   },
   {
    "slug": "touchline",
    "name": "TouchLine",
    "access": "free",
    "format": "ai-tool",
    "kind": "own-video",
    "has_league_cells": false,
    "note": "Tracking data derived from your own match video; no league data. Accuracy in metres not independently validated."
   },
   {
    "slug": "unravelsports",
    "name": "unravelsports",
    "access": "free",
    "format": "library",
    "kind": "library",
    "has_league_cells": false,
    "note": null
   }
  ],
  "competitions_with_any_cell": [
   "a-league"
  ],
  "competitions_with_free": [
   "a-league"
  ],
  "competitions_with_current_free": [],
  "competitions_with_paid_cell": [],
  "kinds": {
   "league-data": {
    "free": 0,
    "freemium": 0,
    "paid": 5,
    "unknown": 0
   },
   "sample": {
    "free": 2,
    "freemium": 0,
    "paid": 0,
    "unknown": 0
   },
   "own-video": {
    "free": 2,
    "freemium": 0,
    "paid": 0,
    "unknown": 0
   },
   "library": {
    "free": 6,
    "freemium": 0,
    "paid": 0,
    "unknown": 0
   }
  },
  "free_cells_detail": [
   {
    "league": "a-league",
    "short": "A-League",
    "slug": "skillcorner-open-data",
    "name": "SkillCorner Open Data",
    "class": "sample",
    "note": "10 matches from 2024/25.",
    "matches": 10
   }
  ],
  "free_cell_notes": {
   "a-league": {
    "skillcorner-open-data": "10 matches from 2024/25."
   }
  }
 },
 "gaps": {
  "rule": "Key types only (xG, event, tracking, player stats). Ranked: no source at all, then paid only, then free only as historical/sample/paused data; within a tier by type (xG, events, tracking, player stats) then competition order.",
  "ranked": [
   {
    "league": "liga-mx-femenil",
    "short": "Liga MX Femenil",
    "gender": "women",
    "type": "xg",
    "type_short": "xG",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "championship",
    "short": "Championship",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "eredivisie",
    "short": "Eredivisie",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "primeira-liga",
    "short": "Primeira Liga",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "usl-championship",
    "short": "USL Championship",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "liga-mx",
    "short": "Liga MX",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "brasileirao",
    "short": "Brasileirão",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "a-league",
    "short": "A-League",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "liga-mx-femenil",
    "short": "Liga MX Femenil",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "premier-league",
    "short": "Premier League",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "la-liga",
    "short": "La Liga",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "serie-a",
    "short": "Serie A",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "bundesliga",
    "short": "Bundesliga",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "ligue-1",
    "short": "Ligue 1",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "championship",
    "short": "Championship",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "eredivisie",
    "short": "Eredivisie",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "primeira-liga",
    "short": "Primeira Liga",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "champions-league",
    "short": "Champions League",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "europa-league",
    "short": "Europa League",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "mls",
    "short": "MLS",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "usl-championship",
    "short": "USL Championship",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "liga-mx",
    "short": "Liga MX",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "brasileirao",
    "short": "Brasileirão",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "argentina-primera",
    "short": "Argentine Primera",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "world-cup",
    "short": "World Cup",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "euro",
    "short": "Euro",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "copa-america",
    "short": "Copa América",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "nwsl",
    "short": "NWSL",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "wsl",
    "short": "WSL",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "liga-f",
    "short": "Liga F",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "frauen-bundesliga",
    "short": "Frauen-Bundesliga",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "liga-mx-femenil",
    "short": "Liga MX Femenil",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "womens-world-cup",
    "short": "Women's World Cup",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "womens-euro",
    "short": "Women's Euro",
    "gender": "women",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "womens-euro",
    "short": "Women's Euro",
    "gender": "women",
    "type": "player-stats",
    "type_short": "Player stats",
    "state": "empty",
    "n": 0,
    "free": 0,
    "paid_sources": [],
    "noncurrent_free": {}
   },
   {
    "league": "euro",
    "short": "Euro",
    "gender": "men",
    "type": "player-stats",
    "type_short": "Player stats",
    "state": "paid-only",
    "n": 1,
    "free": 0,
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "noncurrent_free": {}
   },
   {
    "league": "euro",
    "short": "Euro",
    "gender": "men",
    "type": "xg",
    "type_short": "xG",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "liga-f",
    "short": "Liga F",
    "gender": "women",
    "type": "xg",
    "type_short": "xG",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "frauen-bundesliga",
    "short": "Frauen-Bundesliga",
    "gender": "women",
    "type": "xg",
    "type_short": "xG",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "womens-world-cup",
    "short": "Women's World Cup",
    "gender": "women",
    "type": "xg",
    "type_short": "xG",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "womens-euro",
    "short": "Women's Euro",
    "gender": "women",
    "type": "xg",
    "type_short": "xG",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "premier-league",
    "short": "Premier League",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 2,
    "free": 1,
    "paid_sources": [
     "dribble"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "la-liga",
    "short": "La Liga",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "serie-a",
    "short": "Serie A",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "bundesliga",
    "short": "Bundesliga",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "ligue-1",
    "short": "Ligue 1",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "champions-league",
    "short": "Champions League",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "europa-league",
    "short": "Europa League",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "mls",
    "short": "MLS",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "argentina-primera",
    "short": "Argentine Primera",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "world-cup",
    "short": "World Cup",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "euro",
    "short": "Euro",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "copa-america",
    "short": "Copa América",
    "gender": "men",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "nwsl",
    "short": "NWSL",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "wsl",
    "short": "WSL",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "liga-f",
    "short": "Liga F",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "frauen-bundesliga",
    "short": "Frauen-Bundesliga",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "womens-world-cup",
    "short": "Women's World Cup",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "womens-euro",
    "short": "Women's Euro",
    "gender": "women",
    "type": "event-data",
    "type_short": "Events",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    }
   },
   {
    "league": "a-league",
    "short": "A-League",
    "gender": "men",
    "type": "tracking-data",
    "type_short": "Tracking",
    "state": "free-noncurrent-only",
    "n": 1,
    "free": 1,
    "paid_sources": [],
    "noncurrent_free": {
     "skillcorner-open-data": "sample"
    }
   }
  ],
  "counts_by_type": {
   "xg": {
    "empty": 1,
    "paid-only": 0,
    "free-noncurrent-only": 5
   },
   "event-data": {
    "empty": 8,
    "paid-only": 0,
    "free-noncurrent-only": 18
   },
   "tracking-data": {
    "empty": 25,
    "paid-only": 0,
    "free-noncurrent-only": 1
   },
   "player-stats": {
    "empty": 1,
    "paid-only": 1,
    "free-noncurrent-only": 0
   }
  },
  "all_types": {
   "empty": 80,
   "paid_only": 10,
   "free_noncurrent_only": 31
  },
  "leagues_by_empty_key_cells": [
   {
    "league": "womens-euro",
    "short": "Women's Euro",
    "empty_key_types": [
     "tracking-data",
     "player-stats"
    ],
    "no_current_free_key_types": [
     "xg",
     "event-data",
     "tracking-data",
     "player-stats"
    ]
   },
   {
    "league": "euro",
    "short": "Euro",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "xg",
     "event-data",
     "tracking-data",
     "player-stats"
    ]
   },
   {
    "league": "liga-mx-femenil",
    "short": "Liga MX Femenil",
    "empty_key_types": [
     "xg",
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "xg",
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "liga-f",
    "short": "Liga F",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "xg",
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "frauen-bundesliga",
    "short": "Frauen-Bundesliga",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "xg",
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "womens-world-cup",
    "short": "Women's World Cup",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "xg",
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "championship",
    "short": "Championship",
    "empty_key_types": [
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "eredivisie",
    "short": "Eredivisie",
    "empty_key_types": [
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "primeira-liga",
    "short": "Primeira Liga",
    "empty_key_types": [
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "usl-championship",
    "short": "USL Championship",
    "empty_key_types": [
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "liga-mx",
    "short": "Liga MX",
    "empty_key_types": [
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "brasileirao",
    "short": "Brasileirão",
    "empty_key_types": [
     "event-data",
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "premier-league",
    "short": "Premier League",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "la-liga",
    "short": "La Liga",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "serie-a",
    "short": "Serie A",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "bundesliga",
    "short": "Bundesliga",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "ligue-1",
    "short": "Ligue 1",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "champions-league",
    "short": "Champions League",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "europa-league",
    "short": "Europa League",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "mls",
    "short": "MLS",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "argentina-primera",
    "short": "Argentine Primera",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "a-league",
    "short": "A-League",
    "empty_key_types": [
     "event-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "world-cup",
    "short": "World Cup",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "copa-america",
    "short": "Copa América",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "nwsl",
    "short": "NWSL",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   },
   {
    "league": "wsl",
    "short": "WSL",
    "empty_key_types": [
     "tracking-data"
    ],
    "no_current_free_key_types": [
     "event-data",
     "tracking-data"
    ]
   }
  ]
 },
 "best_free": [
  {
   "need": "xg",
   "label": "xG",
   "scope": {
    "leagues": "all",
    "types": [
     "xg"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "fotmob",
    "name": "FotMob",
    "cells": 19,
    "competitions": 19,
    "types": [
     "xg"
    ],
    "format": "website",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
    "notes": []
   },
   "current": true,
   "runners_up": [
    {
     "slug": "strikerapi",
     "name": "StrikerAPI",
     "cells": 15,
     "competitions": 15,
     "types": [
      "xg"
     ],
     "format": "api",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "MIT (MCP server code only; data under StrikerAPI terms)",
     "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
     "notes": [
      "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025."
     ]
    },
    {
     "slug": "footystats",
     "name": "FootyStats",
     "cells": 9,
     "competitions": 9,
     "types": [
      "xg"
     ],
     "format": "website",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": [
      "Team xG tables with non-zero values, free."
     ]
    }
   ],
   "noncurrent_pick": null,
   "free_without_league": []
  },
  {
   "need": "event-data",
   "label": "Event data",
   "scope": {
    "leagues": "all",
    "types": [
     "event-data"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": null,
   "current": false,
   "runners_up": [],
   "noncurrent_pick": {
    "slug": "statsbomb-open-data",
    "name": "StatsBomb Open Data",
    "cells": 18,
    "competitions": 18,
    "types": [
     "event-data"
    ],
    "format": "dataset",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "Custom terms (see LICENSE.pdf); credit StatsBomb when publishing",
    "commercial_use": null,
    "notes": [
     "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."
    ],
    "class": [
     "historical"
    ]
   },
   "free_without_league": [
    "metrica-sports-sample-data"
   ]
  },
  {
   "need": "tracking-data",
   "label": "Tracking data",
   "scope": {
    "leagues": "all",
    "types": [
     "tracking-data"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": null,
   "current": false,
   "runners_up": [],
   "noncurrent_pick": {
    "slug": "skillcorner-open-data",
    "name": "SkillCorner Open Data",
    "cells": 1,
    "competitions": 1,
    "types": [
     "tracking-data"
    ],
    "format": "dataset",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "MIT (repo)",
    "commercial_use": null,
    "notes": [
     "10 matches from 2024/25."
    ],
    "class": [
     "sample"
    ]
   },
   "free_without_league": [
    "metrica-sports-sample-data"
   ]
  },
  {
   "need": "player-stats",
   "label": "Player stats",
   "scope": {
    "leagues": "all",
    "types": [
     "player-stats"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "fotmob",
    "name": "FotMob",
    "cells": 24,
    "competitions": 24,
    "types": [
     "player-stats"
    ],
    "format": "website",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
    "notes": [
     "Basic leaderboards only, no xG (checked 2026-10-18).",
     "Stat leaderboards without xG for this competition."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "strikerapi",
     "name": "StrikerAPI",
     "cells": 15,
     "competitions": 15,
     "types": [
      "player-stats"
     ],
     "format": "api",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "MIT (MCP server code only; data under StrikerAPI terms)",
     "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
     "notes": [
      "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025."
     ]
    },
    {
     "slug": "scoutingstats-ai",
     "name": "ScoutingStats.AI",
     "cells": 11,
     "competitions": 11,
     "types": [
      "player-stats"
     ],
     "format": "ai-tool",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": [
      "Free tier: 5 player profiles/day."
     ]
    }
   ],
   "noncurrent_pick": null,
   "free_without_league": [
    "tifolab",
    "transfermarkt-datasets"
   ]
  },
  {
   "need": "match-results",
   "label": "Match results & fixtures",
   "scope": {
    "leagues": "all",
    "types": [
     "match-results"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "api-football",
    "name": "API-Football",
    "cells": 26,
    "competitions": 26,
    "types": [
     "match-results"
    ],
    "format": "api",
    "access": "freemium",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": null,
    "notes": [
     "Free plan: 100 requests/day, limited seasons. All competitions are in all plans."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "fotmob",
     "name": "FotMob",
     "cells": 24,
     "competitions": 24,
     "types": [
      "match-results"
     ],
     "format": "website",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
     "notes": [
      "Basic leaderboards only, no xG (checked 2026-10-18).",
      "Stat leaderboards without xG for this competition."
     ]
    },
    {
     "slug": "strikerapi",
     "name": "StrikerAPI",
     "cells": 15,
     "competitions": 15,
     "types": [
      "match-results"
     ],
     "format": "api",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "MIT (MCP server code only; data under StrikerAPI terms)",
     "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
     "notes": [
      "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025."
     ]
    }
   ],
   "noncurrent_pick": null,
   "free_without_league": []
  },
  {
   "need": "lineups",
   "label": "Lineups",
   "scope": {
    "leagues": "all",
    "types": [
     "lineups"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "strikerapi",
    "name": "StrikerAPI",
    "cells": 15,
    "competitions": 15,
    "types": [
     "lineups"
    ],
    "format": "api",
    "access": "freemium",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "MIT (MCP server code only; data under StrikerAPI terms)",
    "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
    "notes": [
     "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "openfootball-worldcup-json",
     "name": "openfootball worldcup.json",
     "cells": 1,
     "competitions": 1,
     "types": [
      "lineups"
     ],
     "format": "dataset",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "CC0-1.0",
     "commercial_use": "Public domain (CC0).",
     "notes": [
      "Full match details incl. lineups added for 2026."
     ]
    }
   ],
   "noncurrent_pick": null,
   "free_without_league": []
  },
  {
   "need": "transfers-market-values",
   "label": "Transfers & market values",
   "scope": {
    "leagues": "all",
    "types": [
     "transfers-market-values"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "transfermarkt",
    "name": "Transfermarkt",
    "cells": 11,
    "competitions": 11,
    "types": [
     "transfers-market-values"
    ],
    "format": "website",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": null,
    "notes": []
   },
   "current": true,
   "runners_up": [
    {
     "slug": "soccerdonna",
     "name": "Soccerdonna",
     "cells": 1,
     "competitions": 1,
     "types": [
      "transfers-market-values"
     ],
     "format": "website",
     "access": "free",
     "status": "partial",
     "checked": "2026-10-18",
     "license": null,
     "commercial_use": null,
     "notes": []
    }
   ],
   "noncurrent_pick": null,
   "free_without_league": [
    "transfermarkt-datasets"
   ]
  },
  {
   "need": "odds",
   "label": "Betting odds",
   "scope": {
    "leagues": "all",
    "types": [
     "odds"
    ],
    "cells": 26,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "strikerapi",
    "name": "StrikerAPI",
    "cells": 14,
    "competitions": 14,
    "types": [
     "odds"
    ],
    "format": "api",
    "access": "freemium",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "MIT (MCP server code only; data under StrikerAPI terms)",
    "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
    "notes": [
     "Sportsbook lines from 2017-18; opening and closing lines from June 2020 (The Odds API)."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "football-data-co-uk",
     "name": "football-data.co.uk",
     "cells": 12,
     "competitions": 12,
     "types": [
      "odds"
     ],
     "format": "dataset",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": "Site states use is for private individuals only, not commercial or data-training products.",
     "notes": [
      "'Extra leagues' files; private use only.",
      "Results, match stats and closing odds; private use only."
     ]
    }
   ],
   "noncurrent_pick": null,
   "free_without_league": []
  },
  {
   "need": "api",
   "label": "API access",
   "scope": {
    "leagues": "all",
    "types": "all",
    "cells": 234,
    "formats": [
     "api"
    ],
    "via_counted": false
   },
   "pick": {
    "slug": "strikerapi",
    "name": "StrikerAPI",
    "cells": 74,
    "competitions": 15,
    "types": [
     "xg",
     "match-results",
     "player-stats",
     "lineups",
     "odds"
    ],
    "format": "api",
    "access": "freemium",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "MIT (MCP server code only; data under StrikerAPI terms)",
    "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
    "notes": [
     "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025.",
     "Sportsbook lines from 2017-18; opening and closing lines from June 2020 (The Odds API)."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "api-football",
     "name": "API-Football",
     "cells": 26,
     "competitions": 26,
     "types": [
      "match-results"
     ],
     "format": "api",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": [
      "Free plan: 100 requests/day, limited seasons. All competitions are in all plans."
     ]
    },
    {
     "slug": "football-data-org",
     "name": "football-data.org",
     "cells": 12,
     "competitions": 12,
     "types": [
      "match-results"
     ],
     "format": "api",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": [
      "Free tier: 12 competitions, 10 calls/minute, delayed scores."
     ]
    }
   ],
   "noncurrent_pick": null
  },
  {
   "need": "libraries",
   "label": "Python/R libraries",
   "scope": {
    "leagues": "all",
    "types": "all",
    "cells": 234,
    "formats": [
     "library",
     "scraper"
    ],
    "via_counted": true
   },
   "pick": {
    "slug": "soccerdata",
    "name": "soccerdata",
    "cells": 15,
    "competitions": 5,
    "types": [
     "xg",
     "match-results",
     "player-stats"
    ],
    "format": "scraper",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": null,
    "notes": []
   },
   "current": true,
   "runners_up": [
    {
     "slug": "understatapi",
     "name": "understatAPI",
     "cells": 15,
     "competitions": 5,
     "types": [
      "xg",
      "match-results",
      "player-stats"
     ],
     "format": "scraper",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "MIT",
     "commercial_use": null,
     "notes": []
    },
    {
     "slug": "itscalledsoccer",
     "name": "itscalledsoccer",
     "cells": 9,
     "competitions": 3,
     "types": [
      "xg",
      "match-results",
      "player-stats"
     ],
     "format": "library",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "MIT",
     "commercial_use": null,
     "notes": []
    }
   ],
   "noncurrent_pick": null
  },
  {
   "need": "womens",
   "label": "Women's football",
   "scope": {
    "leagues": [
     "nwsl",
     "wsl",
     "liga-f",
     "frauen-bundesliga",
     "liga-mx-femenil",
     "womens-world-cup",
     "womens-euro"
    ],
    "types": "all",
    "cells": 63,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "fotmob",
    "name": "FotMob",
    "cells": 14,
    "competitions": 6,
    "types": [
     "xg",
     "match-results",
     "player-stats"
    ],
    "format": "website",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
    "notes": [
     "Basic leaderboards only, no xG (checked 2026-10-18).",
     "Stat leaderboards without xG for this competition."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "api-football",
     "name": "API-Football",
     "cells": 7,
     "competitions": 7,
     "types": [
      "match-results"
     ],
     "format": "api",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": [
      "Free plan: 100 requests/day, limited seasons. All competitions are in all plans."
     ]
    },
    {
     "slug": "footystats",
     "name": "FootyStats",
     "cells": 5,
     "competitions": 3,
     "types": [
      "xg",
      "match-results"
     ],
     "format": "website",
     "access": "freemium",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": [
      "Team xG tables with non-zero values, free.",
      "The Liga MX Femenil xG page exists but every value is 0.00."
     ]
    }
   ],
   "noncurrent_pick": null
  },
  {
   "need": "liga-mx",
   "label": "Liga MX",
   "scope": {
    "leagues": [
     "liga-mx"
    ],
    "types": "all",
    "cells": 9,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "strikerapi",
    "name": "StrikerAPI",
    "cells": 5,
    "competitions": 1,
    "types": [
     "xg",
     "match-results",
     "player-stats",
     "lineups",
     "odds"
    ],
    "format": "api",
    "access": "freemium",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "MIT (MCP server code only; data under StrikerAPI terms)",
    "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
    "notes": [
     "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025.",
     "Sportsbook lines from 2017-18; opening and closing lines from June 2020 (The Odds API)."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "fotmob",
     "name": "FotMob",
     "cells": 3,
     "competitions": 1,
     "types": [
      "xg",
      "match-results",
      "player-stats"
     ],
     "format": "website",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
     "notes": []
    },
    {
     "slug": "football-data-co-uk",
     "name": "football-data.co.uk",
     "cells": 2,
     "competitions": 1,
     "types": [
      "match-results",
      "odds"
     ],
     "format": "dataset",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": "Site states use is for private individuals only, not commercial or data-training products.",
     "notes": [
      "'Extra leagues' files; private use only."
     ]
    }
   ],
   "noncurrent_pick": null
  },
  {
   "need": "mls",
   "label": "MLS",
   "scope": {
    "leagues": [
     "mls"
    ],
    "types": "all",
    "cells": 9,
    "formats": null,
    "via_counted": false
   },
   "pick": {
    "slug": "strikerapi",
    "name": "StrikerAPI",
    "cells": 5,
    "competitions": 1,
    "types": [
     "xg",
     "match-results",
     "player-stats",
     "lineups",
     "odds"
    ],
    "format": "api",
    "access": "freemium",
    "status": "verified",
    "checked": "2026-10-19",
    "license": "MIT (MCP server code only; data under StrikerAPI terms)",
    "commercial_use": "Allowed inside your own product or model within the terms; reselling the data as a feed is not permitted.",
    "notes": [
     "Free tier: 500 credits/month, all endpoints. Shots (with xG) located from 2012-13 in the top leagues; Liga MX from 2013, Brasileirão and Argentina from 2014, Primeira Liga from 2016-17, Eredivisie from 2020-21, NWSL from 2025.",
     "Sportsbook lines from 2017-18; opening and closing lines from June 2020 (The Odds API)."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "american-soccer-analysis",
     "name": "American Soccer Analysis",
     "cells": 3,
     "competitions": 1,
     "types": [
      "xg",
      "match-results",
      "player-stats"
     ],
     "format": "website",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": null,
     "notes": []
    },
    {
     "slug": "fotmob",
     "name": "FotMob",
     "cells": 3,
     "competitions": 1,
     "types": [
      "xg",
      "match-results",
      "player-stats"
     ],
     "format": "website",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": null,
     "commercial_use": "Footer: automated services (robots, crawlers) and systematic use are not permitted.",
     "notes": []
    }
   ],
   "noncurrent_pick": null
  },
  {
   "need": "bulk",
   "label": "Bulk dataset download",
   "scope": {
    "leagues": "all",
    "types": "all",
    "cells": 234,
    "formats": [
     "dataset"
    ],
    "via_counted": false
   },
   "pick": {
    "slug": "football-data-co-uk",
    "name": "football-data.co.uk",
    "cells": 24,
    "competitions": 12,
    "types": [
     "match-results",
     "odds"
    ],
    "format": "dataset",
    "access": "free",
    "status": "verified",
    "checked": "2026-10-19",
    "license": null,
    "commercial_use": "Site states use is for private individuals only, not commercial or data-training products.",
    "notes": [
     "'Extra leagues' files; private use only.",
     "Results, match stats and closing odds; private use only."
    ]
   },
   "current": true,
   "runners_up": [
    {
     "slug": "openfootball-football-json",
     "name": "openfootball football.json",
     "cells": 6,
     "competitions": 6,
     "types": [
      "match-results"
     ],
     "format": "dataset",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "CC0-1.0",
     "commercial_use": "Public domain (CC0).",
     "notes": []
    },
    {
     "slug": "openfootball-worldcup-json",
     "name": "openfootball worldcup.json",
     "cells": 2,
     "competitions": 1,
     "types": [
      "match-results",
      "lineups"
     ],
     "format": "dataset",
     "access": "free",
     "status": "verified",
     "checked": "2026-10-19",
     "license": "CC0-1.0",
     "commercial_use": "Public domain (CC0).",
     "notes": [
      "Full match details incl. lineups added for 2026."
     ]
    }
   ],
   "noncurrent_pick": null
  }
 ],
 "fbref": {
  "slug": "fbref",
  "name": "FBref",
  "source_url": "https://www.sports-reference.com/blog/2026/01/fbref-stathead-data-update/",
  "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.",
  "coverage_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.",
  "data_types": [
   "match-results",
   "player-stats"
  ],
  "has_xg_in_map": false,
  "stats_xg": false,
  "last_verified": "2026-10-18"
 },
 "charts": [
  {
   "id": "heatmap",
   "file": "/charts/state-of-free-soccer-data-2026-coverage-heatmap.png",
   "width": 1200,
   "height": 1500,
   "title": "Free sources by competition and data type",
   "alt": "Heatmap of 26 competitions by 9 data types showing the number of free sources per cell. 144 of 234 cells have a free source, 10 are paid only and 80 have no verified source. Free event data comes only from StatsBomb Open Data (historical data), and tracking data has 1 free cell (A-League, SkillCorner Open Data: 10 matches from 2024/25)."
  },
  {
   "id": "free-vs-paid",
   "file": "/charts/state-of-free-soccer-data-2026-free-vs-paid-by-data-type.png",
   "width": 1200,
   "height": 675,
   "title": "Free vs freemium vs paid listings by data type",
   "alt": "Stacked horizontal bars: listings that offer each data type, split by access. xG: 11 free, 6 freemium, 5 paid; Events: 9 free, 0 freemium, 5 paid; Tracking: 10 free, 0 freemium, 5 paid; Results: 21 free, 11 freemium, 5 paid; Player stats: 18 free, 11 freemium, 5 paid; Lineups: 6 free, 7 freemium, 2 paid; Transfers: 4 free, 1 freemium, 2 paid; Odds: 2 free, 6 freemium, 2 paid; Fantasy: 1 free, 1 freemium, 1 paid."
  },
  {
   "id": "free-xg",
   "file": "/charts/state-of-free-soccer-data-2026-free-xg-sources-by-league.png",
   "width": 1200,
   "height": 1100,
   "title": "Free xG sources by competition",
   "alt": "Bar chart of free xG sources per competition, men's and women's colour-coded. Highest: Premier League 7, La Liga 7, Serie A 7, Bundesliga 7. Zero free xG sources: Liga MX Femenil. Men's competitions average 3.74 free xG sources, women's 1.71; excluding historical-only data, 3.11 vs 0.86."
  },
  {
   "id": "gaps",
   "file": "/charts/state-of-free-soccer-data-2026-biggest-gaps.png",
   "width": 1200,
   "height": 900,
   "title": "Competitions with any, free and current free sources by data type",
   "alt": "Grouped bars per data type: how many of the 26 competitions have any source, a free source, and a current (not historical or sample-only) free source. xG 25 any source, 25 free, 20 current free; Events 18 any source, 18 free, 0 current free; Tracking 1 any source, 1 free, 0 current free; Results 26 any source, 26 free, 26 current free; Player stats 25 any source, 24 free, 24 current free; Lineups 26 any source, 23 free, 16 current free; Transfers 12 any source, 12 free, 12 current free; Odds 20 any source, 14 free, 14 current free; Fantasy 1 any source, 1 free, 1 current free."
  }
 ],
 "og": {
  "file": "/og-state-of-free-soccer-data-2026.png",
  "width": 1200,
  "height": 630,
  "alt": "The State of Free Soccer Data 2026 by SportsDataStack: free xG sources Premier League 7, Liga MX Femenil 0; 0 of 26 competitions with current free event data; 1 of 26 competitions with any free tracking data (A-League, SkillCorner Open Data: 10 matches from 2024/25)."
 },
 "matrix": {
  "leagues": [
   {
    "id": "premier-league",
    "short": "Premier League",
    "name": "Premier League",
    "gender": "men",
    "group": "Europe: top 5"
   },
   {
    "id": "la-liga",
    "short": "La Liga",
    "name": "La Liga",
    "gender": "men",
    "group": "Europe: top 5"
   },
   {
    "id": "serie-a",
    "short": "Serie A",
    "name": "Serie A",
    "gender": "men",
    "group": "Europe: top 5"
   },
   {
    "id": "bundesliga",
    "short": "Bundesliga",
    "name": "Bundesliga",
    "gender": "men",
    "group": "Europe: top 5"
   },
   {
    "id": "ligue-1",
    "short": "Ligue 1",
    "name": "Ligue 1",
    "gender": "men",
    "group": "Europe: top 5"
   },
   {
    "id": "championship",
    "short": "Championship",
    "name": "EFL Championship",
    "gender": "men",
    "group": "Europe: other"
   },
   {
    "id": "eredivisie",
    "short": "Eredivisie",
    "name": "Eredivisie",
    "gender": "men",
    "group": "Europe: other"
   },
   {
    "id": "primeira-liga",
    "short": "Primeira Liga",
    "name": "Primeira Liga (Liga Portugal)",
    "gender": "men",
    "group": "Europe: other"
   },
   {
    "id": "champions-league",
    "short": "Champions League",
    "name": "UEFA Champions League",
    "gender": "men",
    "group": "Club cups"
   },
   {
    "id": "europa-league",
    "short": "Europa League",
    "name": "UEFA Europa League",
    "gender": "men",
    "group": "Club cups"
   },
   {
    "id": "mls",
    "short": "MLS",
    "name": "MLS (Major League Soccer)",
    "gender": "men",
    "group": "Americas"
   },
   {
    "id": "usl-championship",
    "short": "USL Championship",
    "name": "USL Championship",
    "gender": "men",
    "group": "Americas"
   },
   {
    "id": "liga-mx",
    "short": "Liga MX",
    "name": "Liga MX",
    "gender": "men",
    "group": "Americas"
   },
   {
    "id": "brasileirao",
    "short": "Brasileirão",
    "name": "Brasileirão Série A",
    "gender": "men",
    "group": "Americas"
   },
   {
    "id": "argentina-primera",
    "short": "Argentine Primera",
    "name": "Argentine Liga Profesional",
    "gender": "men",
    "group": "Americas"
   },
   {
    "id": "a-league",
    "short": "A-League",
    "name": "A-League Men",
    "gender": "men",
    "group": "Asia-Pacific"
   },
   {
    "id": "world-cup",
    "short": "World Cup",
    "name": "FIFA World Cup",
    "gender": "men",
    "group": "International"
   },
   {
    "id": "euro",
    "short": "Euro",
    "name": "UEFA Euro",
    "gender": "men",
    "group": "International"
   },
   {
    "id": "copa-america",
    "short": "Copa América",
    "name": "Copa América",
    "gender": "men",
    "group": "International"
   },
   {
    "id": "nwsl",
    "short": "NWSL",
    "name": "NWSL",
    "gender": "women",
    "group": "Women"
   },
   {
    "id": "wsl",
    "short": "WSL",
    "name": "Women's Super League (WSL)",
    "gender": "women",
    "group": "Women"
   },
   {
    "id": "liga-f",
    "short": "Liga F",
    "name": "Liga F",
    "gender": "women",
    "group": "Women"
   },
   {
    "id": "frauen-bundesliga",
    "short": "Frauen-Bundesliga",
    "name": "Frauen-Bundesliga",
    "gender": "women",
    "group": "Women"
   },
   {
    "id": "liga-mx-femenil",
    "short": "Liga MX Femenil",
    "name": "Liga MX Femenil",
    "gender": "women",
    "group": "Women"
   },
   {
    "id": "womens-world-cup",
    "short": "Women's World Cup",
    "name": "FIFA Women's World Cup",
    "gender": "women",
    "group": "Women"
   },
   {
    "id": "womens-euro",
    "short": "Women's Euro",
    "name": "UEFA Women's Euro",
    "gender": "women",
    "group": "Women"
   }
  ],
  "types": [
   {
    "id": "xg",
    "short": "xG",
    "name": "xG (expected goals)"
   },
   {
    "id": "event-data",
    "short": "Events",
    "name": "Event data"
   },
   {
    "id": "tracking-data",
    "short": "Tracking",
    "name": "Tracking data"
   },
   {
    "id": "match-results",
    "short": "Results",
    "name": "Match results & fixtures"
   },
   {
    "id": "player-stats",
    "short": "Player stats",
    "name": "Player stats"
   },
   {
    "id": "lineups",
    "short": "Lineups",
    "name": "Lineups"
   },
   {
    "id": "transfers-market-values",
    "short": "Transfers",
    "name": "Transfers & market values"
   },
   {
    "id": "odds",
    "short": "Odds",
    "name": "Betting odds"
   },
   {
    "id": "fantasy",
    "short": "Fantasy",
    "name": "Fantasy football"
   }
  ],
  "cells": {
   "premier-league|xg": {
    "n": 7,
    "free": 7,
    "paid": 0,
    "current_free": 6,
    "sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "premier-league|event-data": {
    "n": 2,
    "free": 1,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "dribble",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "dribble"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "premier-league|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "premier-league|match-results": {
    "n": 16,
    "free": 13,
    "paid": 3,
    "current_free": 12,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "footystats-api",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "sportmonks-football-api",
     "sportsdataio-soccer-api",
     "statorium",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "footystats-api",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "footystats-api",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api",
     "sportsdataio-soccer-api",
     "statorium"
    ],
    "via": [
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "premier-league|player-stats": {
    "n": 12,
    "free": 11,
    "paid": 1,
    "current_free": 11,
    "sources": [
     "datamb",
     "footystats-api",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "datamb",
     "footystats-api",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "datamb",
     "footystats-api",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "understatapi"
    ],
    "state": "current-free"
   },
   "premier-league|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "premier-league|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "premier-league|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "premier-league|fantasy": {
    "n": 2,
    "free": 2,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "opta-analyst",
     "scoutingstats-ai"
    ],
    "free_sources": [
     "opta-analyst",
     "scoutingstats-ai"
    ],
    "current_free_sources": [
     "opta-analyst",
     "scoutingstats-ai"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "la-liga|xg": {
    "n": 7,
    "free": 7,
    "paid": 0,
    "current_free": 6,
    "sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "la-liga|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "la-liga|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "la-liga|match-results": {
    "n": 14,
    "free": 12,
    "paid": 2,
    "current_free": 11,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "sportmonks-football-api",
     "statorium",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api",
     "statorium"
    ],
    "via": [
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "la-liga|player-stats": {
    "n": 11,
    "free": 10,
    "paid": 1,
    "current_free": 10,
    "sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "understatapi"
    ],
    "state": "current-free"
   },
   "la-liga|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "la-liga|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "la-liga|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "la-liga|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "serie-a|xg": {
    "n": 7,
    "free": 7,
    "paid": 0,
    "current_free": 6,
    "sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "serie-a|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "serie-a|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "serie-a|match-results": {
    "n": 13,
    "free": 12,
    "paid": 1,
    "current_free": 11,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "serie-a|player-stats": {
    "n": 11,
    "free": 10,
    "paid": 1,
    "current_free": 10,
    "sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "understatapi"
    ],
    "state": "current-free"
   },
   "serie-a|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "serie-a|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "serie-a|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "serie-a|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "bundesliga|xg": {
    "n": 7,
    "free": 7,
    "paid": 0,
    "current_free": 6,
    "sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "bundesliga|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "bundesliga|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "bundesliga|match-results": {
    "n": 14,
    "free": 12,
    "paid": 2,
    "current_free": 11,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "sportmonks-football-api",
     "statorium",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api",
     "statorium"
    ],
    "via": [
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "bundesliga|player-stats": {
    "n": 11,
    "free": 10,
    "paid": 1,
    "current_free": 10,
    "sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "understatapi"
    ],
    "state": "current-free"
   },
   "bundesliga|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "bundesliga|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "bundesliga|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "bundesliga|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "ligue-1|xg": {
    "n": 7,
    "free": 7,
    "paid": 0,
    "current_free": 6,
    "sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi",
     "understat",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "ligue-1|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "ligue-1|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "ligue-1|match-results": {
    "n": 13,
    "free": 12,
    "paid": 1,
    "current_free": 11,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb",
     "understat",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "soccerdata",
     "statsbombpy",
     "statsbombr",
     "understatapi"
    ],
    "state": "current-free"
   },
   "ligue-1|player-stats": {
    "n": 11,
    "free": 10,
    "paid": 1,
    "current_free": 10,
    "sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "current_free_sources": [
     "datamb",
     "fotmob",
     "opta-analyst",
     "scout-lab-streamlit-app",
     "scoutingstats-ai",
     "strikerapi",
     "understat",
     "whoscored",
     "xg-lab",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp",
     "soccerdata",
     "understatapi"
    ],
    "state": "current-free"
   },
   "ligue-1|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "ligue-1|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "ligue-1|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "ligue-1|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "championship|xg": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 3,
    "sources": [
     "fotmob",
     "strikerapi",
     "xg-stat"
    ],
    "free_sources": [
     "fotmob",
     "strikerapi",
     "xg-stat"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "championship|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "championship|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "championship|match-results": {
    "n": 10,
    "free": 9,
    "paid": 1,
    "current_free": 9,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "goal-api",
     "openfootball-football-json",
     "opta-analyst",
     "sportmonks-football-api",
     "strikerapi",
     "thesportsdb"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "goal-api",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "goal-api",
     "openfootball-football-json",
     "opta-analyst",
     "strikerapi",
     "thesportsdb"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "championship|player-stats": {
    "n": 6,
    "free": 5,
    "paid": 1,
    "current_free": 5,
    "sources": [
     "fotmob",
     "opta-analyst",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "xg-stat"
    ],
    "free_sources": [
     "fotmob",
     "opta-analyst",
     "scoutingstats-ai",
     "strikerapi",
     "xg-stat"
    ],
    "current_free_sources": [
     "fotmob",
     "opta-analyst",
     "scoutingstats-ai",
     "strikerapi",
     "xg-stat"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "championship|lineups": {
    "n": 3,
    "free": 1,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "championship|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "empty"
   },
   "championship|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "championship|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "eredivisie|xg": {
    "n": 2,
    "free": 2,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "fotmob",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "eredivisie|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "eredivisie|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "eredivisie|match-results": {
    "n": 7,
    "free": 6,
    "paid": 1,
    "current_free": 6,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "sportmonks-football-api",
     "strikerapi",
     "thesportsdb"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "strikerapi",
     "thesportsdb"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "strikerapi",
     "thesportsdb"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "eredivisie|player-stats": {
    "n": 5,
    "free": 4,
    "paid": 1,
    "current_free": 4,
    "sources": [
     "datamb",
     "fotmob",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "datamb",
     "fotmob",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "current_free_sources": [
     "datamb",
     "fotmob",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "eredivisie|lineups": {
    "n": 3,
    "free": 1,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "eredivisie|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "eredivisie|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "eredivisie|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "primeira-liga|xg": {
    "n": 2,
    "free": 2,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "fotmob",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "primeira-liga|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "primeira-liga|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "primeira-liga|match-results": {
    "n": 6,
    "free": 5,
    "paid": 1,
    "current_free": 5,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "primeira-liga|player-stats": {
    "n": 5,
    "free": 4,
    "paid": 1,
    "current_free": 4,
    "sources": [
     "datamb",
     "fotmob",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "datamb",
     "fotmob",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "current_free_sources": [
     "datamb",
     "fotmob",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "primeira-liga|lineups": {
    "n": 3,
    "free": 1,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "primeira-liga|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "primeira-liga|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "primeira-liga|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "champions-league|xg": {
    "n": 4,
    "free": 4,
    "paid": 0,
    "current_free": 3,
    "sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "champions-league|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "champions-league|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "champions-league|match-results": {
    "n": 8,
    "free": 7,
    "paid": 1,
    "current_free": 6,
    "sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "opta-analyst",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "opta-analyst",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "champions-league|player-stats": {
    "n": 5,
    "free": 4,
    "paid": 1,
    "current_free": 4,
    "sources": [
     "fotmob",
     "opta-analyst",
     "sportmonks-football-api",
     "strikerapi",
     "xg-lab"
    ],
    "free_sources": [
     "fotmob",
     "opta-analyst",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "fotmob",
     "opta-analyst",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "champions-league|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "champions-league|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "empty"
   },
   "champions-league|odds": {
    "n": 2,
    "free": 1,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "champions-league|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "europa-league|xg": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "football-data-mcp",
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "europa-league|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "europa-league|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "europa-league|match-results": {
    "n": 6,
    "free": 4,
    "paid": 2,
    "current_free": 3,
    "sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "api-football",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "api-football",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "europa-league|player-stats": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "fotmob",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "football-data-mcp"
    ],
    "state": "current-free"
   },
   "europa-league|lineups": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "europa-league|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "football-data-mcp"
    ],
    "state": "empty"
   },
   "europa-league|odds": {
    "n": 2,
    "free": 1,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "europa-league|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "mls|xg": {
    "n": 6,
    "free": 6,
    "paid": 0,
    "current_free": 5,
    "sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "itscalledsoccer",
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "mls|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "mls|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "mls|match-results": {
    "n": 14,
    "free": 10,
    "paid": 4,
    "current_free": 9,
    "sources": [
     "american-soccer-analysis",
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "fotmob",
     "goal-api",
     "opta-analyst",
     "sportmonks-football-api",
     "sportsdataio-soccer-api",
     "statorium",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "api-football",
     "football-data-co-uk",
     "footystats",
     "fotmob",
     "goal-api",
     "opta-analyst",
     "statsbomb-open-data",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "api-football",
     "football-data-co-uk",
     "footystats",
     "fotmob",
     "goal-api",
     "opta-analyst",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api",
     "sportsdataio-soccer-api",
     "statorium"
    ],
    "via": [
     "itscalledsoccer",
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "mls|player-stats": {
    "n": 7,
    "free": 6,
    "paid": 1,
    "current_free": 6,
    "sources": [
     "american-soccer-analysis",
     "fotmob",
     "opta-analyst",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi",
     "xg-lab"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "fotmob",
     "opta-analyst",
     "scoutingstats-ai",
     "strikerapi",
     "xg-lab"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "fotmob",
     "opta-analyst",
     "scoutingstats-ai",
     "strikerapi",
     "xg-lab"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "itscalledsoccer"
    ],
    "state": "current-free"
   },
   "mls|lineups": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "mls|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "mls|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "mls|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "usl-championship|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "american-soccer-analysis"
    ],
    "free_sources": [
     "american-soccer-analysis"
    ],
    "current_free_sources": [
     "american-soccer-analysis"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [
     "itscalledsoccer"
    ],
    "state": "current-free"
   },
   "usl-championship|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "usl-championship|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "usl-championship|match-results": {
    "n": 4,
    "free": 3,
    "paid": 1,
    "current_free": 3,
    "sources": [
     "american-soccer-analysis",
     "api-football",
     "fotmob",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "api-football",
     "fotmob"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "api-football",
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "itscalledsoccer"
    ],
    "state": "current-free"
   },
   "usl-championship|player-stats": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "american-soccer-analysis",
     "fotmob",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "fotmob"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "itscalledsoccer"
    ],
    "state": "current-free"
   },
   "usl-championship|lineups": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "usl-championship|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "usl-championship|odds": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "usl-championship|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx|xg": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 3,
    "sources": [
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "liga-mx|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx|match-results": {
    "n": 11,
    "free": 7,
    "paid": 4,
    "current_free": 7,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "footystats",
     "footystats-api",
     "fotmob",
     "liga-mx-official-site",
     "sportmonks-football-api",
     "sportsdataio-soccer-api",
     "strikerapi",
     "transfermarkt"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "footystats",
     "fotmob",
     "liga-mx-official-site",
     "strikerapi",
     "transfermarkt"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "footystats",
     "fotmob",
     "liga-mx-official-site",
     "strikerapi",
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "football-data-org",
     "footystats-api",
     "sportmonks-football-api",
     "sportsdataio-soccer-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "liga-mx|player-stats": {
    "n": 6,
    "free": 4,
    "paid": 2,
    "current_free": 4,
    "sources": [
     "footystats-api",
     "fotmob",
     "liga-mx-official-site",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "liga-mx-official-site",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "liga-mx-official-site",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "footystats-api",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "liga-mx|lineups": {
    "n": 2,
    "free": 1,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "liga-mx|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "liga-mx|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "liga-mx|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "brasileirao|xg": {
    "n": 2,
    "free": 2,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "fotmob",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "brasileirao|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "brasileirao|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "brasileirao|match-results": {
    "n": 6,
    "free": 5,
    "paid": 1,
    "current_free": 5,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "brasileirao|player-stats": {
    "n": 4,
    "free": 3,
    "paid": 1,
    "current_free": 3,
    "sources": [
     "fotmob",
     "scoutingstats-ai",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "scoutingstats-ai",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "brasileirao|lineups": {
    "n": 3,
    "free": 1,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "brasileirao|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "brasileirao|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "brasileirao|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "argentina-primera|xg": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "argentina-primera|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "argentina-primera|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "argentina-primera|match-results": {
    "n": 8,
    "free": 6,
    "paid": 2,
    "current_free": 5,
    "sources": [
     "api-football",
     "football-data-co-uk",
     "football-data-org",
     "fotmob",
     "goal-api",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "api-football",
     "football-data-co-uk",
     "fotmob",
     "goal-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-co-uk",
     "fotmob",
     "goal-api",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "argentina-primera|player-stats": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "fotmob",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "argentina-primera|lineups": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "argentina-primera|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "transfermarkt"
    ],
    "free_sources": [
     "transfermarkt"
    ],
    "current_free_sources": [
     "transfermarkt"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "argentina-primera|odds": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "football-data-co-uk",
     "sportmonks-football-api",
     "strikerapi"
    ],
    "free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "current_free_sources": [
     "football-data-co-uk",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "argentina-primera|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "a-league|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "fotmob"
    ],
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "a-league|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "a-league|tracking-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "skillcorner-open-data"
    ],
    "free_sources": [
     "skillcorner-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "skillcorner-open-data": "sample"
    },
    "paid_sources": [],
    "via": [],
    "state": "free-noncurrent-only"
   },
   "a-league|match-results": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 2,
    "sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "api-football",
     "fotmob"
    ],
    "current_free_sources": [
     "api-football",
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "a-league|player-stats": {
    "n": 2,
    "free": 1,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "fotmob",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "a-league|lineups": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "a-league|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "a-league|odds": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "a-league|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "world-cup|xg": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "fotmob",
     "statsbomb-open-data",
     "xg-lab"
    ],
    "free_sources": [
     "fotmob",
     "statsbomb-open-data",
     "xg-lab"
    ],
    "current_free_sources": [
     "fotmob",
     "xg-lab"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "world-cup|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "world-cup|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "world-cup|match-results": {
    "n": 10,
    "free": 8,
    "paid": 2,
    "current_free": 5,
    "sources": [
     "api-football",
     "fjelstul-world-cup-database",
     "football-data-org",
     "fotmob",
     "openfootball-worldcup-json",
     "sportmonks-football-api",
     "statorium",
     "statsbomb-open-data",
     "transfermarkt-datasets",
     "xg-lab"
    ],
    "free_sources": [
     "api-football",
     "fjelstul-world-cup-database",
     "football-data-org",
     "fotmob",
     "openfootball-worldcup-json",
     "statsbomb-open-data",
     "transfermarkt-datasets",
     "xg-lab"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "openfootball-worldcup-json",
     "xg-lab"
    ],
    "noncurrent_free": {
     "fjelstul-world-cup-database": "historical",
     "statsbomb-open-data": "historical",
     "transfermarkt-datasets": "paused"
    },
    "paid_sources": [
     "sportmonks-football-api",
     "statorium"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "world-cup|player-stats": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "fotmob",
     "sportmonks-football-api",
     "xg-lab"
    ],
    "free_sources": [
     "fotmob",
     "xg-lab"
    ],
    "current_free_sources": [
     "fotmob",
     "xg-lab"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "world-cup|lineups": {
    "n": 5,
    "free": 3,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "football-data-org",
     "openfootball-worldcup-json",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "free_sources": [
     "openfootball-worldcup-json",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "current_free_sources": [
     "openfootball-worldcup-json"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical",
     "transfermarkt-datasets": "paused"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "world-cup|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "world-cup|odds": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "world-cup|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "euro|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "euro|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "euro|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "euro|match-results": {
    "n": 5,
    "free": 4,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "api-football",
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "free_sources": [
     "api-football",
     "football-data-org",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "current_free_sources": [
     "api-football",
     "football-data-org"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical",
     "transfermarkt-datasets": "paused"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "euro|player-stats": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "euro|lineups": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 0,
    "sources": [
     "football-data-org",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical",
     "transfermarkt-datasets": "paused"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "euro|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "euro|odds": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "euro|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "copa-america|xg": {
    "n": 2,
    "free": 2,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "fotmob",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "copa-america|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "copa-america|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "copa-america|match-results": {
    "n": 6,
    "free": 4,
    "paid": 2,
    "current_free": 2,
    "sources": [
     "api-football",
     "football-data-org",
     "fotmob",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "free_sources": [
     "api-football",
     "fotmob",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "current_free_sources": [
     "api-football",
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical",
     "transfermarkt-datasets": "paused"
    },
    "paid_sources": [
     "football-data-org",
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "copa-america|player-stats": {
    "n": 2,
    "free": 1,
    "paid": 1,
    "current_free": 1,
    "sources": [
     "fotmob",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "copa-america|lineups": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api",
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "transfermarkt-datasets"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical",
     "transfermarkt-datasets": "paused"
    },
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "copa-america|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "copa-america|odds": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "copa-america|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "nwsl|xg": {
    "n": 5,
    "free": 5,
    "paid": 0,
    "current_free": 4,
    "sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "itscalledsoccer",
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "nwsl|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "nwsl|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "nwsl|match-results": {
    "n": 8,
    "free": 6,
    "paid": 2,
    "current_free": 5,
    "sources": [
     "american-soccer-analysis",
     "api-football",
     "footystats",
     "footystats-api",
     "fotmob",
     "sportmonks-football-api",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "api-football",
     "footystats",
     "fotmob",
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "api-football",
     "footystats",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "footystats-api",
     "sportmonks-football-api"
    ],
    "via": [
     "itscalledsoccer",
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "nwsl|player-stats": {
    "n": 4,
    "free": 3,
    "paid": 1,
    "current_free": 3,
    "sources": [
     "american-soccer-analysis",
     "footystats-api",
     "fotmob",
     "strikerapi"
    ],
    "free_sources": [
     "american-soccer-analysis",
     "fotmob",
     "strikerapi"
    ],
    "current_free_sources": [
     "american-soccer-analysis",
     "fotmob",
     "strikerapi"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "footystats-api"
    ],
    "via": [
     "itscalledsoccer"
    ],
    "state": "current-free"
   },
   "nwsl|lineups": {
    "n": 2,
    "free": 2,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "free_sources": [
     "statsbomb-open-data",
     "strikerapi"
    ],
    "current_free_sources": [
     "strikerapi"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "nwsl|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "nwsl|odds": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "nwsl|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "wsl|xg": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "footystats",
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "footystats",
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "wsl|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "wsl|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "wsl|match-results": {
    "n": 6,
    "free": 5,
    "paid": 1,
    "current_free": 4,
    "sources": [
     "api-football",
     "footystats",
     "footystats-api",
     "fotmob",
     "opta-analyst",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "api-football",
     "footystats",
     "fotmob",
     "opta-analyst",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "api-football",
     "footystats",
     "fotmob",
     "opta-analyst"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "footystats-api"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "wsl|player-stats": {
    "n": 3,
    "free": 2,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "footystats-api",
     "fotmob",
     "opta-analyst"
    ],
    "free_sources": [
     "fotmob",
     "opta-analyst"
    ],
    "current_free_sources": [
     "fotmob",
     "opta-analyst"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "footystats-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "wsl|lineups": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "wsl|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "wsl|odds": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "wsl|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-f|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "liga-f|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "liga-f|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-f|match-results": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "api-football",
     "fotmob",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "api-football",
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "api-football",
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "liga-f|player-stats": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "fotmob"
    ],
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "liga-f|lineups": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "liga-f|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-f|odds": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-f|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "frauen-bundesliga|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "frauen-bundesliga|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "frauen-bundesliga|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "frauen-bundesliga|match-results": {
    "n": 3,
    "free": 3,
    "paid": 0,
    "current_free": 2,
    "sources": [
     "api-football",
     "fotmob",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "api-football",
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "api-football",
     "fotmob"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "frauen-bundesliga|player-stats": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "fotmob"
    ],
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "frauen-bundesliga|lineups": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "frauen-bundesliga|transfers-market-values": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "soccerdonna"
    ],
    "free_sources": [
     "soccerdonna"
    ],
    "current_free_sources": [
     "soccerdonna"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "frauen-bundesliga|odds": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "frauen-bundesliga|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx-femenil|xg": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx-femenil|event-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx-femenil|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx-femenil|match-results": {
    "n": 6,
    "free": 4,
    "paid": 2,
    "current_free": 4,
    "sources": [
     "api-football",
     "footystats",
     "footystats-api",
     "fotmob",
     "liga-femenil-official-site",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "api-football",
     "footystats",
     "fotmob",
     "liga-femenil-official-site"
    ],
    "current_free_sources": [
     "api-football",
     "footystats",
     "fotmob",
     "liga-femenil-official-site"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "footystats-api",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "liga-mx-femenil|player-stats": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 2,
    "sources": [
     "footystats-api",
     "fotmob",
     "liga-femenil-official-site",
     "sportmonks-football-api"
    ],
    "free_sources": [
     "fotmob",
     "liga-femenil-official-site"
    ],
    "current_free_sources": [
     "fotmob",
     "liga-femenil-official-site"
    ],
    "noncurrent_free": {},
    "paid_sources": [
     "footystats-api",
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "current-free"
   },
   "liga-mx-femenil|lineups": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "liga-mx-femenil|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "liga-mx-femenil|odds": {
    "n": 1,
    "free": 0,
    "paid": 1,
    "current_free": 0,
    "sources": [
     "sportmonks-football-api"
    ],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [
     "sportmonks-football-api"
    ],
    "via": [],
    "state": "paid-only"
   },
   "liga-mx-femenil|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-world-cup|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "womens-world-cup|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "womens-world-cup|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-world-cup|match-results": {
    "n": 5,
    "free": 4,
    "paid": 1,
    "current_free": 2,
    "sources": [
     "api-football",
     "fjelstul-world-cup-database",
     "football-data-org",
     "fotmob",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "api-football",
     "fjelstul-world-cup-database",
     "fotmob",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "api-football",
     "fotmob"
    ],
    "noncurrent_free": {
     "fjelstul-world-cup-database": "historical",
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "womens-world-cup|player-stats": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 1,
    "sources": [
     "fotmob"
    ],
    "free_sources": [
     "fotmob"
    ],
    "current_free_sources": [
     "fotmob"
    ],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "current-free"
   },
   "womens-world-cup|lineups": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "womens-world-cup|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-world-cup|odds": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-world-cup|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-euro|xg": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "womens-euro|event-data": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "womens-euro|tracking-data": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-euro|match-results": {
    "n": 4,
    "free": 2,
    "paid": 2,
    "current_free": 1,
    "sources": [
     "api-football",
     "football-data-org",
     "statorium",
     "statsbomb-open-data"
    ],
    "free_sources": [
     "api-football",
     "statsbomb-open-data"
    ],
    "current_free_sources": [
     "api-football"
    ],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [
     "football-data-org",
     "statorium"
    ],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "current-free"
   },
   "womens-euro|player-stats": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-euro|lineups": {
    "n": 1,
    "free": 1,
    "paid": 0,
    "current_free": 0,
    "sources": [
     "statsbomb-open-data"
    ],
    "free_sources": [
     "statsbomb-open-data"
    ],
    "current_free_sources": [],
    "noncurrent_free": {
     "statsbomb-open-data": "historical"
    },
    "paid_sources": [],
    "via": [
     "statsbombpy",
     "statsbombr"
    ],
    "state": "free-noncurrent-only"
   },
   "womens-euro|transfers-market-values": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-euro|odds": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   },
   "womens-euro|fantasy": {
    "n": 0,
    "free": 0,
    "paid": 0,
    "current_free": 0,
    "sources": [],
    "free_sources": [],
    "current_free_sources": [],
    "noncurrent_free": {},
    "paid_sources": [],
    "via": [],
    "state": "empty"
   }
  }
 }
}