Pokémon Type Effectiveness Chart: Steel Resists 10 of 17 Types — and 3 Moves That Break the Rules

Steel resists ten of the other seventeen types outright. No other type comes close — the runner-up, Fire, resists six. That single stat is why Steel-types anchor more competitive teams than almost any other typing, and it’s the kind of detail most type chart pages never explain because they’re built to show you numbers, not what they mean.

This is the complete Pokémon type effectiveness chart for the mainline games — the 18-type system that’s been unchanged since Fairy was added in Generation VI (X and Y, 2013)[3]. It also covers what the grid itself won’t tell you: three specific moves that ignore it entirely, the six types that leave you exposed to the fewest attacks, and why “resists the most” and “best type” aren’t actually the same claim.

How to Read a Type Matchup in 10 Seconds

Four multipliers cover every matchup in the game: 2x (super effective), 0.5x (not very effective / resisted), 0x (no effect / immune), and 1x (neutral — the default for most matchups). For a dual-type Pokémon, the two multipliers stack by multiplication, not addition. Two weaknesses to the same attacking type combine into 4x damage; two resistances combine into 0.25x; a resistance and a weakness cancel each other out to a flat 1x. A single immunity anywhere in the pair blocks the move completely, regardless of what the other type does. One more multiplier sits outside the chart entirely: STAB (Same-Type Attack Bonus) adds a flat 1.5x whenever a Pokémon uses a move matching one of its own types, stacking on top of whatever the target’s resistance or weakness already does.

A Grass/Ghost Pokémon like Decidueye is a clean example of the stacking rule in action: Grass alone is weak to Fire and Ice, and Ghost alone is weak to Ghost and Dark, so Decidueye inherits all four as full 2x weaknesses — plus a Flying weakness from its Grass half — while also picking up Ghost’s immunities to Normal and Fighting entirely for free.

Player typeHow to use this chart
New playerMemorize the six types with the fewest weaknesses (below) before worrying about full matchup math — it cuts your bad-matchup risk more than reading the whole grid.
Casual playerSkim the chart for your starter or favorite’s row only. Check weaknesses before a major fight; skip the exceptions section on a first read.
Hardcore / optimiserThe 4x/0.25x dual-type stacking math and the 3 rule-breaking moves below matter more than the base chart — that’s where damage races are actually won or lost.
CompletionistCross-reference every type in your box against the fewest-weaknesses ranking to find blind spots across your whole roster, not just your active team of six.

The Complete Pokémon Type Chart (All 18 Types)

Every type’s full defensive profile — what hits it for 2x, what it resists at 0.5x, and what it’s fully immune to — verified directly against Pokémon Database’s per-type data[1][2]:

TypeWeak to (2x)Resists (0.5x)Immune to (0x)
NormalFightingGhost
FireWater, Ground, RockFire, Grass, Ice, Bug, Steel, Fairy
WaterElectric, GrassFire, Water, Ice, Steel
ElectricGroundElectric, Flying, Steel
GrassFire, Ice, Poison, Flying, BugWater, Electric, Grass, Ground
IceFire, Fighting, Rock, SteelIce
FightingFlying, Psychic, FairyBug, Rock, Dark
PoisonGround, PsychicGrass, Fighting, Poison, Bug, Fairy
GroundWater, Grass, IcePoison, RockElectric
FlyingElectric, Ice, RockGrass, Fighting, BugGround
PsychicBug, Ghost, DarkFighting, Psychic
BugFire, Flying, RockGrass, Fighting, Ground
RockWater, Grass, Fighting, Ground, SteelNormal, Fire, Poison, Flying
GhostGhost, DarkPoison, BugNormal, Fighting
DragonIce, Dragon, FairyFire, Water, Electric, Grass
DarkFighting, Bug, FairyGhost, DarkPsychic
SteelFire, Fighting, GroundNormal, Grass, Ice, Flying, Psychic, Bug, Rock, Dragon, Steel, FairyPoison
FairyPoison, SteelFighting, Bug, DarkDragon

By the numbers: of the 324 possible matchups in this grid, 51 are super effective, 61 are resisted, 8 are complete immunities, and the remaining 204 — 63% of the whole chart — do neutral damage[2]. On most turns, the type chart isn’t actually deciding the fight.

3 Moves That Secretly Break the Type Chart

Three moves in the games don’t follow the grid above at all. None of them show up on a standard type chart page, because they’re move-specific exceptions, not type-specific ones — Serebii’s own reference chart explicitly notes that its numbers don’t account for moves like these[6], and most competing chart pages skip the topic entirely.

Freeze-Dry is an Ice-type move, but it’s coded to always treat Water as a weakness, regardless of the target’s real defensive typing[5]. A Water-type that normally resists Ice takes a full 2x hit from Freeze-Dry instead — and a Water/Flying or Water/Ground Pokémon, which would already be weak to Ice on its own, takes a full 4x.

Flying Press is labeled a Fighting-type move, but the game calculates its damage as if it were Fighting and Flying at the same time[5][3]. Against a Grass/Poison target, for example, that’s a Fighting weakness and a Flying weakness stacking together for 4x — something no other Fighting-type move in the game can do, since ordinary Fighting moves only check the Fighting matchup.

Thousand Arrows is a Ground-type move that ignores Flying’s blanket immunity to Ground attacks[3][4]. It deals neutral damage to any Flying-type Pokémon that isn’t already grounded, and strips away Magnet Rise or Telekinesis on contact — the one Ground move in the game that can touch a typing every other Ground move simply can’t.

