Fighting Type Weakness: Flying, Psychic, and Fairy All Hit 2x (But Ghost Walks Right Through It)

Fighting’s weakness chart is a clean mirror image of itself: Flying, Psychic, and Fairy each deal 2x damage to Fighting-types, and all three of those same types resist Fighting’s own attacks right back at 0.5x. That symmetry is the first thing worth knowing — it’s not obvious from a single glance at the chart, and it changes how you should pick a switch-in. The second thing almost nobody checks until it costs them a battle: Fighting-type moves do zero damage to Ghost-types, full stop, the same total immunity Normal-type moves get. Here’s the complete chart, why that mirrored resistance matters more than the raw multiplier, which of the three counters actually wins in mainline singles, VGC, and Pokemon GO, and how secondary typing can cancel Fighting’s weaknesses to neutral — or double them to 4x.

Fighting Type Chart Confirmed

Fighting-type Pokemon take 2x damage from Flying, Psychic, and Fairy-type moves, and take 0.5x damage from Rock, Bug, and Dark-type moves — three weaknesses against three resistances, with no defensive immunities in either direction [1]. Offensively, Fighting-type moves are super effective against Normal, Rock, Ice, Steel, and Dark, resisted by Flying, Poison, Bug, Psychic, and Fairy, and have no effect at all on Ghost [1]. That’s the chart every mainline game has used since Fairy-type Pokemon were introduced in Generation VI; nothing about it has changed since [1].

Diagram of Fighting's type matchups with the separate Ghost immunity visually set apart from the Flying, Psychic, and Fairy weaknesses
Three types deal double damage to Fighting on defense — but Ghost blocks Fighting’s own attacks completely on offense, a separate part of the chart entirely.
ResultTypesMultiplier
WeakFlying, Psychic, Fairy2x
ResistRock, Bug, Dark0.5x
ImmuneNone

If you’re playing Pokemon GO, the multipliers shift to 1.6x for weaknesses and 0.625x for resistances instead of the mainline 2x/0.5x, but the same three types land the super-effective hit [1]. Our full Pokemon GO type chart breaks down every type’s exact GO-specific numbers if you need them outside Fighting.

The Twist Almost Everyone Misses: Ghost Blocks Fighting Completely

That 3-weak, 3-resist chart only covers what happens to Fighting-types. It says nothing about what Fighting-type attacks can do to everyone else — and the answer for one type is nothing at all. Ghost-type Pokemon take 0x damage from Fighting-type moves, the same full immunity Ghost gets against Normal-type moves [1]. A pure Fighting-type attacker with no coverage moves literally cannot damage a Ghost-type through its Fighting STAB; the move connects, the animation plays, and the damage counter reads zero.

This is the single most common source of confusion in a “Fighting type weakness” search, because the phrase gets read two ways: what beats Fighting (Flying, Psychic, Fairy — covered above) and what Fighting can’t beat (Ghost). Load up a Fighting-type’s full moveset against something like Cofagrigus or Dusknoir in-game and you’ll notice it isn’t even flagged as resisted — it just shows immune, the same tag Ground gets against Flying. The exceptions are narrow: the ability Scrappy, the ability Mind’s Eye, or the move Foresight all let Fighting-type moves bypass the Ghost immunity and deal normal damage, but none of those are common on a generic Fighting-type’s own kit [1].

All Three Counters Also Resist Fighting Right Back

Here’s the part the raw chart doesn’t spell out: every type that’s super effective against Fighting also resists Fighting’s own attacks. Flying resists Fighting at 0.5x [2]. Psychic resists Fighting at 0.5x [3]. Fairy resists Fighting at 0.5x [4]. That’s a genuinely unusual trait — plenty of types that beat something else don’t get anything back defensively — which makes Fighting one of the few types where the “best answer” is baked into the chart on both sides of the fight at once. Switch a Flying-, Psychic-, or Fairy-type into a Fighting attacker and you’re not just landing a 2x hit; you’re doing it while taking half damage back, a double advantage a lot of quick-reference charts don’t call out.

Counter typeDeals to FightingTakes from FightingNet swing
Flying2x0.5x4-to-1
Psychic2x0.5x4-to-1
Fairy2x0.5x4-to-1

Which Counter Actually Wins: Flying vs. Psychic vs. Fairy Ranked by Format

All three counters deal the identical 2x and take the identical 0.5x back, so the type chart alone can’t rank them — which one actually wins depends on the format, and the reasons are different in each one.

