Get Premier League Player Ratings, Charts & Reports
Three ways to access Premier League player performance data — self-host from GitHub, use a free API key, or subscribe to the full FutrixMetrics platform. Includes live data tables, radar charts, and scouting reports.
Want to look up a Premier League player’s rating, pull a radar chart, or generate a scouting report — all from a single data source? This post walks through exactly how to do it, with live data tables pulled directly from the Football Performance API.
There are three ways to access this data, depending on how much control and depth you need:
| Access Method | What You Get | Cost |
|---|---|---|
| GitHub Self-Host | Full model source code, base-level player ratings, local database | Free (open source) |
| Free API Key | Database queries, all chart endpoints, limited report customization | Free tier available |
| Pro Platform | Full reports, customizable scouting templates, priority support | Paid subscription |
Method 1: Self-Host via GitHub
Repository: github.com/liv-ynwa/football-player-performance-API
Clone the repository and run the rating model locally. This gives you the complete model pipeline — feature engineering, percentile scoring, and GMM-based role clustering — running on your own machine.
git clone https://github.com/liv-ynwa/football-player-performance-API.git
cd football-player-performance-API
pip install -r requirements.txt
python main.py
What you get locally:
- Base-level player ratings (
rating_display_score_pct) across all supported leagues - Position-cohort percentile scores for attack, defense, and creation
- The full clustering pipeline for tactical role classification
- SQLite database you can query directly
Best for: Developers and data scientists who want to modify the model, retrain on custom data, or integrate into existing internal tooling.
Method 2: Free API Key
Sign up: lp.futrixmetrics.com
Register for a free API key and start querying the hosted API immediately. No deployment needed — just HTTP requests.
Getting Your Key
- Visit lp.futrixmetrics.com
- Create an account and copy your API key
- Pass it as a header:
X-API-Key: your_key_here
Example: Fetch Premier League Ratings
curl -X 'GET' \
'https://footballperformanceapi.site/database/ratings?league=Premier%20League&season=2024%2F2025&limit=200' \
-H 'accept: application/json' \
-H 'X-API-Key: YOUR_API_KEY'
This returns both base scores and pro scores for every Premier League player in the specified season. Below is real data from this exact call.
Live Data: Premier League Player Ratings (2024/25)
The following tables are generated from the API response. All scores are on a 0–10 scale where higher is better.
Top 20 Overall Ratings
| Rank | Player | Position | Overall | Attack | Defense | Creation |
|---|---|---|---|---|---|---|
| 1 | Bukayo Saka | Forward | 8.33 | 7.02 | 4.42 | 8.93 |
| 2 | Bruno Fernandes | Midfielder | 8.23 | 8.37 | 5.24 | 8.86 |
| 3 | James Maddison | Midfielder | 8.20 | 8.79 | 3.96 | 8.51 |
| 4 | Jan Bednarek | Defender | 8.14 | 7.71 | 8.67 | 4.65 |
| 5 | Cole Palmer | Midfielder | 8.11 | 8.93 | 2.18 | 8.66 |
| 6 | Eberechi Eze | Midfielder | 7.96 | 8.54 | 2.46 | 8.28 |
| 7 | James Tarkowski | Defender | 7.96 | 4.88 | 8.50 | 4.98 |
| 8 | Heung-Min Son | Forward | 7.77 | 6.56 | 3.60 | 8.65 |
| 9 | Jeremy Doku | Forward | 7.75 | 4.42 | 5.23 | 8.40 |
| 10 | Jordan Pickford | Goalkeeper | 7.66 | — | 8.07 | — |
| 11 | Amad Diallo Traoré | Forward | 7.55 | 6.57 | 6.97 | 8.52 |
| 12 | İlkay Gündoğan | Midfielder | 7.52 | 4.58 | 3.03 | 8.19 |
| 13 | Alexander Isak | Forward | 7.47 | 8.77 | 2.85 | 6.71 |
| 14 | Aaron Wan-Bissaka | Defender | 7.43 | 7.01 | 5.42 | 8.01 |
| 15 | Ethan Pinnock | Defender | 7.37 | 7.35 | 7.40 | 4.30 |
| 16 | Dara O’Shea | Defender | 7.34 | 3.27 | 8.32 | 3.56 |
| 17 | Enzo Fernández | Midfielder | 7.32 | 7.42 | 3.83 | 8.56 |
| 18 | Jacob Greaves | Defender | 7.31 | 5.30 | 7.60 | 3.60 |
| 19 | Declan Rice | Midfielder | 7.26 | 6.55 | 5.97 | 8.18 |
| 20 | Alex Iwobi | Forward | 7.16 | 5.36 | 5.80 | 7.84 |
Top 10 Forwards
| Rank | Player | Overall | Attack | Defense | Creation |
|---|---|---|---|---|---|
| 1 | Bukayo Saka | 8.33 | 7.02 | 4.42 | 8.93 |
| 2 | Heung-Min Son | 7.77 | 6.56 | 3.60 | 8.65 |
| 3 | Jeremy Doku | 7.75 | 4.42 | 5.23 | 8.40 |
| 4 | Amad Diallo Traoré | 7.55 | 6.57 | 6.97 | 8.52 |
| 5 | Alexander Isak | 7.47 | 8.77 | 2.85 | 6.71 |
| 6 | Alex Iwobi | 7.16 | 5.36 | 5.80 | 7.84 |
| 7 | Dwight McNeil | 7.10 | 5.45 | 4.10 | 8.59 |
| 8 | Adama Traoré | 7.08 | 3.73 | 3.20 | 8.45 |
| 9 | Jarrod Bowen | 7.06 | 7.22 | 6.13 | 7.34 |
| 10 | Erling Haaland | 6.89 | 8.82 | 3.06 | 4.12 |
Top 10 Midfielders
| Rank | Player | Overall | Attack | Defense | Creation |
|---|---|---|---|---|---|
| 1 | Bruno Fernandes | 8.23 | 8.37 | 5.24 | 8.86 |
| 2 | James Maddison | 8.20 | 8.79 | 3.96 | 8.51 |
| 3 | Cole Palmer | 8.11 | 8.93 | 2.18 | 8.66 |
| 4 | Eberechi Eze | 7.96 | 8.54 | 2.46 | 8.28 |
| 5 | İlkay Gündoğan | 7.52 | 4.58 | 3.03 | 8.19 |
| 6 | Enzo Fernández | 7.32 | 7.42 | 3.83 | 8.56 |
| 7 | Declan Rice | 7.26 | 6.55 | 5.97 | 8.18 |
| 8 | Dominik Szoboszlai | 7.10 | 7.97 | 3.24 | 8.26 |
| 9 | Bernardo Silva | 7.04 | 6.09 | 4.96 | 7.94 |
| 10 | Jack Grealish | 6.75 | 6.02 | 3.87 | 7.83 |
Top 10 Defenders
| Rank | Player | Overall | Attack | Defense | Creation |
|---|---|---|---|---|---|
| 1 | Jan Bednarek | 8.14 | 7.71 | 8.67 | 4.65 |
| 2 | James Tarkowski | 7.96 | 4.88 | 8.50 | 4.98 |
| 3 | Aaron Wan-Bissaka | 7.43 | 7.01 | 5.42 | 8.01 |
| 4 | Ethan Pinnock | 7.37 | 7.35 | 7.40 | 4.30 |
| 5 | Dara O’Shea | 7.34 | 3.27 | 8.32 | 3.56 |
| 6 | Jacob Greaves | 7.31 | 5.30 | 7.60 | 3.60 |
| 7 | Dan Burn | 7.14 | 4.91 | 5.60 | 4.79 |
| 8 | Joško Gvardiol | 7.09 | 8.37 | 4.71 | 7.28 |
| 9 | Gabriel Magalhães | 6.90 | 7.73 | 5.49 | 5.70 |
| 10 | Harry Maguire | 6.75 | 6.33 | 6.54 | 5.23 |
Top 10 Goalkeepers
| Rank | Player | Overall | Defense |
|---|---|---|---|
| 1 | Aaron Ramsdale | 8.61 | 5.62 |
| 2 | Jordan Pickford | 7.66 | 8.07 |
| 3 | Arijanet Muric | 7.30 | 5.47 |
| 4 | Alphonse Areola | 6.92 | 6.10 |
| 5 | Bernd Leno | 6.84 | 4.21 |
| 6 | Guglielmo Vicario | 6.67 | 7.38 |
| 7 | Dean Henderson | 6.60 | 6.46 |
| 8 | Alisson Becker | 6.41 | 6.24 |
| 9 | Antonin Kinsky | 6.33 | 8.39 |
| 10 | Alex Palmer | 6.31 | 7.52 |
Fetching Player Charts
With the same API key, you can generate visual charts as PNG, SVG, or interactive HTML. Here are the key chart endpoints for Premier League analysis.
Radar Chart — Individual Player Profile
GET /player-charts/radar/{player_id}?season=2024/2025&source=pro&format=png
Returns a radar chart showing the player’s percentile scores across all skill dimensions, compared against the average for their position. Use this to quickly assess a player’s strengths and weaknesses at a glance.
Compare 2–5 Players Side-by-Side
GET /player-charts/compare?player_ids=101,202,303&season=2024/2025&source=pro&format=html
Overlay multiple players on a single radar chart. Ideal for comparing transfer targets or rotation options within the same position group.
Season-by-Season Timeline
GET /player-charts/timeline/{player_id}?source=pro&format=html
Track how a player’s rating and skill dimensions have evolved over multiple seasons. Essential for evaluating development trajectories and identifying declining form.
Top Players Bar Chart
GET /player-charts/top-players?league=Premier League&position=Forward&n=20&season=2024/2025&source=pro&format=png
Generates a ranked bar chart of the top N players, filterable by league, position, and season.
Score Distribution (Box Plot)
GET /player-charts/score-distribution?dim=rating_display_score_pct&season=2024/2025&source=pro&format=png
Box-plot distribution of any score dimension across all positions — useful for understanding where a player sits relative to the global population.
Score Scatter Plot
GET /player-charts/score-scatter?x_dim=attack_score_score_pct&y_dim=defense_score_score_pct&league=Premier League&color_by=position&format=html
Two-dimensional scatter mapping any pair of skill dimensions. Colour by position or cluster to reveal tactical groupings.
Cluster Heatmap & Distribution
GET /player-charts/cluster-heatmap?group=Forwards&format=png
GET /player-charts/cluster-distribution?source=pro&season=2024/2025&format=png
The heatmap shows the statistical fingerprint (mean z-scores) of each tactical role cluster. The distribution chart shows how many players fall into each cluster.
Cluster Profile — Individual Player
GET /player-charts/cluster-profile/{player_id}?season=2024/2025&source=pro&format=html
Shows the GMM probability distribution across role clusters for a specific player — revealing whether they are a pure archetype or a tactical hybrid.
League-Level Score Heatmap
GET /player-charts/league-scores?source=pro&season=2024/2025&top_leagues=20&format=png
Compare average skill scores across the top 20 leagues. Useful for contextualizing Premier League scores against other European competitions.
Fetching Player Reports
The /report endpoint generates a full HTML scouting report for any player in the database.
Report Data (JSON)
GET /report/data?name=Bukayo Saka&season=2024/2025&league=Premier League
Returns the raw JSON payload behind the report — player metadata, all scores, cluster assignment, and historical data. Use this if you want to build your own report template.
Full HTML Report
GET /report?name=Bukayo Saka&season=2024/2025&league=Premier League
Returns a self-contained HTML document with radar charts, score breakdowns, tactical role classification, and season comparison — ready to share with coaching staff or recruitment committees.
Customizable Reports
GET /report/customize
Access the report customization interface. Check your quota:
GET /report/customize/usage
Customizable reports let you adjust visual styling, choose which sections to include, and brand the output with your organization’s identity.
Method 3: Full Platform Access
Website: futrixmetrics.com/services
For professional scouting departments and analytics teams that need the full suite:
| Feature | Free API | Pro Platform |
|---|---|---|
| Database queries (ratings, features, clusters) | Up to 200 rows | Up to 5,000 rows |
| All chart endpoints | Yes | Yes |
| Player reports | Limited customization | Full customization + branding |
| Report generation quota | Basic | Extended |
| Priority support | — | Yes |
| Custom model integration | — | Contact for details |
Visit futrixmetrics.com/services to explore pricing and feature breakdowns.
Quick Reference: All Available Endpoints
Database Endpoints
| Endpoint | Method | Description |
|---|---|---|
/database/ratings | GET | Player ratings with base + pro scores |
/database/players/basic | GET | Player metadata (name, position, club, league) |
/database/player-features | GET | Full feature vectors + percentile scores |
/database/role-cluster-results | GET | GMM tactical role assignments per player |
/database/role-cluster-summary | GET | Cluster definitions and characteristic profiles |
Chart Endpoints
| Endpoint | Method | Description |
|---|---|---|
/player-charts/radar/{player_id} | GET | Radar chart: player vs position average |
/player-charts/timeline/{player_id} | GET | Season-by-season rating timeline |
/player-charts/compare | GET | Overlay radar for 2–5 players |
/player-charts/top-players | GET | Top N players bar chart |
/player-charts/score-distribution | GET | Box-plot across positions |
/player-charts/score-scatter | GET | Two-dimensional scatter plot |
/player-charts/cluster-heatmap | GET | Mean z-score heatmap per cluster |
/player-charts/cluster-distribution | GET | Player count per cluster |
/player-charts/cluster-profile/{player_id} | GET | GMM membership probabilities |
/player-charts/league-scores | GET | Average scores per league heatmap |
Report Endpoints
| Endpoint | Method | Description |
|---|---|---|
/report/data | GET | Report data as JSON |
/report | GET | Full HTML scouting report |
/report/customize | GET | Customization interface |
/report/customize/usage | GET | Check customize quota |
/report/customize/consume | POST | Consume one customize unit |
Model Endpoints
| Endpoint | Method | Description |
|---|---|---|
/score/predict | POST | Score a player with pro model |
/score/predict-base | POST | Score a player with base model |
/charts/overview | GET | Model overview stats |
/charts/positions | GET | Top positions by coverage |
/charts/leagues | GET | Top leagues by coverage |
/charts/features | GET | Feature importance diff (pro vs base) |
Common Query Parameters
All database and chart endpoints support these filters:
| Parameter | Example | Notes |
|---|---|---|
league | Premier League | Exact match |
season | 2024/2025 | Exact match |
position | Forward | Exact match |
player_id | 12345 | Numeric ID |
source | pro or base | Model tier |
format | png, svg, html | Chart output format |
limit | 200 | Max rows (up to 5000) |
offset | 0 | Pagination offset |
Example Workflow: Scouting a Premier League Forward
Here is a practical step-by-step workflow combining all three data types.
Step 1 — Identify candidates from the ratings table:
GET /database/ratings?league=Premier League&season=2024/2025&limit=500
Filter for forwards, sort by rating_display_score_pct. From the data above, our top candidates are Saka (8.33), Son (7.77), Doku (7.75), Diallo (7.55), and Isak (7.47).
Step 2 — Pull detailed feature vectors:
GET /database/player-features?league=Premier League&position=Forward&source=pro&season=2024/2025
Check the raw stats behind the scores: goals, assists, shots, dribbles, and defensive contributions.
Step 3 — Compare the shortlist visually:
GET /player-charts/compare?player_ids={saka_id},{son_id},{isak_id}&season=2024/2025&source=pro&format=html
The overlay radar instantly shows the trade-offs: Isak leads in pure attacking output (8.77), while Saka dominates in creation (8.93) and Diallo offers the best defensive contribution (6.97) among the group.
Step 4 — Check tactical role fit:
GET /player-charts/cluster-profile/{player_id}?season=2024/2025&source=pro&format=html
Verify whether the candidate’s cluster profile matches the tactical role your system needs.
Step 5 — Generate the final report:
GET /report?name=Bukayo Saka&season=2024/2025&league=Premier League
Share the HTML report with your recruitment committee — it contains everything in a single self-contained document.
Further Reading
- Football Performance API — GitHub — Source code and self-hosting instructions
- FutrixMetrics Landing Page — Sign up for a free API key
- FutrixMetrics Services — Pro platform and pricing
- FutrixMetrics API Documentation — Full endpoint reference
- Football Player Rating Model Design — Scoring and clustering methodology
- FBref Premier League Stats — Independent statistical benchmark
Conclusion
Whether you prefer running the model locally from GitHub, querying the hosted API with a free key, or using the full FutrixMetrics platform — the data pipeline is the same: raw Premier League statistics transformed into actionable ratings, visual charts, and shareable scouting reports. The tables above show what the API returns for the current season. Start with a GET /database/ratings?league=Premier League call and build from there.