Search guide

Learn the query language

Pokéfall search lets you combine names, types, stats, abilities, moves, coverage, defenses, roles, and boolean logic. Start with one useful filter, then add constraints until the result list describes the team slot you need.

Start Here

Start with one word or one filter, then add constraints once the matches look close. Names work as plain text; field filters like type:water, move:"fake out", or spe>=100 are the next step when you know which detail matters.

Starting point

Search Basics

A query is a set of filters. Bare words search names, field:value searches a specific field, and quotes keep multi-word values together.

Tips

  • Use quotes for values with spaces, such as move:"fake out".
  • Short aliases work in common fields: t:fire, a:drought, m:tailwind, spe>=100, and spa>=100.
  • Most fields answer to more than one spelling: s:, st:, tag: and meta: all mean strategy:, spatk/spdef match sp_atk/sp_def, wt is weight, outspeed/underspeed drop the s, and weaknesses/resistances are the plurals of weakness/resistance.
  • Use name: when you want a name-only filter instead of a loose bare-word search.

Typing

Types and Forms

type: filters by Pokemon type. A slash means both types on the same Pokemon, while two separate type filters are also an AND.

Tips

  • type:water and t:water are equivalent.
  • Use is:mono or is:dual when the number of types matters.
  • Regional and form flags compose with types, such as is:hisuian type:fire.

Forms

Flags

is: flags are small form and typing filters. Combine them with strategy tags when you need a specific Pokemon shape.

Tips

  • Use is:mono or is:dual when the number of types matters.
  • Regional flags can be searched broadly with is:regional or specifically with is:alolan, is:galarian, is:hisuian, or is:paldean.
  • is:mega filters for Mega forms.

Reference

SyntaxUseExample
is:megaPokemon in their Mega form.is:mega
is:mono, is:dualFilter by number of types.is:mono
is:regionalAny regional form.is:regional
is:alolan, is:galarian...Specific regional forms.is:alolan

Numbers

Stats and Ranges

Stats support comparisons, exact matches, inclusive ranges, and stat-to-stat comparisons. Short stat names keep long queries readable.

Tips

  • Use hp, atk, def, spa, spd, spe, and bst for base stat filters.
  • Ranges use two dots: spe:76..100 means spe>=76 and spe<=100.
  • Stat comparisons work too, such as atk>spa for physically oriented Pokemon.
  • weight filters by kilograms, which is what Heavy Slam, Heat Crash, Low Kick and Grass Knot read: weight>200 or wt<5.
  • bulk adds HP, Defense and Sp. Def into one number, because how bulky something is never comes down to a single stat. Across the 315 Champions entries the middle of the pack is 255, the top quarter starts around 280, and the bulkiest tenth clear 310. Use pbulk or sbulk when you care which side.

Reference

SyntaxUseExample
hp, atk, def, spa, spd, speBase stat fields with >, >=, <, <=, =, or ranges.spe>=100 spa<80
sp_atk, sp_defLong forms of spa and spd. Both spellings do the same thing.sp_def>120
bstBase stat total.bst=600
bulkHP + Defense + Sp. Def. Roughly: 255 is the middle of the roster, 280 the top quarter, 310 the bulkiest tenth.bulk>=280
phys_bulk, spec_bulkHP + Defense, or HP + Sp. Def, for when only one side matters. Short forms pbulk and sbulk.pbulk>=190 atk>=100
weightWeight in kilograms. Matters for Heavy Slam, Heat Crash, Low Kick and Grass Knot.weight>200
stat>statCompare one stat to another.atk>spa
stat:min..maxInclusive range shorthand.spe:76..100

Composition

Logic and Groups

Spaces are implicit AND. OR, NOT, a leading minus, and parentheses let you compose alternatives without losing control of grouping.

Tips

  • A B means A and B both need to match.
  • A OR B means either side can match.
  • -A and NOT A both mean A must not match.

Reference

SyntaxUseExample
query queryImplicit AND.type:water spe>=100
query OR queryEither side may match.type:ghost OR type:dark
-query or NOT queryNegation.ability:intimidate -is:mega
(query OR query) queryGroup alternatives before applying another filter.(type:ghost OR type:dark) spe>100

Abilities

Abilities