Infographic ranking Flying, Psychic, and Fairy as Fighting-type counters across mainline singles, VGC doubles, and Pokemon GO
Fairy is the strongest all-around pick in both team-building formats — Pokemon GO comes down to the specific Pokemon rather than the type alone.

In mainline singles, the split comes down to physical versus special. Most top competitive Fighting-types attack from one side or the other, not both: Mega Medicham leans on a huge base Attack stat to batter physical walls, while Keldeo runs 129 base Special Attack alongside its signature move Secret Sword, which calculates damage off the target’s Defense stat instead of Special Defense despite being a special move [9][11]. That one move quietly cancels the advantage of stacking Special Defense on a Psychic- or Fairy-type switch-in — it hits like a physical attack no matter how bulky the target is on the special side. Fairy still comes out ahead overall: Smogon’s own OU analysis notes Fairy-types “run rampant” against Fighting, naming Tapu Lele and Clefable as the most consistent answers — partly because Fairy also resists Dark and is fully immune to Dragon, two of the other most common attacking types Fighting-types get paired against on a team [9].

VGC doubles favors Fairy even harder. Zacian in its Crowned Sword form adds a Steel typing on top of Fairy, cutting its own weakness list down further while still hitting Fighting, Dragon, and Dark-type threats for 2x; it’s one of the more commonly recommended VGC picks for exactly that reason, alongside Clefable’s Magic Guard plus Healing Wish and Togekiss’s Follow Me plus Wish, which both let a team lean on a single safe Fairy answer instead of needing separate switch-ins per attacking type [10].

Pokemon GO flips the ranking logic entirely, because raids and Battle League don’t have coverage moves changing the math mid-battle — the fight comes down to whichever counter has the best fast-move and charge-move combo plus bulk for the format. Mewtwo (Psychic), Mega Pidgeot (Flying/Normal), and Crowned Zacian (Fairy/Steel) are named as top picks across raids and PvP specifically because their movesets hit hard and their typing keeps them safe on defense too [12]. For Flying-type answers specifically, our Flying type weaknesses and counters guide covers the raid-ready picks in more depth.

FormatTop pickWhy it wins here
Mainline SinglesFairy (Tapu Lele, Clefable)Also walls Dark and Dragon; watch for Secret Sword bypassing Special Defense
VGC DoublesFairy (Zacian, Clefable, Togekiss)Steel/Fairy Zacian trims its own weaknesses further; support moves protect the whole team
Pokemon GOFormat-dependent (Mewtwo, Mega Pidgeot, Crowned Zacian)No mid-battle coverage swap — raw moveset and bulk decide it
Podium-style ranking graphic showing Flying, Psychic, and Fairy counters ranked differently across battle formats
Fairy tops the podium in both mainline singles and VGC doubles; Pokemon GO ranks its own counters by moveset and bulk instead.

Secondary Typing Rewrites the Chart

Almost no competitively relevant Fighting-type is purely Fighting, and a second type doesn’t just add its own weaknesses on top — it can cancel Fighting’s three weaknesses to neutral or double one into a 4x liability, depending on the combination.

Heracross (Bug/Fighting) is the clearest example of the second outcome: Bug is also weak to Flying, so the two halves stack into a 4x Flying weakness, and because Bug doesn’t resist Psychic or Fairy either, both of those weaknesses stay at a full 2x too [7]. Lucario (Fighting/Steel) goes the other way entirely — Steel resists Flying, Psychic, and Fairy [5], which cancels all three of Fighting’s weaknesses down to neutral. That protection isn’t free: Steel’s own Fire and Ground weaknesses stack onto Fighting’s chart instead, and Steel doesn’t resist its own partner type, so Lucario — a Fighting-type — ends up taking 2x damage from Fighting-type moves [6]. Gallade (Psychic/Fighting) lands in between: its Psychic half cancels Fighting’s own Psychic weakness back to neutral, since Psychic resists Psychic-type moves [3], but that same half adds a brand-new Ghost weakness and doubles the Fairy weakness to 2x [8].

PokemonTypingFlyingPsychicFairyWhat changes
HeracrossBug/Fighting4x2x2xBug doesn’t cancel anything — it only doubles Flying
LucarioFighting/SteelNeutralNeutralNeutralSteel cancels all three, but adds Fire/Ground weaknesses and an ironic Fighting weakness
GalladePsychic/Fighting2xNeutral2x (doubled)Psychic cancels its own weakness but adds a new Ghost weakness

The 3 Types Fighting Walls