Worth separating from these three: Curse also behaves unusually, but it’s a self-targeting check on the user’s own type, not an exception to how it hits a defender — a different kind of quirk from the three chart-breakers above.

The 6 Types With the Fewest Weaknesses

No type in the game has zero weaknesses — that would break the series’ own design rule that nothing is completely uncounterable[2]. Six types get closer than the rest, though, held to just one or two weaknesses apiece.

Table showing the six Pokemon types with the fewest weaknesses: Normal, Electric, Water, Poison, Ghost, and Fairy
No type has zero weaknesses — these six come closest, each countered by only one or two move types.
Type# of weaknessesBeaten by
Normal1Fighting
Electric1Ground
Water2Electric, Grass
Poison2Ground, Psychic
Ghost2Ghost, Dark
Fairy2Poison, Steel

Fewer weaknesses isn’t automatically “better,” though. Normal makes this list with only one counter, but it also has zero resistances to fall back on if that one counter shows up. Electric’s single weakness to Ground is one of the most commonly run coverage types in the games, so that one gap gets tested constantly. Ghost and Fairy earn their spot with more than just a low weakness count: Ghost is fully immune to two entire types (Normal and Fighting) on top of its two weaknesses, and Fairy is the only type in the game immune to Dragon — historically one of the strongest offensive types there is[2][3].

If you’re building a defensive core for a new team, prioritize Fairy or Ghost — their immunities cover gaps the weakness count alone doesn’t show. If you’re chasing offensive coverage instead, the fewest-weaknesses list matters less than checking your own team against the two most-repeated answers in the “beaten by” column above: Ground and Psychic are among the most common coverage moves you’ll run into either way.

Why Steel Is the Best Defensive Type in the Game

Steel resists ten of the other seventeen types and is fully immune to Poison — the single best defensive typing in the 18-type chart, and it isn’t close[1]. Fire is a distant second with six resistances.

It wasn’t always this dominant. Before Generation VI added the Fairy type in Pokémon X and Y, Steel also resisted Ghost and Dark; both were dropped to neutral effectiveness against it when Fairy launched, since a type resisting twelve of the other seventeen attacking types risked making entire teams unbeatable on defense[1][3]. Even after losing two resistances over a decade ago, Steel still holds the record today.

The trade-off: Steel is weak to exactly three types — Fire, Fighting, and Ground[1] — the same three coverage moves almost every serious team already carries. A pure Fire-type like Cinderace is one of only three typings that touches Steel at all, which is exactly why “hardest type to hit” doesn’t mean “safe from everything.” Verified against the Generation VI-onward type chart, unchanged since Pokémon X and Y (2013) through the current generation[3].

Frequently Asked Questions

Is the Pokémon GO type chart the same as this one?
No. GO uses a softened multiplier scale instead of a flat 2x/0.5x split, so a matchup that’s a clean win in the mainline games can be a much closer fight in GO. Don’t assume the numbers on this page translate directly if you’re building a team for GO specifically.

Do abilities like Levitate or Wonder Guard change this chart?
This chart intentionally leaves ability-based exceptions out[6], because they’re conditional on the individual Pokémon rather than the type itself — Levitate grants Ground immunity to specific Pokémon regardless of typing, and Wonder Guard (unique to Shedinja) turns every non-weakness into a total miss. Treat this chart as the type-only baseline, then check a Pokémon’s ability separately before assuming its real matchups.

If I can only memorize one type’s matchups, which should it be?
Steel — not because it’s the best type to build a team around, but because its ten resistances mean the fewest of your decisions get punished if you misjudge a matchup. That’s a new-player answer specifically; it isn’t a competitive team-building recommendation.

Which type has the worst defense in the game?
Ice. It resists only itself at 0.5x and takes a full 2x hit from four separate types — Fire, Fighting, Rock, and Steel[2] — the worst resistance-to-weakness ratio of any of the 18. That’s the mechanical reason pure Ice-types are treated as fragile picks compared to a type like Water or Steel, which pair a wide resistance list with very few actual weaknesses.

Key Takeaways

The grid above answers “what beats what.” It doesn’t answer “what actually matters” — and on a chart where 204 of 324 matchups do neutral damage anyway, knowing the three moves that ignore the rules and the six types that limit your exposure wins more fights than reciting the full table. Bookmark the chart for lookups, but put your actual memorization effort into Freeze-Dry, Flying Press, and Thousand Arrows, plus your own team’s specific gaps — not the 18×18 grid itself. The chart isn’t going anywhere; it has been stable since Generation VI, so the payoff on memorizing the exceptions compounds every time a new game adds more Pokemon to keep track of.

Sources

  • Pokémon Database — Steel type profile: https://pokemondb.net/type/steel
  • Pokémon Database — individual type defense pages (all 18 types): https://pokemondb.net/type
  • Bulbapedia — Type: https://bulbapedia.bulbagarden.net/wiki/Type
  • Bulbapedia — Thousand Arrows (move): https://bulbapedia.bulbagarden.net/wiki/Thousand_Arrows_(move)
  • Serebii.net — Type Compatibility Altering Moves: https://www.serebii.net/games/typecompatibility.shtml
  • Serebii.net — Pokémon Type Chart: https://www.serebii.net/games/type.shtml
Michael R.
Michael R.

I've been playing video games for over 20 years, spanning everything from early PC titles to modern open-world games. I started Switchblade Gaming to publish the kind of accurate, well-researched guides I always wanted to find — built on primary sources, tested in-game, and kept up to date after patches. I currently focus on Minecraft and Pokémon GO.