ability: searches ability names by partial match. It is useful on its own and becomes stronger when combined with typing, stats, moves, or strategy tags.

Tips

  • a:intimidate is the short alias.
  • Ability-based immunities are included by immune: where they are relevant.
  • Ability filters combine naturally with move filters and strategy tags for team ideas.
  • ability:(...) filters by what an ability DOES, the same way move:(...) does for moves.
  • Brackets describe ONE ability, so OR does not go inside them: write ability:drought OR ability:drizzle.

Reference

SyntaxUseExample
ability:(grants-immunity)Any ability that blanks a whole attacking type.ability:(grants-immunity)
ability:(grants-immunity:type)Immune to one named type: Levitate, Flash Fire, Volt Absorb.ability:(grants-immunity:ground)
ability:(reduces-damage)Cuts damage from a type without blanking it, such as Thick Fat.ability:(reduces-damage)
ability:(weather-setter)Sets weather on entry: Drought, Drizzle, Sand Stream, Snow Warning.ability:(weather-setter)
ability:(terrain-setter)Sets terrain on entry.ability:(terrain-setter)
ability:(redirects)Pulls same-type attacks in: Lightning Rod, Storm Drain.ability:(redirects)
ability:(priority-boost)Raises the priority of its own moves: Prankster, Gale Wings, Triage.ability:(priority-boost)
ability:(on-entry-drop)Drops an opposing stat on switch-in.ability:(on-entry-drop)
ability:(ignores-abilities)Attacks through the target's ability: Mold Breaker and friends.ability:(ignores-abilities)
ability:(contact-punish)Punishes physical contact: Rough Skin, Static, Flame Body.ability:(contact-punish)
ability:(intimidate-proof)Ignores or punishes an Attack drop on entry.ability:(intimidate-proof)
ability:(status-proof)Cannot be given the status it blocks.ability:(status-proof)
ability:(trapping)Stops the opponent switching out.ability:(trapping)

Move names

Moves

move: searches move names by partial match. Quote move names with spaces, then add other filters for the Pokemon profile you want.

Tips

  • m: is the short alias for move:.
  • move:tailwind finds Pokemon that learn Tailwind.
  • move= matches the whole name instead of part of it. This matters more than it sounds: move:toxic also returns every Toxic Spikes learner, and move:sing quietly matches Rising Voltage. Use move=toxic when you mean only Toxic. The same applies to ability=.
  • Use move:(...) when the move itself must satisfy several properties at once.
  • Because the brackets describe ONE move, OR does not go inside them: write move:follow-me OR move:rage-powder.

Move traits

One-Move Filters

Everything inside move:(...) must describe the same learnable move. Type tokens inside the parentheses OR together; non-type tokens are AND filters.

Tips

  • Use category tokens: physical, special, or status.
  • Use move fields inside the group, such as bp>=80, acc>=90, pri>=1, pp>=16, or learners<=20.
  • Curated tokens include priority, spread, spread-foes, pivot, drain, recoil, support, disruption, teamguard, and ohko.

Reference

SyntaxUseExample
fire, water, fairyMove type tokens. Multiple type tokens are alternatives.move:(fire special bp>=80)
physical, special, statusMove category.move:(special acc>=90)
stabMove type matches one of the Pokemon's own types.move:(stab bp>=100)
priority or pri>=1Positive priority shorthand or explicit priority comparison.move:(priority physical)
spreadHits both foes or all adjacent Pokemon.move:(spread bp>=80)
spread-foesHits both opponents and not your ally — Rock Slide and Heat Wave, but not Earthquake or Surf. Alias foe-spread.move:(spread-foes bp>=75 acc>=85)
bp, acc, pp, priNumeric move fields.move:(bp>=90 acc>=100)
pivotSwitches the user out after attacking, like U-turn. Baton Pass and Shed Tail are excluded — they hand something to the teammate rather than just leaving. Use self-switch for the wider meaning.move:(pivot) ability:intimidate
self-switchAny move that switches the user out, including Baton Pass and Shed Tail.move:(self-switch)
move=nameExact move name instead of a partial match.move=toxic
learnersHow many current roster entries learn the move.move:(learners<=20)
coverage:type/typeThe move is super-effective into the target type or typing.move:(coverage:fighting/dark special)

Curated lists

Advanced Tokens

