How It Works

Snitchbot — TBC consumable tracker for raid leaders

What Is Snitchbot?

Snitchbot reads a Warcraft Logs raid report and tells you exactly who showed up without their consumables. Paste a log URL, click Check, and within seconds you see every player colour-coded: green = came prepared, red = missing something.

No login required to check a log. Login with Discord to unlock saved raids and player history.

Reading the Table

After analyzing a log, the table is split into two views you can switch between:

  • Pre-Fight — Flask, Elixirs, Food, Scrolls. These are checked before the boss is pulled.
  • In-Combat — Potions used during the fight, Healthstone, Weapon Oil/Stone.

Each cell in the table shows one of these:

  • ✓ — Player had it.
  • ✗ — Player was missing it (and it matters for their role).
  • — — Not applicable. For example, if a player used a Flask, the two elixir columns show — because a flask counts as both. Or a tank doesn't need Destruction Potion.
  • 2× — For potions, shows how many times it was used during the raid.

Every row ends with two separate readouts, because pre-fight prep and in-combat potions are different things:

  • Prep — the pre-fight readiness score (Flask, Elixirs, Food, and Weapon buffs if enabled). This is what decides whether a player counts as "ready". A fully-consumed player is 3/3.
  • Potion — a separate pill for the in-combat potion: 2× (used, with count), none (skipped on a fight ≥ 60s), or — (short fight or no relevant pot). It never changes the Prep score.

On shadow-heavy fights (currently Mother Shahraz) an extra Shadow Res column appears, showing each player's total shadow resistance at pull: the Shadow Protection buff (+70, or +25 from Mark of the Wild if that's all they have — the two don't stack), resistance flasks and Gift of Arthas, gear, gems and enchants (cloak, Shadow Armor Kit, Glyph of Shadow Warding). Hover the number for the breakdown. Green ≥ 244 (Wowhead's recommended 174 from gear + the buff), amber 70–243 (buff only or partial gear), red under 70 (missing even the buff). Tanks are shown in grey — they don't need SR. It doesn't affect Prep or readiness — it's information for shadow fights.

Click any player name to open a side panel showing their full breakdown across every boss and every attempt.

How Scoring Works

The simple version

Readiness is split into two independent buckets, because bringing your consumables and using a potion mid-fight are different commitments:

  • Prep — the pre-fight score, like 3/3 or 2/3. This is everything that's active the moment the boss is pulled: Flask, Elixirs, Food (and Weapon buffs if enabled).This is the score that decides whether a player is "ready".
  • Potion — a separate indicator for the in-combat potion. It's tracked and shown, but itnever changes the Prep score.

The Prep colour tells you at a glance how they did:

  • Green — Full prep. Came fully consumed.
  • Yellow — Partial. Missing one thing.
  • Red — Missing multiple pre-fight buffs.

A player's row is highlighted green or red on their Prep alone. The bottom of the report has two lists: Not fully consumed (players missing a pre-fight buff) and Skipped combat potion (players who came prepared but used no potion on a long fight — a softer callout, not counted as unprepared).

What earns Prep points (default)

  • +1 point — Flask or Battle Elixir
  • +1 point — Flask or Guardian Elixir
  • +1 point — Food buff

A full Flask covers both elixir points. Default max Prep is 3 for everyone; enabling Weapon buffs in Settings raises it to 4. Prep does not depend on class or role.

How the Potion indicator works

The Potion pill shows one of three states per fight:

  • used — the player used at least one relevant potion (the pill shows the count). Because potions share a cooldown in TBC, Destruction, Haste, and Mana potions all count the same. The relevant types per class and role are in the table below.
  • none — the fight lasted 60 seconds or longer and the player used no relevant potion.
  • — — not expected: either the fight was shorter than 60 seconds, or the class/role has no relevant potion.

Short fights don't expect a potion. The first potion is normally saved for Bloodlust, which can be delayed 30 seconds or more into the pull, so on any fight shorter than 60 seconds(a quick wipe) the Potion pill just shows — and nobody is flagged for it.

Healthstone, Weapon Oil, and Weapon Stone are shown in the table but do not affect Prep by default. You can make weapon buffs count by enabling them in Settings.

