● Stats refreshed 4 minutes ago · newest match 7 hours agopatch 7.4176,305 ranked matches in 24 h8,938 pro matches this patch
How we calculate
Every number on DraftMind in plain words: where it comes from, how it is computed and how much to trust it.
Win rate
The share of games a hero won under the filters you picked (rank, position, patch, period). 52% means the hero won 52 of every 100 games.
Because every match has one winner, the average win rate of all heroes is 50%. A hero at 51–52% is good; above 54% is very strong for public games.
Example: 640 wins in 1,200 games = 53.3%.
Pick rate
The share of matches in which the hero was picked. With a position filter, it is the share of matches in which the hero was played in that role.
A high pick rate with an average win rate usually means a popular, comfortable hero; a low pick rate with a high win rate often means a strong niche pick.
Games and sample size
Every percentage is based on a number of games, shown next to it. Few games make a win rate swing by chance: with 100 games, a hero that is really at 50% will show anywhere between about 40% and 60%.
Heroes with fewer than 100 games are marked “few games”, shown faded and sorted last, so they do not top the table by luck.
Rank brackets
Each match gets the average rank of its players, as reported for public matches: Herald, Guardian, Crusader, Archon, Legend, Ancient, Divine or Immortal. “Divine+” combines Divine and Immortal.
Public match data gives a rank tier, not exact MMR. Since March 2025 Valve no longer publishes top Immortal Draft matches, so Immortal numbers are thinner.
Positions
Positions 1–5 are not in the public match data, so we work them out: from each hero's usual roles and from the farm order in the team (net worth and last hits), giving each position to exactly one player.
For part of the matches STRATZ later reports the real positions; we then use those and learn from them, which makes the guesses better over time. “Not detected” means we could not tell.
Hero tiers
The Builds page gives each hero a tier for the rank, position and patch you chose. The score is the win rate we can be 95% sure of (the Wilson lower bound, in percent), plus 0.5 × log2(the hero's pick rate ÷ the average pick rate of the heroes ranked). So a hero played twice as often as average gains half a point, and one played half as often loses half a point. Win rate decides most of it, and popularity only separates heroes that are close.
Heroes are ranked by that score and cut by share: S is the top 5%, A the next 15%, B 25%, C 25%, D 20%, and F the last 10%. A tier therefore compares heroes with each other under the same filters: it is not a fixed win rate, and it can change as games arrive.
A hero with fewer than 100 games has no tier. With a position chosen, only heroes that are a real choice there are ranked, against each other. In other words, a tier is not advice to pick a hero whatever the draft: it says who has been strong so far.
Example: 54.0% over 5,000 games has a Wilson score of 52.6. At twice the average pick rate the tier score is 53.1.
Matchups and allies
“Strong against” and “Weak against” compare the hero's win rate against one enemy hero with its usual win rate. +4.0 means the hero wins 4 percentage points more often than usual when that enemy is in the game.
“Best allies” does the same for heroes on the same team. Pairs need a minimum number of games before they are listed.
Patch and freshness
Stats are per patch by default, because a patch can change a hero completely. The badge at the top shows when our newest match finished, the current patch and how many ranked matches we added in the last 24 hours.
Numbers refresh every 15 minutes. Matches arrive a few hours after they end, once all data sources have them.
Draft win chance
Suggestions are ordered by win chance, less a penalty for heroes the enemy can easily answer with a pick they still have. The penalty is largest early in the draft. The win chance shown does not include it: it is about the draft as it stands.
The draft simulator scores every available hero with a model trained on ranked matches: each hero's strength, how it does against each enemy, and how it works with each ally. The win chance is for the heroes picked so far, so it becomes more certain as the draft fills up.
A new model replaces the old one only if, on recent matches it has never seen, its predictions match reality within 2 percentage points and it is no worse than the current one. Until a model passes, suggestions use win rates only and are marked as a rough estimate.
A reason such as “+3.1% vs Phantom Assassin” shows how much that one matchup adds to the win chance. The model knows nothing about your own hero pool or skill: use it as advice, not as a verdict.
Example: if a hero shows 54.0% and “+3.1% vs Phantom Assassin”, it would show about 50.9% without that matchup.
Tournament tiers
A tournament's tier comes from the teams in it. We rate every pro team from the series in our data (Glicko-2, one step per day), and take each team's place on the day the event starts, so a past event keeps the tier it had then. A team ranks by its rating minus its uncertainty, and drops off the list after 90 days without a series.
Tier 1: at least 4 of the top 12 teams, or a very strong best 8. Tier 2: at least 2 of the top 12, or at least 4 of the top 30. Tier 3: at least 1 of the top 60. Tier 4: the rest. A qualifier is at most Tier 2. Group stage and playoffs count as one tournament, with one tier from the whole field.
Before the participants are known, a tier is marked provisional and comes from a list of major series we keep by hand, then the prize pool and PandaScore's own tier. Streamer and media events have no pro rating, so they go by prize pool alone: from $200,000 Tier 1, from $50,000 Tier 2, from $10,000 Tier 3, otherwise Tier 4.
Top players per hero
Only games with an average match rank of Divine or Immortal count, from the last 90 days. A player needs at least 100 of those games on the hero. Counts are complete, not just the matches we happen to store, because we ask STRATZ for each candidate's full history.
Players are ranked by a score: the win rate we can be 95% sure of, called the Wilson lower bound. It rewards both winning and playing a lot, and stops a short lucky streak from topping the list. Players who hide their match data never appear.
Example: 100 games at 90% score 82.6, and 2,000 games at 60% score 57.8.
Where the data comes from
Matches: Steam Web API (Valve). Average rank: OpenDota. Real positions, item timings and skill order for part of the matches: STRATZ. Hero, item and ability names and pictures: Valve.
We only use public match data. We store no personal data about players.