Dota 2 player stats API for KDA, GPM, XPM, damage, and match rows.
Pull player-level Dota 2 stat rows for profiles, rankings, fantasy pricing, dashboards, and post-match recap tools.
No sales call. No contract. Start with 500 free requests/month, then upgrade when you need production volume.
Live API data sample
4nalog
HEROIC · mid · Puck
Player radar
Hover points for percentile scores
Player match row
/player-statsKDA
7.33
GPM
642
XPM
781
LH@10
82
Hero DMG
28,640
Tower DMG
1,460
1win Essence
Game 14nalog
HEROIC · Puck
Lelis
HEROIC · Clockwerk
Davai Lama
Nigma Galaxy · Axe
Endpoint behind the sample
/api/v1/dota2/players/295547/radar?role=mid&window=90dBuilding player pages or rankings?
Pull match-level player rows instead of scraping scoreboards by hand.
Player stat fields
Dota 2 player stats developers actually need
This page is focused on player-level Dota data: profile cards, fantasy inputs, leaderboards, and post-match stat tables.
Player endpoints
Endpoints for Dota 2 player stats pages
Use match player rows for exact post-game tables, then player profile endpoints for history, heroes, and radar context.
/api/v1/dota2/matches/{matchId}/player-statsAll player rows for a Dota 2 match or series.
/api/v1/dota2/games/{gameId}/player-statsGame-specific player rows when your app needs per-game context.
/api/v1/dota2/players/{playerId}Player profile data, image URL, team context, and identity fields.
/api/v1/dota2/players/{playerId}/matchesRecent match history for player pages and form tracking.
/api/v1/dota2/players/{playerId}/heroesHero history and hero pool context for a player.
/api/v1/dota2/leaderboards/gpmRank players by metric for stat pages and comparison tools.
Player-stat use cases
What developers build with player stat rows
Player profile pages
Show image, team, role, match history, hero pool, and stat trends on one profile.
Fantasy pricing
Feed KDA, GPM, XPM, damage, and role-specific context into pricing models.
Leaderboards
Rank players by economy, damage, KDA, hero pool, or recent match performance.
Post-match tables
Build ESPN-style match stat tables without manually collecting rows.
Discord player cards
Return quick slash command cards for a player’s latest stat line.
Scouting dashboards
Compare player form, role fit, hero pool, and consistency over recent matches.
Page cluster
Dota 2 API pages built to rank together
Each page targets a specific search intent and links to the rest of the cluster.
Start free
Start testing player rows for free.
Create a free key, pull player stat rows, and validate the fields your app needs before moving to a paid plan for production volume.
Self-serve
Start testing without a sales call, demo meeting, or enterprise contract.
Builder-first
Endpoints for bots, fantasy tools, dashboards, match centers, and player pages.
Normalized
REST JSON fields shaped for product screens, not just raw source dumps.
Dota 2 Player Stats API FAQ
Can I get Dota 2 player stats by match?
Yes. Player stat endpoints expose match and game-level rows such as kills, deaths, assists, KDA, GPM, XPM, damage, tower damage, LH@10, and hero context where available.
Can I build Dota 2 player profile pages?
Yes. Use player profile, player matches, player heroes, and player radar endpoints to build profile pages with identity, history, hero pool, and percentile context.
Do player image URLs come from Cito?
Public-facing image URLs are wrapped through the Cito API domain when source images are available, so your app can display cleaner image URLs.
Are every player stat fields always populated?
No. Some advanced fields depend on source availability. The API exposes availability metadata so apps can handle missing source rows cleanly.
Build Dota player pages without rebuilding the data pipeline.
Use Cito API for player profiles, match rows, hero history, leaderboards, and radar context from one developer-friendly API.