Custom Scoring (Settings)

If you're logged in as a raid leader, you can go to Settings and choose exactly which buffs count toward the score. This only affects your view — anonymous users always see the default scoring.

  • Uncheck a buff — it no longer affects anyone's score. Nobody loses points for skipping it.
  • Check Weapon Buff — weapon oil (casters/healers) and weapon stone (melee/tanks) now count as a mandatory point.

Example: if you uncheck Food, a player missing their food buff will still show ✗ in the table (so you can see it), but it won't make their row red and won't lower their score.

Your settings are saved and apply every time you use Snitchbot while logged in.

Player Lookup

The Player Lookup tool lets you search any player by name and realm — no log URL needed. It pulls their full TBC raid history directly from Warcraft Logs and shows WCL rankings alongside consumable usage, giving you a quick overview of both how well they perform and how prepared they show up.

How to use it

Type a character name on the home page or go to /lookup, pick a realm, and hit Look up. The first search takes 20–60 seconds while data is fetched from WCL. After that, results are cached for 24 hours and load instantly. Hit ↻ Refresh data on the profile page to force a fresh fetch.

What you see

  • Combined Rating — a single Legendary / Epic / Rare / Uncommon / Common badge. Weighted 50% WCL rank % + 30% enchant score + 20% consumable compliance.
  • Per-zone collapsible tables — Karazhan, Gruul/Mag, SSC/TK (and more as content unlocks). Click a zone to expand the full boss breakdown.
  • Per-boss data — Best %, Median %, Best DPS/HPS, Kill count, Fastest kill, and every consumable column (Flask, Elixirs, Food, Weapon, Pot) based on the player's best logged kill for that boss.

Sharing a profile

Every lookup generates a shareable URL: /lookup?name=Vitok&server=thunderstrike&region=EU. Anyone with the link gets instant results (from cache) or triggers a fresh fetch if the profile is stale.

Consumable data is from the best logged kill per boss, not averaged across all kills. A player who potted on their highest-ranked kill but not on wipes will show ✓ for that boss.

Saved Raids & Player History

Login with Discord to save reports and build a history of your raid team's consumable habits over time.

Saving a report

After analyzing a log, click Save Report next to the report title. The button turns grey and says "Saved" — that's it. If you come back and load the same log again, it will already say Saved.

Dashboard

Click Dashboard in the top navigation to see two tabs:

  • Saved Reports — every log you've saved, with the date and a link to view it. You can delete a report here — this also removes all player data from that raid from your history.
  • Player Roster — every player who has appeared in any of your saved reports, with their average score, number of raids attended, and how many raids they came prepared for. Filter by role using the All / Tank / Healer / DPS tabs.

Per-player history

Click any player name in the roster to see their individual history. First you'll see a list of every raid they attended, with their average score for that night. Click a raid to drill down into a boss-by-boss breakdown — one row per boss showing their pre-fight buffs, pots used, and score.

Player data is stored inside each saved report. Deleting a report removes that raid from all player histories automatically.

Role-Based Potion Relevance

This table shows which potions are accepted for each role. A ✓ means using that potion satisfies the pot requirement. — means it doesn't apply.

Important: The entire potion category is worth 1 point maximum — using any one of the marked potions earns it. Multiple ✓ columns just mean those are all accepted options for that role.

Role / ClassHaste PotDest PotMana PotIronshield
Healer (all classes)——✓—
Tank (non-Paladin)✓——✓
Tank Paladin✓✓✓✓
Warrior / Rogue / Hunter DPS✓———
Retribution Paladin✓✓✓—
Mage✓✓✓—
Warlock✓✓✓—
Shadow Priest✓✓✓—
Shaman DPS (Enh / Elemental)✓✓✓—
Druid DPS (Feral / Balance)✓✓✓—

Technical: How Detection Works

Pre-fight buffs (Flask / Elixir / Food)

Warcraft Logs fires a CombatantInfo event at the start of every fight listing all active auras. Snitchbot scans these aura IDs and names to detect flask, elixir, and food buffs. If a flask is detected, both elixir columns show — (not applicable) since a flask counts as both.

Weapon oils and stones

