Match autopsy

DOTA
AUTOPSY

Paste a match ID and get the whole game taken apart: every death on the map, every item that never got used, and an honest verdict on all ten players.

Find the ID in your Dota 2 match history, or in any Dotabuff link.Free, no account needed — just paste the ID.

What you get

Death map

Every kill, ward and rune where it actually happened — with the hero portrait and the minute.

Teamfights

Who started it, who showed up, and who was farming a jungle camp instead.

Build audit

Gold spent on items that sat in the bag, and the actives that were never pressed.

Hero percentiles

Not "low farm" — "GPM below 78% of players on this hero".

A verdict on each player

Decided by fixed rules in our engine, not by a model's mood.

AI breakdown on demand

The model gets the finished numbers and explains what to do about them.

How it works

  1. 1

    Paste the ID

    Any public match. Parsed replays give more — deaths, wards and fights on the map.

  2. 2

    Open the tabs

    Overview, players, map, fights, team report. All of it free and instant.

  3. 3

    Order the analysis

    Pick a player and let the model turn the numbers into a plan for the next game.

Dota 2 — match 9032321934 breakdown

Winner: Dire. Score 22:47, duration 37:40. Below is a verdict on each of the ten players, a breakdown of the decisive fight and the main mistakes, computed from match data.

Radiant

  • Lifestealer — Whistle: 9/7/6, 17,720 net worth, 558 GPM. Played well Infest was cast 4 times in 38 min on a 80s cooldown — the ability sat idle most of the game.
  • Legion Commander — 牛哥: 4/8/9, 13,956 net worth, 437 GPM. Played well Juggernaut killed you 4 times — that is a read pattern, not bad luck: change position or hold a counter for that hero.
  • Hoodwink — Crystal Lizard: 4/4/11, 9,155 net worth, 347 GPM. Support MVP Lane efficiency 38% of par for your role — you left the lane already behind.
  • Marci — 13: 2/13/8, 8,732 net worth, 265 GPM. Played poorly Slardar killed you 6 times — that is a read pattern, not bad luck: change position or hold a counter for that hero.
  • Undying — Gon Freecs: 3/15/10, 13,471 net worth, 421 GPM. Played poorly Dragon Knight killed you 7 times — that is a read pattern, not bad luck: change position or hold a counter for that hero.

Dire

  • Slardar — King of Pain: 11/7/17, 16,107 net worth, 479 GPM. Played well
  • Shadow Shaman — Melt....: 3/3/30, 14,036 net worth, 390 GPM. Played well Lane efficiency 35% of par for your role — you left the lane already behind.
  • Juggernaut — Ersh13: 14/4/8, 25,321 net worth, 712 GPM. Carried the game Lane efficiency 63% of par for your role — you left the lane already behind.
  • Dragon Knight — I'M REAL LOGIC: 16/4/13, 23,390 net worth, 655 GPM. Played well Lane efficiency 57% of par for your role — you left the lane already behind.
  • Lich — 冷冽谷的泡瓦: 3/4/22, 12,597 net worth, 373 GPM. Support MVP Lane efficiency 38% of par for your role — you left the lane already behind.

The fight that decided it — 27:42, Top

Winning side: radiant. Deaths in the fight: 10, gold swing 1,766.

  • Lifestealer: 3,067 damage, killed Juggernaut, Shadow Shaman. Cast: Infest, Rage, Open Wounds
  • Undying: 2,883 damage, killed Slardar. Cast: Decay, Soul Rip, Tombstone. Ultimate never cast
  • Hoodwink: 3,546 damage, killed Lich. Cast: Sharpshooter, Scurry, Acorn Shot, Bushwhack, Hunter's Boomerang, End Sharpshooter. Buybacks: 1
  • Legion Commander: 1,061 damage. Cast: Duel, Press The Attack, Overwhelming Odds
  • Marci: 505 damage. Cast: Rebound, Dispose. Ultimate never cast
  • Dragon Knight: 11,988 damage, killed Undying, Undying, Hoodwink, Lifestealer. Cast: Elder Dragon Form, Breathe Fire, Dragon Tail
  • Juggernaut: 3,804 damage, killed Marci, Legion Commander. Cast: Blade Fury. Ultimate never cast
  • Lich: 1,162 damage. Cast: Frost Blast, Ice Spire, Sinister Gaze. Ultimate never cast
  • Shadow Shaman: 1,034 damage. Cast: Hex, Ether Shock, Shackles, Urnaconda. Ultimate never cast
  • Slardar: 613 damage. Cast: Corrosive Haze, Slithereen Crush
DuelsRewardsMarketBlogProfile