Transparency · Data · Caveats
A plain-English walkthrough of our data source, collection process, normalization approach, and the honest limitations you should keep in mind when reading these numbers.
At a glance
The database contains monthly Google search interest data for 1,009 of the 1,025 Pokémon in the National Pokédex. Each Pokémon has a normalized interest score for every month from January 2004 through December 2025 — 266,376 data points in total.
Data source
All data comes from Google Trends, Google's public tool for exploring the relative search volume of any query over time. It is the only freely available source with consistent, long-term (20+ year) coverage of named entities across hundreds of languages and regions.
We query Google Trends by Knowledge Graph entity (a unique identifier like /m/014wp5 for Mewtwo), not by plain keyword. This is an important distinction: a topic search for the Mewtwo entity only counts searches that Google has confidently classified as being about the Pokémon, filtering out unrelated searches that happen to contain the word.
Keyword searches for names like "Persian," "Golem," or "Electrode" would be polluted by searches for the cat breed, geological formations, and car brands respectively. Querying the Knowledge Graph entity for each Pokémon is far more accurate — though it introduces its own limitations (see Ambiguous Names below).
Collection process
Google Trends normalizes scores within each query batch: the most-searched item in the batch scores 100, and every other item is scaled proportionally. This means a single query for one Pokémon tells you nothing about how it compares to any other. To make scores cross-comparable, we used an anchor approach.
/m/014wp5) as the anchor because it has a stable, consistent search signal across the full 20-year window with no gaps or anomalous spikes that would distort normalization.A Pokémon that scores higher than Mewtwo in its batch will have a normalized value above Mewtwo's baseline. Pikachu, for example, consistently outscores Mewtwo, so its normalized scores exceed Mewtwo's baseline across most months. The resulting scale is not capped at 100 — scores can go higher.
Interpreting the numbers
The normalized score is a relative measure of Google search interest, not an absolute count of searches. A score of 50 does not mean "50 million searches" — it means that Pokémon received roughly half as much search interest as Mewtwo in the same month.
What the scores are good for:
What the scores should not be used for:
Known limitations
High search volume can reflect many things: genuine popularity, competitive relevance, controversy, a new game release, a viral moment, or simply that a Pokémon has a name people frequently misspell. Charizard spikes every time a new game features it prominently. Pikachu never stops being searched because it is the mascot of the brand. A newly released Legendary might spike hard on launch and fade quickly. Use the trend shape, not just the average, to understand what the data is actually showing.
The data begins in January 2004. Pokémon introduced before 2004 (Generations I–III, released 1996–2003) have a full 20-year trend window. Generation IV Pokémon (2006) start appearing mid-dataset. Generation IX Pokémon (2022) only have about 3 years of data. When comparing average scores across generations, newer Pokémon are naturally penalized — they've had less time to accumulate interest. Treat cross-generation comparisons with care.
The anchor correction assumes Mewtwo's search interest is stable enough to serve as a consistent reference point. In practice, Mewtwo's own signal can fluctuate — particularly around Mewtwo-heavy game releases (e.g. Pokémon GO's Mewtwo raids in 2017–2018). When Mewtwo's standalone score spikes, the correction factor temporarily inflates the normalized scores of whatever batch was collected during that period. This effect is small but real, and it accumulates across hundreds of batches.
All trend data was collected without a geographic filter, which in Google Trends defaults to worldwide. However, the regional breakdown (state-level data) is U.S.-only. Worldwide data for a franchise like Pokémon is heavily influenced by English-speaking markets, particularly the United States. Search patterns in Japan, Europe, and other major Pokémon markets may differ significantly and are not captured in the state-level regional analysis.
Google Trends returns monthly data when the time range spans more than ~90 days. This means event-driven spikes (a Pokémon trending on Twitter for a week, a surprise reveal at a Nintendo Direct) are averaged into the month's score rather than visible as a discrete peak. Daily or weekly granularity would tell a different story for many Pokémon.
Even with Knowledge Graph entity queries, Google's topic classification is imperfect for Pokémon whose names overlap with well-known real-world entities. Pokémon like Persian (the cat breed), Golem (the mythological creature), and Electrode (the electrical component) had their MIDs verified manually, but we cannot guarantee that all classified searches are genuinely about the Pokémon. Their trend data should be treated as approximate.
Coverage gaps
Fifteen Pokémon are absent from the dataset because we could not reliably identify a unique Google Knowledge Graph entity for them. This happens when a Pokémon's name is too generic, too short, or shares its name with a much more prominent real-world entity — meaning any MID we found would likely capture mostly non-Pokémon searches.
* These three were initially included with Knowledge Graph MIDs that later appeared to map to non-Pokémon entities. Their data was removed rather than risk polluting the dataset with misclassified searches. The high average scores we saw for Electrode and Golem before removal suggested the MIDs were capturing broader entity searches.
Pokémon with special characters in their names (Farfetch'd, Sirfetch'd, Nidoran♀, Nidoran♂, Mr. Mime, etc.) required special handling. Most were successfully matched via normalized name lookups; Farfetch'd and Sirfetch'd could not be reliably disambiguated and were excluded.
Technical details
Data was collected using pytrends (v4.9.2), an unofficial Python wrapper for the Google Trends API. Collection ran in batches with exponential backoff to handle Google's rate limits (429 errors), with automatic resume checkpointing so interrupted runs could pick up where they left off.
All data is stored in a local SQLite database with three tables: monthly_normalized (the main trend data), monthly_raw (pre-normalization scores), and regional_state (U.S. state-level interest). The site is served by a lightweight Flask app that queries the database on demand.
Pokémon metadata (names, types, generations, sprite URLs, legendary/mythical flags) was sourced from the PokéAPI and stored as a local JSON file to avoid runtime API calls.