Weapon enchants appear as a temporaryEnchant ID on weapon gear slots inside the CombatantInfo gear array. All 19 equipment slots are checked.

In-combat potions

Potions don't leave a lasting buff so they can't be read from CombatantInfo. Instead, all Cast events in the log are scanned and matched against known spell IDs. A 10-second pre-pull window is included so pre-potting is counted correctly.

Tracked Food Buffs (by ID)

Most food is detected because the buff name contains "well fed". These are detected by spell ID only.

FoodSpell IDNotes
Skullfish Soup33825Buff name lacks "well fed" — detected by spell ID
Enlightened43722Detected by spell ID
Well Fed43764Detected by spell ID — confirmed from live log

Tracked Flasks (by ID)

Most flasks are detected by name. These two are detected by spell ID only.

FlaskSpell IDNotes
Flask of Distilled Wisdom17627Buff name lacks "flask" — detected by ID
Flask of Chromatic Resistance17629Buff is "Chromatic Resistance" — detected by ID
Flask of Supreme Power17628+150 spell damage — buff aura ID (not the item-use spell ID)
Flask of Chromatic Wonder42735buff is "Chromatic Wonder" — detected by ID
Shattrath Flask of Relentless Assault41606buff aura "Relentless Assault of Shattrath" — detected by ID
Shattrath Flask of Fortification41607buff aura "Fortification of Shattrath" — detected by ID
Shattrath Flask of Mighty Restoration41605buff aura "Mighty Restoration of Shattrath" — detected by ID
Shattrath Flask of Supreme Power41604buff aura "Supreme Power of Shattrath" — detected by ID
Shattrath Flask of Pure Death46838buff aura "Pure Death of Shattrath" — detected by ID
Shattrath Flask of Blinding Light46840buff aura "Blinding Light of Shattrath" — detected by ID

Tracked Elixirs

ElixirTypeSpell ID
Elixir of Major AgilityBattle28497
Elixir of Healing PowerBattle28491
Elixir of Major FirepowerBattle28501
Elixir of Major Shadow PowerBattle28503
Elixir of Major Frost PowerBattle28493
Adept's ElixirBattle33721
Greater Arcane ElixirBattle17539
Elixir of the MongooseBattle17538
Elixir of DemonslayingBattle11406
Elixir of IronskinGuardian39628
Elixir of Major FortitudeGuardian39625
Earthen ElixirGuardian39626
Elixir of Major DefenseGuardian28502
Elixir of Major MagebloodGuardian28509
Elixir of Draenic WisdomGuardian39627
Elixir of the SagesGuardian17535
Gift of ArthasGuardian11371

Tracked Potions

PotionTracked AsCast Spell ID(s)Notes
Haste PotionHaste Pot28507
Insane Strength PotionHaste Pot28494counted as Haste Pot
Destruction PotionDest Pot28508
Super Mana PotionMana Pot28499
Major Mana PotionMana Pot17531
Fel Mana PotionMana Pot38929, 41617, 41618
Dark RuneMana Pot27869
Demonic RuneMana Pot16666
Ironshield PotionIronshield28579, 28515tank survival pot — counts for tanks
HealthstoneHealthstone27237, 27232, 27230, 11730, 11729, 6263, 6262tracked, not scored

Tracked Weapon Buffs

Detected via temporary enchant ID on weapon slots in CombatantInfo.

ItemTypeEnchant IDStatus
Brilliant Wizard OilOil2628confirmed
Brilliant Mana OilOil2629confirmed
Unknown OilOil2678confirmed from live logs
Superior Wizard OilOil2650unconfirmed
Unknown Stone (tank)Stone2955confirmed from live logs

Known Limitations

  • Spec inference is approximate — hybrid classes (Druid, Shaman, Paladin) are assigned a role by Warcraft Logs. Within DPS, Feral and Balance Druids or Enhancement and Elemental Shamans share potion columns showing both options.
  • Some weapon enchant IDs unconfirmed — Superior Wizard Oil (2650) hasn't been seen in live log data yet. The confirmed ones (2628, 2629, 2678, 2955) were verified from real raids.
  • Healthstone is tracked but not scored by default — it shows in the In-Combat table column for reference only.