Bug, Rock, and Dark all deal half damage against a Fighting-type, and Fighting hits two of those three back hard on offense — Rock and Dark are both on Fighting’s super-effective list, so a Rock- or Dark-type trying to fight through the resistance is walking into a losing trade twice over [1]. Bug is the one exception: Fighting-type moves are only resisted by Bug on offense too, so neither side gets a clean advantage there. If you’re building around a Dark-type specifically, our Dark type weaknesses and counters guide covers where that type’s own defense breaks down — worth checking before assuming a Dark-type is a safe answer to anything Fighting-adjacent.

Counter Priority by Player Type

Player TypeCounter Priority
New playerAny Flying-, Psychic-, or Fairy-type works — all three deal 2x and take only 0.5x back. Don’t overthink it outside the competitive tiers.
Casual playerDefault to a Fairy-type if you only want one general answer — it’s the only one of the three that also walls Dark and no-sells Dragon entirely.
Hardcore / optimiserCheck whether the Fighting-type in front of you runs special coverage like Secret Sword before trusting a specially-bulky wall — physical vs. special decides more than typing alone.
CompletionistTrack secondary typing on every Fighting-type in your box. A Steel or Psychic half cancels weaknesses, a Bug half doubles them, and a “safe” answer against one Fighting-type can be a liability against another.

FAQ

Is Fairy really the best all-around answer to Fighting-types?
In competitive formats, yes — it’s the only one of the three counters that also resists Dark and is fully immune to Dragon, so a single Fairy-type answers three of the most common attacking types at once instead of just one. In Pokemon GO or a casual mainline playthrough where team-building depth matters less, Psychic and Flying work just as well since the raw multiplier is identical.

Why doesn’t Fighting get a defensive immunity of its own, the way Ghost does against it?
Fighting’s defensive chart has stayed at three weaknesses, three resistances, and zero immunities since Generation VI, and that’s not an accident — Fighting-types tend to hit hard and fast rather than stall, so the type is generally built around offensive pressure instead of defensive gimmicks. Compare that to Ghost, which leans on immunities specifically because most Ghost-types are frail and need the type chart to do defensive work their stats can’t.

Does a Steel-type half really cancel all three of Fighting’s weaknesses?
Yes, and Lucario is the proof — Steel resists Flying, Psychic, and Fairy, so all three land as neutral damage instead of 2x. The trade-off is that Steel’s own weaknesses to Fire and Ground stack on top, and ironically, Lucario itself is weak to Fighting-type moves because Steel doesn’t resist its own partner type.

Is Ghost actually unbeatable by Fighting-type Pokemon?
Only through Fighting-type moves specifically. A Fighting-type carrying a coverage move of a different type — Ice, Rock, or anything else Ghost doesn’t resist — can still fight through it. The immunity only blocks Fighting- and Normal-type moves themselves; the ability Scrappy or the move Foresight remove even that block, though neither is common on a Fighting-type’s own kit.

Key Takeaways

Fighting’s chart is a clean 3-and-3: Flying, Psychic, and Fairy hit it for 2x, Rock, Bug, and Dark get halved, and there’s no defensive immunity anywhere on the chart. What the raw multiplier hides is that all three counters also resist Fighting’s own attacks back, and that Ghost-types shut out Fighting-type moves completely regardless of the matchup. Which counter wins in practice depends on format — Fairy’s extra Dark and Dragon utility gives it the edge in singles and VGC, while Pokemon GO comes down to raw moveset and bulk since there’s no mid-battle coverage swap. And secondary typing changes everything: check what’s paired with Fighting before assuming any of this holds, since a Steel half cancels the whole weakness list and a Bug half doubles it.

Sources

[1] Fighting (type) — Bulbapedia
[2] Flying type — Pokemon Database
[3] Psychic type — Pokemon Database
[4] Fairy type — Pokemon Database
[5] Steel type — Pokemon Database
[6] Lucario Weaknesses, Resistances & Counters — NationalDex (nationaldex.io/pokemon/lucario/weakness)
[7] Heracross Weaknesses, Resistances & Counters — NationalDex (nationaldex.io/pokemon/heracross/weakness)
[8] Gallade Weaknesses, Resistances & Counters — NationalDex (nationaldex.io/pokemon/gallade/weakness)
[9] No Punch Line: A Look at Fighting-types in OU — Smogon University
[10] Pokemon VGC: Best Fairy-types For Competitive Battling — Game Rant
[11] Secret Sword (move) — Bulbapedia
[12] Fighting-Type Pokemon GO — GO Silph (gosilph.com/pokedex/type-fighting)

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.