Football data for analysts, pundits and speculators fleeing FBref.
The community's go-to free source just went behind a paywall. Download 1M+ match records as clean CSVs, query via REST API, or write SQL directly in BigQuery — 306 columns per appearance, 23 leagues, 6 seasons. From $5/mo.
Monthly Annual 2 months free
Lite
$19/mo
Everything you need to start building with football data.
REST API access
1,000 daily API calls
8 datasets · 23 leagues · 6 seasons
JSON + CSV formats
Monthly refresh
Schema documentation
Personal & research use
Player core fields (name, slug, nationality) — biographical data (DOB, height, weight, foot) available on Flite and above
Elite
$49/mo
Popular
Full API access with commercial licensing for production apps.
Everything in Lite
5,000 daily API calls
JSON + CSV formats
Priority data refresh
Commercial licensing
Player core fields — biographical data available on Flite and above
Flite
$149/mo
High-volume access for professional analytics and data products.
Everything in Elite
50,000 daily API calls
Multiple API keys
Webhook data push
SLA support
White-label licensing
Full player biographical data — date of birth, height, weight, preferred foot
REST API
Query Any Dataset Programmatically
Available on all API plans. Generate an API key from your subscriber dashboard and start pulling data in minutes.
Authentication
Pass your API key as a Bearer token in every request.
Authorization: Bearer drb_your_key_here
Base URL
Supports limit, offset, and optional season params.
Power dashboards, fantasy tools, and fan apps with live REST queries. No paywall to route around — paginate 1M+ records via a stable API key.
Automated Analytics Pipelines
Schedule nightly data pulls, feed your data warehouse, or trigger model retraining — without managing files or fighting rate-limit changes from a third-party site.
Data Product Builders
Consistent entity IDs across all 8 datasets mean every table JOINs cleanly. Commercial licence included on Elite and above — build and ship on top of the same database we use.
Process
From Subscribe to First Request
1
Subscribe to an API Plan
Choose Lite, Elite, or Flite based on your call volume. Checkout via Stripe in under a minute. Your welcome email arrives instantly with a login link.
2
Generate Your API Key
Log in to dribble360.com/subscribers, go to the API Keys section, and hit "New Key". Keys are shown once — copy it to your environment variables. Revoke and regenerate any time.
3
Start Querying
Pass your key as a Bearer token and hit any endpoint. Use limit, offset, and season params to paginate through millions of records. Detect end of results when rows.length < limit.
Schema
API-Ready Structure
Consistent entity IDs across all tables. Join anything to anything.
query.sql
-- Mbappé's xG per match this seasonSELECTm.date, m.description,pm.expected_goals, pm.goals, pm.scaFROMplayer_matchespmJOINmatchesmONm.id = pm.match_idJOINseasonssONs.id = m.season_idJOINplayerspONp.id = pm.player_idWHEREp.known_name ='Mbappé'ANDs.name ='2025/2026'ORDER BYm.dateDESC;
Full schema documentation included with every download.
★★★★★Loved by data scientists, analysts and journalists
"
Finally stopped patching together CSVs from FBRef. The player_matches dataset alone is worth the subscription — 306 columns per appearance, six seasons, clean entity IDs. Ready for pandas in 30 seconds.
JT
Jamie T.
Data Scientist, Fantasy Football Platform
"
Our xG model runs entirely off the API now. Generous rate limits, consistent column names, and the BigQuery tier meant we could benchmark 1M rows without spinning up our own infra.
RL
Research Lead
Sports Analytics Consultancy
"
I write about football for a living. The BigQuery access changed how I work — I can pull career arcs for any player across Europe in under a minute. Nothing else at this price comes close.
AM
Alex M.
Football Journalist & Analyst
Cancel anytime
24-hour refund guarantee
Daily Opta data refresh
No setup fees
Secure Stripe checkout
Commercial licences available
Questions
FAQ
After subscribing, log in to dribble360.com/subscribers and open the API Keys section. Click "New Key", give it a name, and copy the key shown — it's only displayed once. You can generate multiple keys and revoke them at any time.
Pass your key as a Bearer token in the Authorization header: Authorization: Bearer drb_your_key_here. Every request must include this header — there is no cookie or session-based auth for the API.
Every endpoint accepts limit (max rows per response) and offset (skip N rows). Fetch the next page by incrementing offset by limit. You've reached the end when rows.length < limit.
player_matches and team_matches require a season parameter (e.g. "2025/2026") — these tables are large and season-scoped queries are much faster. All other endpoints return the full dataset without a season filter.
Lite: 1,000 calls/day · Elite: 5,000 calls/day · Flite: 50,000 calls/day. Limits reset at midnight UTC. Every response includes X-RateLimit-Limit and X-RateLimit-Remaining headers so you can track usage in real time.
Elite and Flite include commercial licensing — you can build and sell products on top of the data. Lite is for personal and research use. Site plans include negotiable licensing terms for white-label or resale use cases.
Lite gives you REST API access at 1,000 calls/day for personal or research projects. Elite raises the limit to 5,000 calls/day and adds commercial licensing — suitable for apps and data products in production.
We send a monthly email to all active subscribers when data refreshes. The API always serves the latest ingested data — there's no versioning or cache-busting required on your end.