NewPlayerElo now rates women's footballExplore →

Football Prediction & Data API

A REST API for football match predictions, player & coach Elo ratings, rating history, market values and ESB betting tips — the only football API rating every player individually. Free tier, 87K+ players across 176 competitions. Looking specifically for forecasts? See the prediction API →

Plans

Every plan includes all endpoints — they differ only by request volume. Start free in seconds; upgrade, downgrade or cancel anytime.

Free
€0
Requests
500 / month
Rate limit
10 req / min

Evaluation & hobby use.

Most popularPro
€19/mo
Requests
10,000 / month
Rate limit
120 req / min

Production apps & dashboards.

Ultra
€49/mo
Requests
50,000 / month
Rate limit
300 req / min

Daily full-dataset refresh & backtesting.

Business
€199/mo
Requests
300,000 / month
Rate limit
600 req / min

Daily top-league Elo/EAR history + commercial licence & SLA.

What you are paying for is the ratings themselves: a per-player and per-coach Elo, its history, and each player's Elo Above Replacement () — inputs for a model, a scouting tool or a piece of research. They are not sold as a way to make money betting.

Switch plans anytime — just subscribe to another one and it replaces your current plan the moment you pay (no proration; any leftover volume is forfeited). To cancel, or for more than 300k/month or a custom licence, email us.

Your account

Paste your API key to see this month's request usage and manage your subscription. Your key is your identity — usage is also available via GET /v1/usage.

Endpoints

Base URL https://data-api.playerelo.football · all endpoints require an Authorization: Bearer API key.

Players

GET/v1/playersTop players by Elo (limit, offset)
GET/v1/players/{id}Single player (Elo, EAR, rank)
GET/v1/players/{id}/historyMatch-by-match Elo & EAR history (add ?context=full for per-match fixture, opponent, minutes & elo_change)
GET/v1/players/{id}/trend28-day Elo & rank movement
GET/v1/players/{id}/valueComputed market value (€)
GET/v1/players/{id}/stylePlaying-style radar & per-90 profile

Coaches

GET/v1/coachesTop coaches by Elo
GET/v1/coaches/{id}Single coach
GET/v1/coaches/{id}/historyCoach Elo history
GET/v1/coaches/{id}/styleCoach tactical DNA

Clubs

GET/v1/clubsClubs ranked by Team Elo
GET/v1/clubs/{id}Single club (Team Elo)
GET/v1/clubs/{id}/playersSquad by team ID
GET/v1/clubs/{id}/historyClub Team-Elo history
GET/v1/clubs/{id}/styleClub playing-style profile
GET/v1/clubs/{id}/squad-gapsPer-position squad gaps vs peer clubs

Leagues

GET/v1/leaguesLeague strength table
GET/v1/leagues/{id}League summary + Elo distribution
GET/v1/leagues/{id}/playersPlayers by league ID
GET/v1/leagues/{id}/rankingLeague standings & Team Elo (off-season only; 404 mid-season)
GET/v1/leagues/{id}/styleLeague style profile
GET/v1/leagues/{id}/simulationRest-of-season sim & title odds

Predictions & betting

GET/v1/fixturesFixtures of the next two weeks + provisional predictions
GET/v1/predictionsLineup-based predictions (~20 min before kick-off)
GET/v1/fixtures/{id}/predictionFixture prediction + scoreline odds
GET/v1/value-betsESB betting tips: open bets before kick-off + settled record

Account

GET/v1/usageYour own request usage (used / cap / remaining) — doesn't count against quota
GET/v1/portalStripe billing-portal link (manage payment, invoices, cancel)

Recruitment & fit

The intelligence layer — derived analytics no other football API offers. Same computed models that power our scouting and agent tools.

GETTransfer-fit score
/v1/fit?player_id=&target_club_id=

A 0–100 score for a specific player → club move, blending three families: tactical fit (how the player's playing-style profile matches the club's system), financial fit (our computed market value vs what the club typically pays), and strategic fit (squad need at that position, age profile, and level step). Returns the headline score plus the per-signal breakdown that drives it — the same engine behind our TransferWatcher partner tool.

GETOpportunity map
/v1/players/{id}/opportunities

An outbound shortlist of the realistic clubs a player could move to, each scored for reachability (the club's level relative to the player) and fit. Surfaces step-up, lateral and fallback destinations in one ranked list — the recruitment view from the player's side, ready to drop into an agent or scouting dashboard.

GETSquad gaps
/v1/clubs/{id}/squad-gaps

Per-position gap analysis for a club: which slots have weak starters or thin depth, measured by comparing each position's Elo to peer clubs, plus the size of the upgrade needed. This is the input that turns into a recruitment shortlist — pair it with the fit and opportunity endpoints for an end-to-end scouting pipeline.

Quick Start

cURL

curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://data-api.playerelo.football/v1/players?limit=10

Python

import requests

url = "https://data-api.playerelo.football/v1/players"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
params = {"limit": 10}

players = requests.get(url, headers=headers, params=params).json()

for p in players:
    print(f"{p['player_name']}: {p['elo']}")

Frequently asked questions

Is there a free football prediction API?

Yes. PlayerElo's free tier gives you 500 requests a month across every endpoint — including match predictions, player and coach Elo ratings, and rating history — with no credit card. Paid plans start at €19/month for 10,000 requests.

What does the football prediction API return?

For each upcoming fixture the API returns home/draw/away win probabilities and scoreline odds, computed from our player-level Elo model (every player and coach rated individually, refreshed daily) rather than team-level form alone.

How do the predictions compare with the market?

Our model-vs-market page publishes the live record of every bet the model flagged, per bookmaker — so you can read the numbers yourself rather than take a marketing figure at face value. Over more than a thousand bets that record is slightly negative: close enough to the market to show the ratings predict well, not far enough past it to clear the bookmaker’s margin. That is why this is sold as a rating feed and not as a betting edge.

How often should I check for ESB betting tips?

ESB (Established Squads Betting) tips appear in the last ~30 minutes before kick-off. On match days, check /v1/value-bets about every 15 minutes during the busy windows: weekdays 16:30–22:00, weekends 11:30–23:00, plus 23:30–05:30 for matches in the Americas (Central European time: UTC+2 in summer, UTC+1 in winter). In our measurement that catches about 80% of tips before kick-off for roughly 1,600 requests a month, which needs a paid plan. Within the free plan's 500 requests a month, polling only on weekday evenings (19:30–22:00) and weekend afternoons (14:30–22:00) catches about half. No profit is promised; the record is published on the betting page.

What football data does the API cover?

87K+ players and thousands of coaches across 176 competitions worldwide, with Elo ratings, Elo Above Replacement (EAR), full match-by-match history, computed market values, playing-style profiles, league tables and season simulations.

Can I use the API commercially?

Yes. Paid plans permit commercial use; the Business plan adds a commercial licence and higher volume. The data is our own computed ratings and derived analytics, not raw third-party feeds resold 1:1.

Do the IDs match API-Football?

Yes — every ID the API returns (player, coach, club, league and fixture) is the same ID that API-Football (api-football.com) uses, so you can join our ratings straight onto their data. Coach IDs carry a "coach_" prefix (e.g. coach_4); drop it for the raw API-Football coach ID.