Pokémon Card Price Analyzer
Pricing
from $0.85 / 1,000 cards
Pokémon Card Price Analyzer
Search current ungraded Pokémon card prices by name or set, with optional collector-number, variant, and asking-price filters.
Pricing
from $0.85 / 1,000 cards
Rating
0.0
(0)
Developer
Trove Vault
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
18 days ago
Last modified
Categories
Share
Pokémon Ungraded Card Price Analyzer
Find current ungraded Pokémon card prices by card name, set, collector number, and printing variant. Add an optional asking or purchase price to see how far it sits above or below the latest available market benchmark.
This Actor is designed for collectors, resellers, inventory teams, and collection apps that need structured price data without building a card matching layer. It resolves the exact card inside the requested set, distinguishes important printings such as Unlimited, 1st Edition, Shadowless, Holo, and Reverse Holo, then returns one row per priced variant.
The Actor covers ungraded cards only. It does not estimate PSA, BGS, CGC, or other graded values, and it does not infer a card's physical condition from a photo or description.
Why use this Actor
Pokémon card names are not unique enough for reliable pricing. The same character can appear hundreds of times, the same collector number can exist in different sets, and vintage cards can have materially different variants. Searching only for a name such as “Charizard” can easily attach the wrong price to the wrong card.
This Actor uses the card name, set, and collector number together. It then applies the requested printing variant when supplied. That makes it useful when you want to:
- Value a personal Pokémon card collection in a consistent format.
- Enrich inventory records with a current ungraded market benchmark.
- Compare a marketplace listing or dealer offer with the market price.
- Monitor the same cards regularly through scheduled Apify runs.
- Export price data to CSV, JSON, Excel, Google Sheets, or a database.
- Build a lightweight card-value feature without maintaining a complete Pokémon catalog.
What it produces
Each dataset row represents one resolved card variant in one currency. The most useful fields are:
cardName,setName, andcardNumber: the resolved card identity.variant: the resolved printing and finish, such asUnlimited Normalor1st Edition Shadowless Holo.marketPrice: the main current ungraded market benchmark.lowPrice,midPrice, andhighPrice: available market range observations. Individual high values can contain exceptional listings or outliers, so the market price should normally be the primary benchmark.average1Day,average7Days, andaverage30Days: rolling European observations returned when EUR is selected and the values are available.candidatePrice: the optional price supplied with the card.differenceAmountanddifferencePercent: the candidate price minus the market benchmark.dealStatus: a simple position label based on a fixed 15% band.priceUpdatedAt: the timestamp associated with the market observation.imageUrl: a high-resolution card image when available.
Input
Add up to 100 card objects per run. Every card needs a name, English set name, and collector number. Variant and candidate price are optional.
{"cards": [{"name": "Pikachu","set": "Base Set","number": "58/102","variant": "Unlimited Normal","candidatePrice": 25},{"name": "Charizard","set": "Base Set","number": "4/102","variant": "Unlimited Holo"}],"currency": "USD","runId": "collection-2026-08"}
Input fields
cards: array of cards to resolve. The maximum is 100 cards per run.cards[].name: printed English card name, for examplePikachu.cards[].set: English set name, for exampleBase SetorPokémon 151.cards[].number: collector number with or without the set total, for example58or58/102. Leading zeroes are accepted.cards[].variant: optional printing and finish. Examples includeUnlimited Normal,Unlimited Holo,Reverse Holo,Shadowless Holo, and1st Edition Shadowless Holo. Leave it blank to return every priced variant found in the chosen currency.cards[].candidatePrice: optional listing, offer, or purchase price. It must use the currency selected for the run.currency:USDfor US market observations orEURfor European market observations.datasetId: optional existing Apify dataset ID. Results are written to the run's default dataset and also appended to this dataset.runId: optional external batch reference copied into each result row.
For the most reliable match, use the official English set name and collector number. If you do not know the variant, omit it. The Actor will return all variants with a price in the selected currency.
Output example
{"queryName": "Pikachu","querySet": "Base Set","queryNumber": "58/102","queryVariant": "Unlimited Normal","cardName": "Pikachu","setName": "Base Set","cardNumber": "58","variant": "Unlimited Normal","imageUrl": "https://assets.tcgdex.net/en/base/base1/58/high.webp","currency": "USD","marketPrice": 16.5,"lowPrice": 3.99,"midPrice": 8.99,"highPrice": 1000,"candidatePrice": 25,"differenceAmount": 8.5,"differencePercent": 51.52,"dealStatus": "above_market","priceUpdatedAt": "2026-08-27T15:00:45.974Z","runId": "collection-2026-08"}
Prices in this example are illustrative snapshots and will change as the market data updates.
Candidate price comparison
When candidatePrice is present, the Actor compares it with marketPrice:
below_market: candidate is at least 15% below the market benchmark.near_market: candidate is within 15% of the market benchmark.above_market: candidate is at least 15% above the market benchmark.
For example, if the market price is 100 and the candidate price is 80, differenceAmount is -20, differencePercent is -20, and dealStatus is below_market.
This label is mechanical. It does not assess card condition, authenticity, seller reputation, shipping, taxes, language, print defects, or future price movement. Treat it as a screening aid, not financial advice.
Variant matching
Variant matching matters most for vintage cards. The Actor normalizes common wording such as first edition and 1st edition, then matches the requested variant.
Examples:
Unlimited Holowill not be matched to an Unlimited non-holo printing.1st Edition Shadowless Holowill not be matched to the ordinary Unlimited Holo printing.Reverse Holois kept separate from Holo and Normal when the catalog provides that distinction.- Special stamps and unusual sizes can appear in the returned variant label.
If a requested variant is not found, no misleading result row is generated. The missed card appears in RUN_SUMMARY with the reason. If the variant field is blank, the Actor returns only the variants that have usable prices in the requested currency.
USD and EUR coverage
USD and EUR represent different market observations, not a currency conversion of the same number.
For USD, marketPrice, lowPrice, midPrice, and highPrice are returned when available for the resolved finish. For EUR, the Actor uses the available European trend or rolling-average values for the market benchmark and can also return one-day, seven-day, and thirty-day averages.
Coverage can differ by variant. A vintage European variant may have EUR data but no usable USD observation, or the reverse. The Actor does not invent a price and does not convert between currencies when the requested market is missing.
Missing cards and run summary
The Actor uses soft failure for batch processing. One bad or unavailable card does not stop the rest of the run. Public result rows contain successful price records only.
At the end of every run, the RUN_SUMMARY record contains:
{"requestedCards": 3,"matchedCards": 2,"resultRows": 2,"selectedCurrency": "USD","misses": [{"index": 2,"query": "Example card — Example set 999/100","reason": "Card name and collector number were not found together in the selected set"}],"completedAt": "2026-08-28T15:19:02.160Z"}
Common reasons for a miss are an incorrect set name, a collector number that belongs to another set, a variant wording that does not match the catalog, or no price in the selected currency.
Using the results
Results can be downloaded from the Apify dataset as JSON, CSV, Excel, XML, RSS, or HTML, or consumed through the Apify API, webhooks, schedules, and integrations. For a historical table, use cardName, setName, cardNumber, variant, currency, and priceUpdatedAt as the main dimensions. A user-supplied runId can identify the batch.
Data limitations
Pokémon card prices are volatile and may be delayed, sparse, or affected by outlier listings. The observed price does not guarantee that a card will sell at that value. An ungraded card's actual value depends heavily on its physical condition, authenticity, language, edition, finish, and buyer demand.
The Actor matches catalog identity and printing information; it does not inspect a physical card. Always verify the returned image, set, collector number, and variant before using the result in a high-value decision. For expensive vintage cards, manual authentication and condition review remain essential.
Market coverage comes from public card-catalog observations available at run time. Coverage and update frequency can change. When a market benchmark is unavailable, the Actor returns no price row.
Pokémon and related names are trademarks of their respective owners. This Actor is an independent data-processing tool and is not affiliated with, endorsed by, or sponsored by The Pokémon Company, Nintendo, Creatures, Game Freak, TCGplayer, or Cardmarket.
Support
If a card does not resolve, include the exact input object, currency, and RUN_SUMMARY reason when reporting the issue. Do not include private Apify tokens or credentials.