TCGplayer Product Price Scraper
Pricing
Pay per event
TCGplayer Product Price Scraper
🎴 Extract TCGplayer product prices, market lows, listing counts, card metadata, URLs, and seller summaries for repricing workflows.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Extract TCGplayer product prices, market lows, listing counts, card metadata, seller summaries, product URLs, and image URLs from public TCGplayer search results.
What does TCGplayer Product Price Scraper do?
TCGplayer Product Price Scraper turns public TCGplayer marketplace search results into clean structured product price snapshots.
It is built for repeat monitoring workflows where you need to track changing prices for cards, sealed products, and collectibles across TCGplayer.
The actor accepts search terms, TCGplayer product IDs, or TCGplayer search/product URLs.
It returns product titles, game/product line, set, rarity, card number, market price, low price, listing counts, top listing summary fields, product URLs, image URLs, and scrape timestamps.
Who is it for?
🛒 Trading card sellers can monitor market lows before repricing inventory.
📈 Repricing teams can export daily snapshots into spreadsheets or pricing systems.
🧑💼 Local game stores can compare card and sealed product availability across games.
🧑🔬 Market researchers can follow price movement for high-demand cards and sets.
🎴 Collectors can track watchlists without manually opening dozens of TCGplayer searches.
Why use this scraper?
TCGplayer pages are useful for humans but hard to monitor manually at scale.
This actor gives you repeatable data with a stable schema.
You can schedule it daily or hourly on Apify, export the dataset, and compare results over time.
The output is intentionally flat so it works well in CSV, Google Sheets, BI tools, or downstream automations.
What TCGplayer data can you extract?
| Field | Description |
|---|---|
productId | TCGplayer product ID |
title | Product or card title |
productLineName | Game or product line |
setName | Set name |
setCode | Set code when available |
rarityName | Rarity when available |
cardNumber | Collector/card number when available |
marketPrice | TCGplayer market price |
lowestPrice | Lowest product price |
lowestPriceWithShipping | Lowest price including shipping when available |
totalListings | TCGplayer listing count |
topListingPrice | Top sampled listing price |
topListingCondition | Top listing condition |
topListingPrinting | Top listing printing |
topListingSellerName | Top listing seller name |
productUrl | TCGplayer product URL |
imageUrl | Product image URL |
scrapedAt | Timestamp for the price snapshot |
How much does it cost to scrape TCGplayer product prices?
The actor uses pay-per-event pricing.
There is a small start charge per run and a per-product charge for each dataset item produced.
The default pricing is designed for scheduled monitoring jobs and scales with the number of products you extract.
For a small 100-product search, cost is usually the start fee plus 100 product events.
Check the Apify run billing panel for exact charged events after each run.
Input options
Use searchQueries for normal marketplace searches.
Use startUrls when you already have TCGplayer search URLs or product URLs.
Use productIds for exact product monitoring.
Optional filters include productLineName, setName, and productTypeName.
Use maxItems to cap output volume.
Use includeListings and listingsPerProduct to control listing summary extraction.
Example input
{"searchQueries": ["charizard", "one piece manga luffy"],"maxItems": 100,"includeListings": true,"listingsPerProduct": 3}
Example product ID input
{"productIds": ["219059"],"maxItems": 1,"includeListings": true,"listingsPerProduct": 5}
Example output
{"searchQuery": "charizard","productId": 219059,"title": "Charizard GX - 9/68 (#60 Charizard Stamped)","productLineName": "Pokemon","setName": "Battle Academy","marketPrice": 13.14,"lowestPrice": 7,"lowestPriceWithShipping": 7.95,"totalListings": 90,"topListingCondition": "Moderately Played","productUrl": "https://www.tcgplayer.com/product/219059/pokemon-battle-academy-charizard-gx-9-68-60-charizard-stamped","scrapedAt": "2026-07-09T04:38:06.481Z"}
How to scrape TCGplayer prices
-
Add one or more search terms, product IDs, or TCGplayer URLs.
-
Set
maxItemsto the number of products you want. -
Choose whether to include top listing summary fields.
-
Run the actor.
-
Export the dataset as JSON, CSV, Excel, or via API.
Scheduled monitoring workflow
Create an Apify schedule with the same input.
Run the actor daily for a watchlist of cards or sealed products.
Export each dataset to your data warehouse or spreadsheet.
Compare marketPrice, lowestPrice, and totalListings over time.
Trigger alerts when prices move beyond your thresholds.
Repricing workflow
Sellers can use the output to compare current inventory prices against TCGplayer market lows.
The fields lowestPriceWithShipping, topListingCondition, and topListingPrinting help prevent misleading comparisons.
Use exact productIds for the most stable repricing workflow.
Use broad searchQueries when discovering products or monitoring a set.
Tips for better results
Use specific product names when you want high precision.
Use exact product IDs for recurring jobs.
Use productLineName to narrow terms that exist across games.
Keep maxItems reasonable for scheduled runs.
Use includeListings: false when you only need product-level market prices.
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/tcgplayer-product-price-scraper').call({searchQueries: ['charizard'],maxItems: 100});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/tcgplayer-product-price-scraper').call(run_input={'searchQueries': ['charizard'], 'maxItems': 100})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~tcgplayer-product-price-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"searchQueries":["charizard"],"maxItems":100}'
MCP usage
Use Apify MCP with Claude Desktop or Claude Code to run TCGplayer monitoring jobs from chat.
MCP URL:
https://mcp.apify.com/?tools=automation-lab/tcgplayer-product-price-scraper
Claude Code CLI setup:
$claude mcp add apify-tcgplayer "https://mcp.apify.com/?tools=automation-lab/tcgplayer-product-price-scraper"
Claude Desktop JSON config:
{"mcpServers": {"apify-tcgplayer": {"url": "https://mcp.apify.com/?tools=automation-lab/tcgplayer-product-price-scraper"}}}
Example prompt:
Run the TCGplayer Product Price Scraper for Charizard and return products where marketPrice is above 20 dollars.
Integrations
📊 Send CSV exports to Google Sheets for watchlists.
🧾 Push JSON records into Airtable or Notion databases.
📉 Load daily runs into BigQuery or Snowflake for price history.
🔔 Connect Apify webhooks to Slack alerts for price changes.
🤖 Use MCP to ask an AI assistant for current TCGplayer market snapshots.
Related scrapers
Browse other Automation Lab actors at https://apify.com/automation-lab/.
Useful adjacent categories include ecommerce scrapers, marketplace price monitors, product search scrapers, and price comparison actors.
Data freshness
Each dataset row includes scrapedAt.
Treat each run as a point-in-time price snapshot.
TCGplayer prices and listing counts can change frequently, so scheduled runs are recommended for monitoring.
Limitations
The actor extracts public product/search information.
It does not log in to TCGplayer.
It does not manage carts, purchases, seller dashboards, or private account data.
Some rare products may have unavailable market prices.
Legality
This actor extracts publicly available marketplace information.
Is it legal to scrape TCGplayer?
This actor extracts publicly available marketplace information.
You are responsible for using the data in compliance with applicable laws, TCGplayer terms, and your own business requirements.
Do not use scraped data for spam, abusive automation, or prohibited resale workflows.
Troubleshooting: no results
Check that the search term returns products on TCGplayer.
Try removing strict filters such as productLineName or setName.
Increase maxItems if the first page is too narrow.
Troubleshooting: prices are null
Some products do not have market prices in the TCGplayer response.
Use lowestPrice and lowestPriceWithShipping when market price is unavailable.
Try including listing summaries for more context.
FAQ
Can I scrape exact products?
Yes. Use productIds or paste TCGplayer product URLs in startUrls.
Can I monitor multiple games in one run?
Yes. Add multiple search queries or omit productLineName to search all products.
Does it include seller data?
It includes top listing seller summary fields, not full seller profiles.
Can I schedule it?
Yes. Use Apify schedules for recurring price monitoring.
Can I export to CSV?
Yes. Apify datasets can be exported as CSV, JSON, Excel, XML, RSS, or via API.
Support
If a TCGplayer page or search term produces unexpected output, share the run input and run ID so the issue can be reproduced.
Changelog
Initial version extracts TCGplayer product search results, product IDs, market prices, low prices, listing counts, and top listing summaries.