Some tokens act as curated lists of mechanics so you don't have to string together a bunch of names with OR.

Tips

  • These tokens work inside move:(...) or ability:(...).
  • They help condense queries that would otherwise be long lists of specific moves or abilities.

Move Tokens

Ability Tokens

Offense

Coverage Checks

coverage: checks whether a Pokemon has damaging moves for a target type or typing. It answers the practical question: can this Pokemon hit that target well?

Tips

  • coverage:fighting/dark checks one answer into that combined defensive typing.
  • coverage:all means neutral-or-better coverage across single types.
  • coverage:all-se is stricter: super-effective coverage for every single type.

Matchups

Defensive Matchups

weak:, resists:, and immune: describe defensive matchups. Count fields help you find compact defensive profiles.

Tips

  • weak:ground means Ground attacks are super-effective.
  • resists:water means Water attacks are resisted but not fully immune.
  • Add a multiplier to isolate the 4× band: weak:ice>=4, or resists:fire=0.25 for a quarter-damage resist.
  • weakness:1 and resistance>=6 filter by matchup counts.

Reference

SyntaxUseExample
weak:typeTakes more than normal damage from that attacking type.weak:ground
weak:type>=4Filters by the exact multiplier (2 or 4). >=4 isolates a double weakness.weak:ice>=4
resists:typeTakes reduced damage from that attacking type.resists:water
resists:type=0.25A 4× resist — takes a quarter of the damage.resists:fire=0.25
immune:typeTakes no damage from that attacking type.immune:electric -type:ground
weakness, resistanceNumeric counts across attacking types.weakness:1 resistance>=6

Research leads

Strategy Tags

strategy: describes competitive strategies as query-backed research leads. Use raw move and ability filters for single tools; use strategy: when the plan combines tools or requires specific stats.

Tips

  • Single tools stay raw: move:"fake out", ability:intimidate, m:(pivot), or move:tailwind.
  • Strategy tags are curated and may include stats, move compounds, abilities, or defensive gates.
  • Use the tag catalogue when you want every available strategy, alias, count, and suggested query.

Popularity

Usage

usage filters by usage percentage. Treat it like any other numeric field when you want commonly played or low-usage Pokemon.

Tips

  • Usage values are percentages, so usage>=5 means at least five percent.
  • Use usage<1 to explore uncommon Pokemon after the core filters are already useful.
  • Adding order:usage changes result order; it does not widen or narrow the matches.

Reference

SyntaxUseExample
usage comparisonFilter by usage percentage.usage>=5
usage:min..maxKeep Pokemon inside an inclusive usage band.usage:1..5
usage with other filtersCombine usage with typing, stats, moves, or strategy tags.usage>=5 type:dragon order:usage

Speed

Speed Tiers

outspeeds: and underspeeds: compare base Speed against a number, slug, or quoted Pokemon name. These filters use raw base Speed only.

Tips

  • Numbers work directly: outspeeds:100 means base Speed greater than 100.
  • Slugs and names work too, such as outspeeds:garchomp, underspeeds:slowbro, or outspeeds:"iron valiant".
  • Speed tiers ignore items, boosts, natures, EVs, IVs, abilities, weather, and specific builds.

Reference

SyntaxUseExample
outspeeds:numberBase Speed is greater than the number.outspeeds:100
underspeeds:numberBase Speed is lower than the number.underspeeds:50
outspeeds:nameBase Speed is greater than the named Pokemon's base Speed.outspeeds:garchomp
underspeeds:nameBase Speed is lower than the named Pokemon's base Speed.underspeeds:slowbro
quoted namesUse quotes for multi-word Pokemon names.outspeeds:"iron valiant"

Sorting

Ordering Results

order: and direction: are sorting modifiers, not filters. They rearrange the matches left after the rest of the query has already run.

Tips

  • Numeric fields sort high-to-low by default, so order:usage starts with the most-used matches.
  • Use direction:asc when lower values should appear first.
  • Sorting does not add or remove Pokemon; pair it with filters when you need a smaller result set.

Reference

SyntaxUseExample
order:fieldSort the current matches by a supported field.type:dragon order:usage
direction:descDefault high-to-low direction for numeric sorting.order:spe direction:desc
direction:ascLow-to-high sorting.type:ghost order:spe direction:asc