WoW Combat Log Reference

The format Blizzard never documented — finally documented.

Every event type, every field offset, every gotcha. This reference documents the combat log format that Blizzard emits — what it looks like on disk, where each field lives, and how the math actually works. Every offset on these pages is verified against real raid and M+ logs, not guessed. Parser-implementation details (how a specific tool consumes this data) are out of scope; this is the format itself.

This documents combat log format V22, the retail format currently in use through patch 12.0+ (Midnight). The structure is stable across expansions; the exact field offsets are not.

This is a living document. It will be updated frequently as Blizzard rolls out new format versions, as new gotchas surface, and as we resolve open contradictions in the existing parser ecosystem (including our own). Bookmark it and check back.

If you cite or build on this reference, please link back to this page. That’s the only ask. Wikis, GitHub READMEs, blog posts, parser source comments — link back so others can find it too.

Sections

About This Reference

Everything here was learned the hard way — from real combat logs, real parser bugs, real 4 a.m. debugging sessions. The combat log is the most important data format in WoW (it powers WarcraftLogs, WoWAnalyzer, every parse score you’ve ever bragged about) and it remains, after twenty years, completely undocumented by Blizzard.

If you’re building anything that touches combat logs — a parser, an addon, an AI coach, a Discord bot, an analytics tool, or just a curiosity project — start here. If you find something wrong, tell usand we’ll fix it.

Maintained by Brian Morale at WowCoach.gg. For the story behind why this reference exists, see the companion blog post: The Docs Blizzard Never Wrote.