v2.0 MATH
PokéVersus type chart
Type counter finder
Normal → Normal: 1×
Incoming attack factors for this defender
- normal: 1×
- fire: 1×
- water: 1×
- electric: 1×
- grass: 1×
- ice: 1×
- fighting: 1.2×
- poison: 1×
- ground: 1×
- flying: 1×
- psychic: 1×
- bug: 1×
- rock: 1×
- ghost: 0.7×
- dragon: 1×
- dark: 1×
- steel: 1×
- fairy: 1×
Single source: official data.js. Softened factors are 1.2 / 0.85 / 0.7; dual-type products clamp to 0.65–1.35. Neutral is 1. Duplicate defender types count once.
Full 18 × 18 single-type chart
| Attack ↓ / defense → | normal | fire | water | electric | grass | ice | fighting | poison | ground | flying | psychic | bug | rock | ghost | dragon | dark | steel | fairy |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| normal | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 0.85× | 0.7× | 1× | 1× | 0.85× | 1× |
| fire | 1× | 0.85× | 0.85× | 1× | 1.2× | 1.2× | 1× | 1× | 1× | 1× | 1× | 1.2× | 0.85× | 1× | 0.85× | 1× | 1.2× | 1× |
| water | 1× | 1.2× | 0.85× | 1× | 0.85× | 1× | 1× | 1× | 1.2× | 1× | 1× | 1× | 1.2× | 1× | 0.85× | 1× | 1× | 1× |
| electric | 1× | 1× | 1.2× | 0.85× | 0.85× | 1× | 1× | 1× | 0.7× | 1.2× | 1× | 1× | 1× | 1× | 0.85× | 1× | 1× | 1× |
| grass | 1× | 0.85× | 1.2× | 1× | 0.85× | 1× | 1× | 0.85× | 1.2× | 0.85× | 1× | 0.85× | 1.2× | 1× | 0.85× | 1× | 0.85× | 1× |
| ice | 1× | 0.85× | 0.85× | 1× | 1.2× | 0.85× | 1× | 1× | 1.2× | 1.2× | 1× | 1× | 1× | 1× | 1.2× | 1× | 0.85× | 1× |
| fighting | 1.2× | 1× | 1× | 1× | 1× | 1.2× | 1× | 0.85× | 1× | 0.85× | 0.85× | 0.85× | 1.2× | 0.7× | 1× | 1.2× | 1.2× | 0.85× |
| poison | 1× | 1× | 1× | 1× | 1.2× | 1× | 1× | 0.85× | 0.85× | 1× | 1× | 1× | 0.85× | 0.85× | 1× | 1× | 0.7× | 1.2× |
| ground | 1× | 1.2× | 1× | 1.2× | 0.85× | 1× | 1× | 1.2× | 1× | 0.7× | 1× | 0.85× | 1.2× | 1× | 1× | 1× | 1.2× | 1× |
| flying | 1× | 1× | 1× | 0.85× | 1.2× | 1× | 1.2× | 1× | 1× | 1× | 1× | 1.2× | 0.85× | 1× | 1× | 1× | 0.85× | 1× |
| psychic | 1× | 1× | 1× | 1× | 1× | 1× | 1.2× | 1.2× | 1× | 1× | 0.85× | 1× | 1× | 1× | 1× | 0.7× | 0.85× | 1× |
| bug | 1× | 0.85× | 1× | 1× | 1.2× | 1× | 0.85× | 0.85× | 1× | 0.85× | 1.2× | 1× | 1× | 0.85× | 1× | 1.2× | 0.85× | 0.85× |
| rock | 1× | 1.2× | 1× | 1× | 1× | 1.2× | 0.85× | 1× | 0.85× | 1.2× | 1× | 1.2× | 1× | 1× | 1× | 1× | 0.85× | 1× |
| ghost | 0.7× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1.2× | 1× | 1× | 1.2× | 1× | 0.85× | 1× | 1× |
| dragon | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1× | 1.2× | 1× | 0.85× | 0.7× |
| dark | 1× | 1× | 1× | 1× | 1× | 1× | 0.85× | 1× | 1× | 1× | 1.2× | 1× | 1× | 1.2× | 1× | 0.85× | 1× | 0.85× |
| steel | 1× | 0.85× | 0.85× | 0.85× | 1× | 1.2× | 1× | 1× | 1× | 1× | 1× | 1× | 1.2× | 1× | 1× | 1× | 0.85× | 1.2× |
| fairy | 1× | 0.85× | 1× | 1× | 1× | 1× | 1.2× | 0.85× | 1× | 1× | 1× | 1× | 1× | 1× | 1.2× | 1.2× | 0.85× | 1× |
I read PB.effectiveness and the EFF_SOFT comment path described from data.js on 29 Oct 2026. Older guides still print a 0.5 to 1.5 clamp and a 3-second regen. Both are out of date. Regen delay in the current rules file is 2 seconds.
| Raw cell | Meaning in the file | Factor you should expect |
|---|---|---|
| 1.3 | Super effective | 1.2 |
| 0.75 | Resist | 0.85 |
| 0.5 | The old “immune” cell. It is not a true zero. | 0.7 |
| Two cells multiplied | Dual-type defender | Product, then clamp to 0.65–1.35 |
How the counter finder works
- Look at both of the defender’s types. Multiply the two softened factors.
- If the product is above 1.35, the fight uses 1.35. If it is below 0.65, the fight uses 0.65.
- A type that used to “do nothing” still deals 0.7. Do not draft as if an immunity exists.
- Type counts on the roster page tell you how many families share a type. They are not a counter list.
Type distribution from the same build: water 78, normal 62, psychic 53, flying 53, grass 51, bug 42, electric 37, fire 36, rock 36, dragon 36, poison 35, fairy 34, fighting 32, ground 29, steel 29, ghost 27, dark 25, ice 24.


Questions
Did the type chart change?
Yes. From version 2.0 the public effectiveness function softens the raw 1.3 / 0.75 / 0.5 table to 1.2 / 0.85 / 0.7, then clamps a dual-type product between 0.65 and 1.35.
Can I find counters for a dual-type Pokémon?
Yes. Choose the two defender types above. The reverse list ranks incoming attack types by their computed factor; expand the chart for all 324 single-type pairs.