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 9036513552 breakdown

Winner: Dire. Score 27:49, duration 30:02 (Turbo). 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

  • Clinkz — BILDROST: 6/14/12, 29,699 net worth, 1000 GPM. Played poorly You spent 10 min dead — 34% of the match. That is time not farming and not fighting.
  • Bristleback — ADMIRAL_KLITORЧУК: 5/10/12, 31,797 net worth, 1043 GPM. Played well You spent 8 min dead — 26% of the match. That is time not farming and not fighting.
  • Drow Ranger — ☭MONSTER_NsK¤: 2/11/8, 24,951 net worth, 818 GPM. Played poorly Phantom Lancer killed you 6 times — that is a read pattern, not bad luck: change position or hold a counter for that hero.
  • Viper — Fascen: 4/8/9, 24,261 net worth, 942 GPM. Played well 1 wards in 30 min — the team played nearly blind.
  • Juggernaut — walang kanen buseng: 9/6/3, 36,228 net worth, 1232 GPM. Played well You spent 6 min dead — 18% of the match. That is time not farming and not fighting.

Dire

  • Magnus — InVincion: 7/9/27, 31,712 net worth, 1064 GPM. Played poorly A mid who took 1 runes in 30 min hands the tempo to the enemy for free.
  • Pudge — Randall: 9/6/25, 30,022 net worth, 1219 GPM. Played well 33% of all damage you took came from one source — Quill Spray. That is what the build should have answered.
  • Faceless Void — MATUMBAMAN: 10/4/15, 34,302 net worth, 1418 GPM. Played well The enemy had Clinkz, and you bought no sentry or dust all game.
  • Grimstroke — the_RED_Monster: 4/6/25, 28,788 net worth, 980 GPM. Support MVP 65% of all damage you took came from one source — Quill Spray. That is what the build should have answered.
  • Phantom Lancer — WhatTheGolf: 17/2/16, 53,806 net worth, 1823 GPM. Carried the game 59% of all damage you took came from one source — Quill Spray. That is what the build should have answered.

The fight that decided it — 26:21, Base

Winning side: dire. Deaths in the fight: 5, gold swing 10,950.

  • Bristleback: 9,139 damage. Cast: Quill Spray, Hairball
  • Juggernaut: 5,881 damage. Cast: Omnislash, Blade Fury, Swiftslash
  • Viper: 5,786 damage. Cast: Viper Strike, Nethertoxin. Buybacks: 1
  • Clinkz: 1,727 damage. Cast: Skeleton Walk, Strafe
  • Drow Ranger: 406 damage. Cast: Glacier, Multishot, Gust
  • Faceless Void: 8,229 damage, killed Clinkz, Bristleback. Cast: Chronosphere, Time Walk, Time Dilation
  • Phantom Lancer: 4,943 damage, killed Viper, Drow Ranger. Cast: Doppelganger, Spirit Lance, High Five, Carnival Firework
  • Pudge: 5,582 damage, killed Juggernaut. Cast: Dismember, Rot, Meat Hook, Meat Shield
  • Grimstroke: 1,079 damage. Cast: Soulbind, Phantom's Embrace, Stroke of Fate, Dark Portrait
  • Magnus: 3,361 damage. Cast: Reverse Polarity, Skewer, Shockwave, Horn Toss
DuelsRewardsMarketBlogProfile