★ Hunts
{{ t.name }}
{{ t.label }}
N/A
✓ {{ t.owned }}/{{ t.total }}
{{ t.owned }}/{{ t.total }}
✕
#{{ String(d.dex).padStart(4,'0') }}
{{ d.nforms }}
{{ d.name }}
No species match “{{ search }}”.
Loading dex…
← Back to Dex
#{{ String(species.dex).padStart(4,'0') }}
{{ species.name }}
{{ formGenus(species.dex) }}
{{ formFlavor(species.dex) }}
🗺 Debut: {{ hintDebut(species.dex) }}
Click a variant to log a catch or edit what you have · {{ speciesDone.owned }}/{{ speciesDone.total }} combos owned · 🚫 {{ speciesNA }} N/A.
{{ f.region }}
{{ f.form==='Normal' ? 'Standard form' : f.form }}
{{ formProg(f).owned }}/{{ formProg(f).total }} owned · 🚫 {{ formProg(f).na }} N/A
{{ hintFor(species.dex, f.region) }}
✦
☠
{{ v.variant }}
N/A
{{ v.have ? 'Have' : (v.non_mine ? 'Non-yours' : 'Missing') }}
{{ v.unavailableNote ? v.unavailableNote : 'not obtainable' }}
{{ v.have ? (v.ots ? 'OT: ' + v.ots : '') : (v.non_mine ? 'only via Trade/Cheater' : '') }}
{{ v.mine }} specimen{{ v.mine>1?'s':'' }}
Loading…
🎉 Nothing missing here — you’re done with this filter!
Loading…
#{{ String(m.dex).padStart(4,'0') }} {{ m.name }}
🏆 Completed Pokédex
A species earns its trophy when every variant — Base, Alpha, Shiny and Alpha
Shiny, across all of its forms — is owned by one of your trainers.
{{ counters.trophies ?? trophies.count }}
/ {{ summary.totals.species }} species complete
{{ Math.round(trophies.count / summary.totals.species * 100) }}%
🎯 No completed entries yet — catch every variant of a species (Base, Alpha, Shiny, Alpha Shiny) to earn its trophy!
#{{ String(d.dex).padStart(4,'0') }}
{{ d.nforms }}
{{ d.name }}
{{ f.region }}
✓ Complete
Loading…
🔁 Spare duplicates
Combos where one of your trainers owns 2+ specimens — handy for trading or
gift giveaways. Tap a row to open that species.
{{ spares.count }} combos with spares
No duplicate combos — every combo you own has just one specimen.
Loading…
#{{ String(r.dex).padStart(4,'0') }} {{ r.name }}
ID {{ s.TrainerID }}no ID
“{{ s.Nickname }}”
· {{ s.OT || 'no OT' }}
← Back to Dex
{{ counters.progressPct ?? progressPct() }}%
{{ progressTotals().owned }} / {{ progressTotals().total }} variant cells owned —
every species × form × variant across all regions.
📗 By generation (national dex)
{{ g.name }}
{{ g.species_done }}/{{ g.species }} species · {{ g.pct }}%
🗺️ By form region
{{ r.region }}
{{ r.owned }}/{{ r.total }} · {{ r.pct }}%
Crunching numbers…
← Back to Dex
✍️ Filling in {{ bfLabel() }} — {{ bfComplete() }} / {{ bfMine() }} of your specimens done ({{ bfPct() }}%)
Walk through your catches and add what's missing. Values you've used before are suggested as you type.
Save keeps a specimen in your collection; Skip leaves it for later.
{{ bfDisplayName(s) }}
{{ bfCtx(s) }}
🎉 Every one of your specimens has this filled in — nothing left to backfill here!
Building your queue…
← Back to Dex
#{{ String(s.DexNo).padStart(4,'0') }} {{ s.Species }}
{{ s.Variant }}
{{ s.Region }} {{ s.Form }}
{{ s.OT || '—' }} · “{{ s.Nickname }}”
🎮 {{ s.OriginGame }}
{{ s.Ball }}
Lv {{ s.Level }}
ID {{ s.TrainerID }}
⇄ trade
no data yet — backfill me!
You have no owned specimens yet — log your first catch!
No specimens match those filters.
Loading your collection…
Showing {{ colFilteredRows().length }} of {{ colList.length }} specimens — tick rows (or Select all), then ✎ Bulk edit.
← Back to Dex
⚙ Settings
Preferences are saved per browser (this device).
🎨 Appearance
Theme
Color scheme for this browser.
Motion
Auto respects your OS / browser reduce-motion setting.
🖼 Sprites
Shiny-first sprites
If you own a shiny (or alpha shiny) of a species, show its shiny artwork as the default on the Dex and species pages.
Animated sprites
Use animated GIF sprites where available (Showdown art).
🔐 Account
Signed in as Andy
End this session on this device. You will need the password to sign back in.
Install as an app
Add Pokédex Tracker to your home screen with its own icon.
🚫 Unobtainable (N/A)
Cells you mark unavailable stop counting toward every total and percentage, so your "left to catch" stays honest. They stay visible and clickable, and logging a catch clears the mark automatically.
Marked N/A
{{ naList ? naList.count : '-' }} cell(s) currently excluded from totals.
Find candidates
Alpha forms exist only in Legends: Arceus and Legends: Z-A (including the Mega Dimension DLC), so this lists the Alpha / Alpha Shiny cells a species can never have. Nothing is marked until you tick and confirm.
Suggested {{ naCand.count }} cell(s). {{ naCand.species_capable }} species can have alphas ({{ (naCand.dexes || []).join(', ') }}). {{ naCand.caveat }}
#{{ String(r.dex).padStart(4,'0') }} {{ r.name }} {{ r.variant }} {{ r.region }}
Nothing left to suggest - every alpha-impossible cell is already marked or owned.
Clear all marks
Count every cell again.
#{{ String(r.dex).padStart(4,'0') }} {{ r.name }} {{ r.variant }} {{ r.region }}
{{ r.note }}
Showing the first 250 of {{ naList.count }}.
🕘 Recent activity
Every change you make is recorded here. The most recent one can be undone from its toast, or with Undo last below.
{{ actionIcon(a.action) }}
{{ a.label }}
{{ auditTime(a.ts) }}
No changes recorded yet.
Undo last change
Reverts the most recent catch / edit / delete / bulk edit.