Skip to content

Raids and Counters

Hails edited this page Jun 18, 2026 · 2 revisions

Raids and Counters

The Raids page at /raids shows every Pokemon GO raid boss currently in rotation, plus the separate Max Battles rotation, and tells you which attackers beat them. Click any boss card to see its top counters ranked by damage per second, or use the lookup picker to check how one of your own Pokemon performs against every current boss at once.

Browsing the boss list

Bosses are grouped by tier with single select tabs along the top: Mega (the highest tier) followed by the numbered tiers such as Tier 5, Tier 3, and Tier 1, ordered highest to lowest. Only one tier is shown at a time, and the highest tier opens by default. Whatever is currently in rotation determines which tabs appear.

Below the tier tabs is a row of type filter chips, one per type present in the current rotation, colored to match the type. All chips start active; click a chip to hide bosses of that type, click it again to bring them back.

Each boss card shows:

  • The boss artwork and its type badges
  • The catch CP range (for example "2,217-2,303 CP")
  • The weather boosted catch CP range, marked with a cloud icon
  • A SHINY badge if the shiny form can be obtained from the raid
  • A Pokedex flavor text blurb, genus line, and a Legendary or Mythical badge once you click the card

Counters panel

Click a boss card and a counters table appears below the grid: the top 20 attackers ranked by DPS, each with its best fast move and charged move (type badges included), the resulting cycle DPS, and a TDO (Total Damage Output) estimate. Click the same card again to close the panel.

Max Battles

If Max Battle (Dynamax) bosses are in rotation, a separate Max Battles section appears below the raids with its own tier tabs, again ordered highest tier first. The boss cards and click to see counters behavior work exactly like the raid section.

Check your own Pokemon

The Check your Pokemon picker sits between the filters and the boss grid. Type a name, pick from the dropdown, and you get a table of that Pokemon's best moveset, DPS, and TDO against every current raid and Max Battle boss, sorted best matchup first.

A config panel lets you tune the simulation:

  • Form chips: Normal, Shadow, and Purified for every Pokemon, plus Primal for Groudon and Kyogre. Selecting Shadow applies the Shadow combat modifiers; Primal swaps in the Primal base stats when available.
  • CP and IVs: enter your Pokemon's actual CP and its attack, defense, and stamina IVs. The default is the level 40 perfect IV CP, but as soon as you type your real CP the tool reverse calculates the right combat power multiplier for it (see DPS-Calculator for how that works).

Under the hood

Boss data comes from the pokemon-go-api project (github.com/pokemon-go-api/pokemon-go-api), which aggregates the LeekDuck raid boss list and the Max Battles rotation into JSON; the server caches it and ships it to the browser as part of the game data payload (see Data-Sources). Everything else happens client side in ts/raids.ts and the shared modules.

Counter rankings are computed in ts/shared/counters.ts (calcCounters). It iterates every Pokemon in the game data, looks up its full move pool (including elite moves, with Shadow, Mega, and Primal variants falling back to their base form's moveset), evaluates every fast plus charged move combination with the damage model, keeps each Pokemon's best pairing, and returns the top 20 by DPS. The default assumption is level 40 (CP multiplier 0.7903) with 15/15/15 IVs; the boss's effective defense is its base defense plus 15, scaled by the same multiplier.

The single Pokemon check (calcSinglePokemon) uses your configured CP multiplier and IVs instead. Shadow form applies a 1.2x attack bonus and a 5/6 defense multiplier (Shadows hit harder but take 20 percent more damage, which shrinks the TDO estimate); Purified has no combat modifier.

The damage formulas live in ts/shared/damage.ts: per hit damage is floor(0.5 * power * attack / defense * effectiveness) + 1, cycle DPS combines fast and charged moves over a full energy cycle, and TDO multiplies DPS by an estimated survival time based on the attacker's HP. Type effectiveness comes from the PoGoAPI type chart. See DPS-Calculator for the formulas in full.

Looking to actually do that raid?

Once you know which boss you want and who counters it, head to the Raid Finder on the Trainers page (/trainers) to join a matchmaking queue, get connected with a host, and coordinate in real time.

Clone this wiki locally