Recount - Damage & Healing Meter for All WoW Versions
✅ Now on World of Warcraft: Forever, as well as Retail Midnight (12.0)! Recount's bars show live damage, DPS, healing, damage taken, absorbs, and deaths during combat on both — including mid-fight in raids and dungeons. Turn the game's built-in Damage Meter on in the Options menu (on Midnight: Options > Gameplay Enhancements > Damage Meter) so the data is there for Recount to read. Classic Era and every other Classic flavor are unchanged.
Recount is the definitive damage and healing meter for World of Warcraft. Whether you're optimizing your DPS rotation, tracking healer throughput, or reviewing a wipe, Recount gives you the data you need in a clean, customizable interface — on every modern WoW client.
Overview
Originally created by Cryect and ported through multiple expansions, Recount records detailed combat statistics and presents them as sortable bar lists with optional time-based graph overlays. It supports Classic Era, TBC, Wrath, Cata, and MoP Classic, retail through Midnight (12.0), and World of Warcraft: Forever, and is built on the external Ace3 framework for compatibility and stability.
Using the Window
The window appears on its own and starts recording the moment you enter combat. From there:
- Click a bar — opens that player's breakdown: the abilities behind the number, who they hit, and the spread of hits, crits, misses and resists
- Shift+click a bar — a time graph of their damage or healing across the fight
- Ctrl+click a bar — pops out a small live graph tracking just that player
- Alt+click a bar — add that player's line to the graph window (a new comparison if the graph is closed or shows another mode)
- Ctrl+Alt+click a bar — remove that player from the recorded data
- Right-click a bar — per-player actions
- Right-click the title bar — change what the meter is showing; the modes are grouped under Damage, Healing, Threat, Power, Utility and Misc, each listed alphabetically
- The tabs above the window — one per display; click one to switch, + to add another, < / > or the mouse wheel to scroll when there are more than fit, right-click to close or reorder. Don't want them? Untick Show Tabs in the window settings
- Right-click a tab, "Show Below" — shows that display in the lower part of the window, under the one you are on, so you can watch two at once. Drag the bar between them to change how much room each gets; right-click it to go back to one. Clicking a bar in either half opens that half's details; reporting, the title menu, the mode arrows and Alt+scroll act on the top half
- Right-click a tab, "Show in Window" — opens that display in a window of its own, which you move and size apart from the main window. It keeps updating while the main window is hidden and reopens where you left it at your next login. "Close Window" on the same menu, or the window's close button, closes it
- Alt+mouse wheel over the title bar — page through the display modes
- Drag the bottom corners to resize, drag the title bar to move
The title bar also carries buttons for resetting the data, browsing previous fights, reporting to chat, and opening the comparison graph (Alt+click the reset button to clear without the confirmation prompt). If the window is in your way, /recount hide — or pin it down with /recount lock.
Display Modes
Switch between modes with the tabs above the main window, the title-bar dropdown, a keybinding, or Alt+mouse wheel:
- Damage Done — Total damage with per-player breakdown
- DPS — Damage per second over the active combat window
- Friendly Fire — Damage dealt to friendly targets
- Damage Taken — Incoming damage per player
- Healing Done — Total effective healing output
- Absorbs — Absorb shield consumption
- Healing Taken — Healing received per player
- Overhealing Done — Wasted healing output
- Deaths — Death count with event log drill-down
- DOT Uptime — Damage over time application tracking
- HOT Uptime — Heal over time application tracking
- Activity — Time spent actively attacking or casting
- Threat — Threat generated per player and pet, with peak threat and a threat-per-second graph
- Live Threat — Everyone's threat on your current target right now, pets included, and how close each is to pulling aggro; starts fresh every fight
The tracker modules below add further modes to the same dropdown — Interrupts, Interrupted, Dispels, Dispelled, CC Breakers, Ressers, Damage Prevented, a mode for each power type gained (Mana, Energy, Rage, Runic Power, Astral Power, Maelstrom, Fury, Pain), Mana Given and Totems. These are always available. The Modules settings tab switches the optional core modes on or off: Healing Taken, Overhealing Done, Deaths, DOT Uptime, HOT Uptime, Activity and Threat (which covers Live Threat too). Ticking Threat also turns on the recording settings it needs.
Pets are merged into their owner by default, so a hunter's bar is the hunter plus the pet — and the pet's own abilities are listed in that bar's breakdown, named like Claw (Fluffy), so the numbers under the bar add up to the bar. A shaman's totems are pets too, so a totem's mana and overhealing count in its shaman's Mana Given and Overhealing Done, and a Felhunter's dispels count for its warlock. Prefer the pet on a bar of its own? Untick Merge Pets w/ Owners in the Filters settings. The pet has its own record either way, so switching applies to fights you have already recorded.
Tracker Modules
Additional combat event modules extend Recount beyond basic damage and healing:
- CC Breakers — Tracks who broke crowd control effects
- Dispels — Counts dispels and purges per player
- Interrupts — Logs spell interrupts with target and ability detail, and adds an Interrupted mode showing who was interrupted and by whom
- Damage Prevented — Works out how much damage a mitigation buff stopped and credits the player who cast it
- Power Gains — Tracks mana, energy, rage, runic power, astral power, maelstrom, fury and pain gained, each in its own mode, and adds a Mana Given mode showing who granted the mana rather than who received it
- Resurrections — Records who resurrected whom (the Ressers mode)
- Threat — Samples the threat of you, your group and your pets once a second, tracking peak threat and threat per second, and adds the Live Threat mode. Pets always get bars of their own in both threat modes, so you can keep your threat below your pet's
- Totems — Counts the totems each shaman put down, including ones that never deal damage or heal (Windfury, Strength of Earth and the like); click a shaman to see which totems and how many of each. With Record Combat Only on (the default), totems dropped up to two minutes before a pull count towards that fight and totems dropped while travelling are not recorded. Summons from items and trinkets are not counted
Drill-Down & Graphs
- Click any player bar to open a detailed breakdown of abilities, targets, hit types, resists, and timing
- Shift+Click any player bar to open a time-series graph of their damage or healing over the fight (requires "Record Time Data" enabled in settings)
- The graph window uses LibGraph-2.0 to render smooth, zoomable DPS/HPS curves; Alt+click more bars to add their lines, or press its + button to add everyone listed in the main window
- Graph display options — show running totals instead of per-second rates, normalise series to a common scale, or stack them on top of each other
- Compare Graph — the button on the main window's title bar opens a comparison window where you can plot several players and metrics against each other on one graph. Pick a player and a metric, add the series, and repeat; you can mix metrics (one player's damage against another's healing), limit the plot to a single recorded fight, and toggle normalising and running totals per graph.
- Death log — clicking a player in the Deaths mode shows the events leading up to each death, with a health graph plotting incoming hits and heals over the final seconds
Fight History
- Recount automatically segments data by combat encounter
- Browse previous fights from the fight button on the title bar — review any individual pull, or go back to the overall totals for the session
- Configurable fight history depth
- Keep Only Boss Segments — an option to segment on bosses only, so a run of trash pulls cannot push a boss attempt out of the list
- On Retail Midnight and WoW Forever the fight list is the one the game's own damage meter keeps, so how many past fights you can pick, and what they are called, is up to the game there
Reporting
- Report the current mode to Say, Party, Instance, Raid, Guild, Officer, RealID (where your game version supports it), a whisper (by name or to your current target), or any chat channel you are joined to — from the report button on the title bar,
/recount report, or a keybinding - You choose how many lines go out
- Destinations you cannot currently use are left out of the list, so Raid only appears when you are in one
Live Meter Windows
Small always-on windows that track one number in real time, separate from the main meter. Open them from Settings > Realtime or with /recount realtime; each remembers its own size and position.
- Per player — Ctrl+click any bar (or pick it from the bar's right-click menu) to pop out a live graph of just that player, in whichever of Damage Done, DPS, Damage Taken, Healing Done or Healing Taken you are currently viewing
- Raid-wide — the whole group's DPS, HPS, DTPS or HTPS on one graph
- Client stats — FPS, latency, upload and download traffic, and how much addon-message bandwidth is left
Customization
- Addon Language — pick the language for Recount's own text from a dropdown, independent of your game client's language. All 14 bundled translations are selectable, plus "Auto" to follow the client as before. Takes effect after a /reload; in-game item, spell and unit names still come from your client.
- LibSharedMedia-3.0 support — use any installed font or statusbar texture
- Configurable colors with a color picker: title, background and title text for the main window and for the other windows, the bar text, the Total bar, and per-class bar colors
- Adjustable bar height and spacing, font and bar texture, and window scale
- Main window — show or hide the Total bar (off by default) and the scrollbar, hide the window automatically in combat, and choose which title-bar buttons appear (report, fight list, settings, reset, previous and next mode, close)
- Bar text — choose what each bar shows: a rank number before the name, the realm after it, the per-second rate and the share of the total after the amount, and the number style (standard, commas, or short like 4.10M). You can also swap the text and bar colors, and Highlight Your Bar (on by default) makes your own bar gently pulse so it stands out from others of your class, in every mode including Live Threat; untick it to keep your bar still
- Class color bars with support for custom class colors (
CUSTOM_CLASS_COLORS) - Pet merging — optionally roll pet damage/healing into owner totals
- Absorb merging — count absorb shields as healing, and absorbed damage as damage (both on by default)
- Tabs — Show Tabs turns the tab row above the window on or off. Your tabs, which one is shown below, and which one has a window of its own (and where that window sits) are saved with your profile
- What gets recorded — filter by who (yourself, grouped and ungrouped players, hostile players, pets, trivial and non-trivial mobs, bosses, and unknown units), choosing separately whether each is shown, recorded, recorded with time data and has its deaths recorded; by where (outside instances, scenarios, dungeons, raids, battlegrounds, arenas); and by group size (solo, party, raid). Optionally hide the window while it is not collecting, or during pet battles
- Automatic clearing — wipe the data when you enter an instance (or only a different one from last time), join a group, or join a raid, each with or without a confirmation prompt; and optionally drop old time-graph data automatically
- Pause — stop and resume recording without losing what is already there (
/recount pauseor a keybinding) - Minimap button — LibDBIcon-1.0 button on the minimap; left-click toggles the main window, Shift+click opens the config panel, right-click opens the WoW addon settings page; position and visibility persisted per-profile; can be shown or hidden from the Recount settings panel
- Titan Panel / LibDataBroker — Data source plugin for Titan Panel, Bazooka, DockingStation, and any LDB display addon; shows a live stat (DPS, Damage Done, HPS, Healing Done, Damage Taken, or Deaths) for the local player; left-click toggles the Recount window; right-click to switch the stat and the data set (Overall, Last Fight or Current Fight); hover for a full six-stat tooltip
Technical Details
- Multi-version — Supports Classic Era, TBC, Wrath, Cata, and MoP Classic, retail through Midnight (12.0), and World of Warcraft: Forever
- Four required addons — Ace3 (the shared library framework, kept external rather than bundled so you are not carrying a copy of it per addon), VersionCheck-1.0 (tells you in-game when a new Recount is out), LibDBIcon-1.0 (the minimap button and the Titan Panel feed) and LibAceGUIWidgets (shared interface pieces, used for Highlight Your Bar). The CurseForge app installs all four for you; if you install by hand, get them first or Recount will not load. On World of Warcraft: Forever, LibDBIcon-1.0 is not needed: Recount carries its own copy there.
- LibSharedMedia-3.0, LibDropdown-1.0, LibBossIDs-1.0, LibGraph-2.0 — Bundled libraries
- 14 bundled translations: English, Deutsch, Español, Español (Latinoamérica), Français, Italiano, Nederlands, Português (Brasil), Русский, 한국어, 简体中文, 繁體中文, Thai, Filipino. Several of the community translations are older exports and may be partial — untranslated text falls back to English.
Slash Commands
/recount— Show the command list/recount toggle,/recount show,/recount hide— Control the main window/recount config— Open the configuration window/recount gui— Open Recount's settings in a separate options window/recount uilanguage— Choose the language for Recount's own text (the same as the Addon Language setting)/recount reset— Reset current data/recount resetpos— Move every Recount window back to the centre of the screen/recount pause— Pause and resume data collection/recount lock— Lock or unlock the windows in place/recount minimap— Show or hide the minimap button/recount clamptoscreen— Turn on or off whether the windows can be dragged off the screen/recount framestrata— Choose which layer the windows draw on (default MEDIUM)/recount maxfights— Set how many past fights are kept, from 1 to 25/recount sync— Turn Recount-to-Recount data sharing on or off/recount verchk— List which Recount version everyone in your group runs/recount report— Reporting options/recount realtime— Open and close the live meter windows/recount profile— Settings profile management
Commands are not case-sensitive. In a few client languages some command words are translated (on a French client show is afficher); type /recount on its own to see the words your client uses.
Keybindings
Recount registers keybindings under Game Menu > Key Bindings > Recount — jump straight to most display modes (Damage, DPS, Healing, Deaths, Interrupts, Dispels, the power gains and more; Absorbs, Threat, Live Threat, Interrupted, Damage Prevented, Mana Given and Totems have no binding, so reach them with the tabs or the mode list), page through modes forwards and backwards, show/hide/toggle the window, reset data, pause collection, toggle pet merging, and report the main or detail window to chat.
Retail Midnight (12.0) and WoW Forever — what's different there
Patch 12.0 changed how addons are allowed to read combat data: Recount is handed numbers it may show you but is not allowed to read. World of Warcraft: Forever runs on the same modern client with the same rules. Recount reads the numbers the new supported way, and everything below applies only to Midnight and Forever. Every Classic flavour is completely unaffected.
- Turn the in-game meter on — the Damage Meter checkbox in the game's Options (on Midnight: Options > Gameplay Enhancements > Damage Meter). Without it there is nothing for Recount to show.
- Works: Damage Done, DPS, Damage Taken, Healing Done, Absorbs and Deaths, live during combat including inside raid and dungeon encounters.
- Stays blank: Friendly Fire, Healing Taken, Overhealing, DOT/HOT Uptime, Activity, Threat and Live Threat, and every mode the tracker modules add (Interrupts, Dispels, CC Breakers, Ressers, Damage Prevented, the power gains, Mana Given, Totems and the rest) — the game provides no data for them there.
- Fights: Overall Data adds up every fight until you reset it, Current Fight shows the latest one, and the fight button lists the earlier fights the game's meter still keeps, newest first. A fight the game has since dropped falls back to Overall Data.
- No Total bar, and the bars are in the game's own ranking order rather than one Recount chose. Both need working with the numbers, which is the part that is not permitted.
- The bar text options work there too: the rank number and the per-second rate always (Deaths has no rate), and the share of the total whenever the game lets Recount read the numbers (after a fight, for example). While it hides them, the percentage is left off, and a per-second rate of 1,000 or more shows in full (like "5235") instead of shortened to "5.2K". The realm-name and number-style settings do not apply: the game can hide the names, and it formats the numbers itself.
- Clicking a bar opens a spell-by-spell breakdown that keeps up with the fight, names the mobs each spell hit and what it did to each, and empties when the meter is reset. During a raid or dungeon encounter the game hides the names needed to match targets, so the lower list falls back to a plain per-spell view there.
- Hovering a bar shows no tooltip. That one is deliberate on Recount's side, to keep protected values out of frames shared with the rest of your UI.
- Resetting clears the game's own damage-meter sessions as well as Recount's data, because on these clients that is where the numbers live. Blizzard's own meter windows will empty at the same time.
- On Forever, a player's breakdown can wait until combat ends. Forever can hide which player a bar belongs to while you are fighting, and then the spell breakdown shows "available after combat" instead of erroring. Enemies are unaffected.
If you have any questions, comments or anything else, please feel free to reach out on Discord!
Recent Updates
v1.22.0 (Latest Release)
New
- Retail Midnight and Forever: pick an earlier fight. The fight button now lists the recent fights the game's damage meter keeps, newest first, as well as Overall and Current. Pick one to see its bars, and click a bar for that fight's spell breakdown. If the game has since dropped the fight you picked, Recount shows Overall Data instead. Classic versions are unchanged.
Fixed
- Retail Midnight and Forever: Overall Data no longer empties itself at the start of every fight. It showed only the current fight whatever you picked. It now keeps adding up until you reset it, and Current Fight still shows just the latest one.
v1.21.0
New
- Highlight Your Bar. Your own bar now gently pulses, so you can find yourself at a glance among others of your class, in every display mode including Live Threat. It is on by default; untick Highlight Your Bar under Bar Text Options to keep your bar still. Your pet's bar does not pulse, and the bar's text fades with it.
Changed
- Recount now needs LibAceGUIWidgets, which provides the pulse. The CurseForge app installs it for you, and most players already have it because VersionCheck-1.0 needs it too.
- This page and the README now say that Alt+click adds a player to the graph window, rather than "the comparison graph", which is a separate window.
v1.20.0
New
- Display mode: "Totems". See how many totems each shaman put down, including the ones that never deal damage or heal, such as Windfury or Strength of Earth. Click a shaman to see which totems and how many of each. Totems dropped just before a pull count towards that fight, and totems dropped while travelling are left out. Summons from items and trinkets, like an engineering dragonling, are not counted. It starts recording from this version, so older saved fights will be blank in it. Retail Midnight and Forever have no data for it.
- Totems now count for their shaman in more places. With pets merged into their owners (the default), a totem's mana now shows in its shaman's Mana Given and a healing totem's overhealing in Overhealing Done. A Felhunter's dispels count for its warlock too.
- Display mode: "Live Threat". Everyone's threat on your current target, pets included, like a dedicated threat meter: each bar shows the threat, with how close that player is to pulling aggro beside it as a percentage. It starts fresh every fight. If you target a friendly player, it follows their target.
- Pets now show their threat. In Threat and Live Threat every pet has a bar of its own, even with pets merged into their owners, so you can keep your threat below your pet's.
- Ticking Threat in the Modules settings turns on what it needs: data collection, Record Combat Only, recording for you, your group and pets, and the time data the threat graph uses.
- Click a threat bar to see its graph. In Threat and Live Threat, clicking a player or pet opens their threat graph, as clicking a damage bar opens its details. The graph follows each player's threat on their own target.
- Live Threat has no Total bar, and reporting it to chat names the mob the list is for and leaves out the total line.
Changed
- The display mode menu is easier to find your way around. Right-clicking the main window's title now shows Damage, Healing, Threat, Power, Utility and Misc, each opening a list of its modes in alphabetical order. Modes added by other addons appear under Misc.
- Threat shows the real number, as threat meters such as ThreatClassic2 do, instead of thousands rounded to one decimal place. On Classic this includes fights you recorded before this update.
- Damage and Healing tooltips count every pet, not just the top one. A shaman with several totems now sees all of them in the pet line and in the pet Top 3 lists.
- Mana and other power gained between fights is no longer recorded when Record Combat Only is on, so Mana Spring ticks between pulls stop showing up in the next fight.
- With absorbs merged into healing, a pet's share of a Healing tooltip is now worked out correctly. It used to read too high.
- The comparison graph window's text can now be translated, like the rest of the addon. Until translations for it arrive, other languages show it in English.
Fixed
- Threat read 100 times too high on Classic. It now matches threat meters such as ThreatClassic2, and fights you already recorded are corrected too.
- Healers showed no threat while targeting a friendly player. Their threat is now read against that player's target.
- A bar whose number dropped to zero stayed on the main window showing its old number, and could be included in a chat report. It now disappears, and sending a report no longer leaves the bars sized to the old top number.
- The Threat bar menu offered a realtime graph that never moved. The entry is gone, and Ctrl+clicking a threat bar now opens the threat graph instead.
- Removing a player did not fully forget their guardians.
- Several display modes, the Activity tooltip and the detail window's summary could cause an error for someone who took no part in the fight you were looking at. They now show zero.
- "Top 3" tooltips listed the same entry three times. They now list the top three.
- A normal melee swing could be labelled as a Windfury or other extra attack. The label now goes on the extra swing, including a pet's.
- A shaman from another realm got no credit for Damage Prevented.
- A party member's pet or totem that was already up when you reloaded lost all its numbers. They are now kept.
- The detail window could cause an error after you removed the player it was showing. It now closes when that player is removed.
- Hovering the comparison graph placed its crosshair and tooltip in the wrong spot.
- Adding everyone to the graph showed only one player's line when the graph window was closed, and could cause an error for a group member with no graph data recorded. Everyone listed is now added.
- A display mode added twice was listed twice.
- English players saw "Maelstorm" instead of "Maelstrom". A saved tab with the old spelling is renamed for you.
v1.19.6
Changed
- This page and the bundled README have been checked against the addon and corrected. They now say which modes can be switched off and which always run, which displays have keybindings, which colours you can change, and that sync starts off. They also describe options and clicks that were never written up, such as Alt+click on a bar for a comparison graph, Ctrl+Alt+click to remove someone, and the group-size and zone filters.
Fixed
- The CurseForge app installs LibDBIcon-1.0 for you again. A mistake in how Recount was packaged told CurseForge that LibDBIcon was already inside Recount, so it was not installed, and Recount would not load on any version except Forever. If you installed it by hand in the meantime, nothing changes.
- The Threat box on the Modules settings tab now shows the right setting after you change profile. It kept showing the previous profile's choice until you reloaded.
v1.19.5
Fixed
- Retail and Forever: the per-second rate no longer shows a long string of decimals during combat. While you were fighting, a rate could read "72.8595849583423" instead of "73". It is now always a whole number. While the game is hiding the numbers mid-fight, a rate of 1,000 or more shows in full (like "5235") rather than shortened to "5.2K", and goes back to the short form once combat ends. Classic versions are unchanged.
- The bar text preview in the settings now matches the real bars. It showed its per-second rate with a decimal that no bar ever shows, and used a made-up figure of over a million damage per second. It now uses realistic sample numbers and follows your number style setting, like the bars do.
Older release notes are in the full changelog that ships with the addon.
Credits
Developed by:
- Cryect — Original Author
- Elsia — Ported to patch 2.4 (TBC)
- Resike — Maintained from patch 5.4 through retail
- Pimptasty — Continued maintenance and improvements
Special Thanks:
- Ace3 Development Team for the excellent framework
- LibGraph-2.0, LibSharedMedia-3.0, LibBossIDs-1.0, and LibDropdown-1.0 authors for their libraries
- The WoW Classic Era community for continued use and feedback
Community
Bug reports, feature requests, questions, or chatting with other players: Join the Recount Discord.

