StockX Scraper - Sneaker Prices, Bids, Asks & Sales by Size avatar

StockX Scraper - Sneaker Prices, Bids, Asks & Sales by Size

Pricing

from $0.67 / 1,000 products

Go to Apify Store
StockX Scraper - Sneaker Prices, Bids, Asks & Sales by Size

StockX Scraper - Sneaker Prices, Bids, Asks & Sales by Size

Scrape StockX by keyword, style ID, product URL or category: style ID, colorway, retail price, release date, lowest ask, highest bid and last sale for every size, UPCs, 72h/90d/12-month sales, volatility, price premium, price history and individual sales. No login, no browser.

Pricing

from $0.67 / 1,000 products

Rating

0.0

(0)

Developer

Scrapers Delight

Scrapers Delight

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

What does StockX Scraper do?

StockX Scraper turns stockx.com into a resale market data feed: sneakers, streetwear, trading cards, collectibles, watches, handbags and electronics, with the style ID, colorway, retail price and release date of every product and the live market for every size β€” lowest ask, highest bid, spread, last sale, sales in the last 72 hours, ask and bid counts and the UPC barcode. Search by keyword, style ID, product URL, brand or category, or pull one row per completed sale.

Also known as: StockX scraper, StockX API, StockX price scraper, sneaker resale price data, StockX market data.

  • πŸ‘Ÿ One row = one product, every size inside it β€” detail record + the book for every size in a single result.
  • πŸ”Ž Search, browse, look up β€” keywords, style IDs/SKUs (exact-match verified), product URLs/slugs/IDs, or any stockx.com search, brand or category URL.
  • πŸ“Š Market depth β€” 72-hour, 90-day and 12-month sales and averages, 12-month high/low, volatility, StockX's price premium, premium over retail per size.
  • πŸ“ˆ History on demand β€” the all-time price chart (up to 400 points), the 50 latest sales and the order book, at no extra charge per product.
  • 🧾 Sales feed β€” one row per completed sale, newest first, with size and express/standard.
  • πŸ” Changes-only monitor β€” schedule it and get only products whose ask, bid or last sale moved.
  • 🌍 Any market and 30 currencies. No login, no cookies, no browser.

What data can you get from StockX?

πŸ†” Product id, slug + URL🏷️ Title, name, brand, modelπŸ”’ Style ID (SKU)
🎨 ColorwayπŸ’΅ Retail price (USD)πŸ“… Release date
πŸ“‰ Lowest ask Β· πŸ“ˆ highest bid🧾 Last sale + time + changeπŸ“¦ Ask count Β· bid count
⚑ Xpress asks: count + lowestπŸ”₯ Sales in the last 72 hoursπŸ“† 90-day average, count, range
πŸ—“οΈ 12-month high and low〰️ Volatility Β· price premiumβž• Premium over retail ($ and %)
πŸ“ Every size: ask, bid, spread, last sale🏷️ UPC / GTIN per sizeπŸ” Size conversions (US M/W, UK, EU, CM, KR)
πŸ–ΌοΈ Image, thumbnail, 360Β° framesπŸ—‚οΈ Category, gender, condition, breadcrumbsπŸ“ Description (plain text)
πŸ“ˆ Price history chart*🧾 50 latest sales*πŸ“š Order book: ask + bid levels*

* when you turn it on (same charge per product).

How to scrape StockX with StockX Scraper

  1. Create a free Apify account β€” it comes with monthly platform credit.
  2. Open StockX Scraper and type a search term (jordan 4), a style ID (FV5029-010) or paste product URLs.
  3. Optional: pick a category, brands, gender, sort and a market/currency.
  4. Set Max results (the prefilled demo reads 10 products).
  5. Click Start, then download JSON, CSV or Excel, or read the dataset over the API.

⬇️ Input

ParameterTypeDescription
searchTermsarrayWords you would type in StockX's search box; each is searched separately. Empty input runs the demo search jordan 4.
productUrlsarrayProduct URLs (https://stockx.com/..., /en-gb/... works), slugs or StockX product UUIDs.
styleIdsarrayStyle codes such as FV5029-010; delivered only when the product carries exactly that style ID.
startUrlsarraystockx.com search, brand or category URLs (/search?s=dunk, /brands/nike?gender=women, /category/watches).
outputModeselectproducts (default) or sales (one row per completed sale).
includeDetailsbooleanDefault on: search results become full product rows. Off: the cheaper search-result row (no style ID, colorway, retail or sizes).
priceHistoryPointsinteger0-400 points of the all-time price chart per product. Default 0.
includeRecentSalesbooleanAdd the 50 latest sales to each product.
includeOrderBookbooleanAdd ask and bid price levels per size; maxOrderBookLevels per side (default 100).
onlySizesarrayKeep only these sizes: 10, 10.5, or a conversion like EU 44, UK 9.
maxSalesPerProduct Β· salesPerSize Β· salesSinceSales output: sales per product (default 50, 0 = all read), also read 50 per size, drop older sales.
category Β· brands Β· gender Β· activity Β· colorStockX's own filters, with or without a search term.
newOnly Β· belowRetailOnly Β· xpressShipOnly Β· availableNowOnly Β· hasLiveBidOnlybooleanCondition, below retail, Xpress, live ask, live bid.
minPrice Β· maxPrice Β· minSalesLast72HoursintegerLowest-ask range and minimum 72 h sales, checked before billing.
sortByselectfeatured, most-active, lowest_ask, highest_bid, recent_bids, recent_asks, deadstock_sold, release_date, price_premium, last_sale.
country Β· currencyMarket whose book is quoted (default US) and one of 30 currencies (default USD).
maxItemsintegerMax rows; default 100, 0 = no limit.
maxPagesPerQueryinteger40 products per page, up to 26 pages; 0 = until results run out.
onlyChanged Β· monitorKeyChanges-only monitor and an optional shared memory name.
maxConcurrency Β· useResidentialFallback Β· proxyConfigurationParallel products (default 8); residential fallback; your own proxies. Not needed for normal runs.

Input JSON

{
"searchTerms": ["jordan 4"],
"styleIds": ["DZ5485-612"],
"productUrls": ["https://stockx.com/adidas-yeezy-boost-350-v2-onyx"],
"priceHistoryPoints": 100,
"country": "US",
"currency": "USD",
"maxItems": 50
}

Search by style ID when you know the shoe

A style ID is the most precise key: FV5029-010 returns exactly the Jordan 4 Black Cat (2025). Codes that match no product are listed in the run summary and never billed.

StockX serves about 1,000 products per query (26 pages of 40). For a whole brand or category, run several narrower searches or add category, gender, sortBy β€” the filters are applied by StockX, so they narrow the result set itself.

Market and currency are two different things

country picks whose order book is quoted; currency only denominates it. The same shoe on the same day had a $160 lowest ask in US/USD and a Β£117 lowest ask in GB/GBP (Jordan 4 Toro Bravo, 2026-10-16). Retail price is StockX's US retail in USD, so premium over retail is computed only for USD runs.

⬆️ Output

Each product row (real values from our run on 2026-10-16, abridged):

{
"title": "Jordan 4 Retro Toro Bravo (2026)",
"styleId": "FQ8138-600",
"colorway": "Black/White-Red",
"retailPrice": 220,
"releaseDate": "2026-05-30",
"lowestAsk": 160,
"highestBid": 421,
"lastSale": 161,
"lastSaleDate": "2026-10-16T23:15:05.943Z",
"salesLast72Hours": 301,
"last90DaysAveragePrice": 179,
"last90DaysSalesCount": 14615,
"annualHigh": 580,
"annualLow": 96,
"volatility": 0.102247,
"pricePremium": -0.268,
"premiumOverRetailPct": -26.82,
"variantSizes": [
{ "size": "10", "sizeConversions": { "usMen": "10", "uk": "9", "eu": "44", "cm": "28" }, "upc": "198729807984",
"lowestAsk": 166, "highestBid": 164, "spread": 2, "lastSale": 166, "salesLast72Hours": 38,
"numberOfAsks": 224, "numberOfBids": 27, "expressLowestAsk": 176, "premiumOverRetail": -54 }
],
"productUrl": "https://stockx.com/air-jordan-4-retro-toro-bravo-2026"
}

A search-result row (includeDetails: false):

{ "title": "New Balance 9060 Triple Black", "brandName": "New Balance", "releaseDate": "2023-09-22",
"lowestAsk": 80, "lastLowestAskTime": "2026-10-16T18:39:27Z", "highestBid": 171, "lastSale": 98,
"numberOfAsks": 1433, "expressAskCount": 1047, "salesLast72Hours": 131, "annualSalesCount": 26552,
"volatility": 0.165824, "pricePremium": -0.347, "sizeCount": 24,
"productUrl": "https://stockx.com/new-balance-9060-triple-black" }

A sale row (outputMode: "sales"):

{ "productName": "Jordan 4 Retro Black Cat (2025)", "styleId": "FV5029-010", "amount": 313,
"soldAt": "2026-10-16T23:34:02.935Z", "size": "11", "orderType": "EXPRESS", "currency": "USD" }

How to read the prices

lowestAsk and highestBid on the product are StockX's headline numbers across all sizes, so the bid can sit above the ask (they come from different sizes). The spread you can trade on is per size: variantSizes[].spread is that size's own ask minus its own bid.

Fields and fill rates

Measured on a 100-product run (nike dunk low, 2,026 sizes) on 2026-10-16:

FieldFill
id, productSlug, productUrl, title, brandName, model, styleId, colorway, retailPrice, releaseDate, lowestAsk, highestBid, lastSale, lastSaleDate, numberOfAsks, numberOfBids, salesLast72Hours, last90Days*, annualHigh, annualLow, volatility, pricePremium, premiumOverRetail*, imageUrl, variantSizes100%
description, images36098%
per size: size, sizeConversions, highestBid, numberOfAsks, numberOfBids, salesLast72Hours100%
per size: lowestAsk, spread, lastSale, premiumOverRetail93% (sizes nobody is selling have no ask)
per size: upc / gtins92%
per size: last90DaysAveragePrice, expressLowestAsk84%

On a 100-product jordan 4 run: colorway 99%, releaseDate 99%. Search-result rows (867 new balance results, 26 pages): lowestAsk 98.6%, highestBid 98.4%, lastSale 99.8%, releaseDate 98.3%, last90DaysAveragePrice 93.7%, expressLowestAsk 89.7%, description 58.5%, the rest 100%. Sales rows: every field 100% (865 sales of one shoe with salesPerSize).

Not available: the all-time "deadstock sold" total and the 72-hour average price β€” StockX's website does not load them, so they are not in the rows.

Use cases

  • πŸ’Έ Resellers and flippers β€” find sizes where the bid is close to the ask, or shoes trading below retail.
  • πŸͺ Sneaker shops and consignment stores β€” price inventory against live asks and last sales, per size.
  • πŸ“Š Market researchers β€” 72-hour, 90-day and 12-month volume by brand, model and category.
  • πŸ€– Price-comparison apps and bots β€” style ID + UPC per size to join StockX with other stores.
  • πŸ“ˆ Trading cards and collectibles β€” the same book for PokΓ©mon, sports cards, figures and sealed boxes.
  • πŸ›ŽοΈ Price alerts β€” changes-only monitor on a schedule.

How much does it cost to scrape StockX?

Pay per result, no start fee:

RowPrice
Product row (detail + every size; history, latest sales and order book included when asked)$0.00067
Search-result row (includeDetails off)$0.00027
Sale row (outputMode: "sales")$0.0017
RunRowsCost
Demo (prefill)10 products$0.0067
One search, full detail100 products$0.067
Broad scan1,000 search results$0.27

Filtered, duplicate, unchanged (monitor mode), not-found and unreachable products are never charged.

Integrations, API, scheduling & MCP

  • Schedule the actor hourly or daily with Changes only on to get a price-change feed.
  • Webhooks, Make, Zapier, n8n, Google Sheets, Slack and Airtable from the Integrations tab.
  • API: call it from Python or JavaScript with apify-client, then read the dataset.
  • MCP: use it as a tool in Claude, ChatGPT or Cursor through the MCP tab.

More resale and marketplace scrapers

πŸ“š HipComic Scraper
Comic prices, listings and sellers.
βœ‰οΈ HipStamp Scraper
Stamp prices and listings.
πŸ›οΈ Trendyol Scraper
Products, prices, sellers, reviews.
🏷️ ShopGoodwill Scraper
Auction lots, bids and monitor.
πŸ”¨ HiBid Auction Scraper
Lots, bids and prices.
πŸ“¦ MaxSold Scraper
Estate auction lots and bids.

See every actor on our profile.

Limits & empty runs

  • StockX serves about 1,000 products per search or category (26 pages of 40); pages of broad searches overlap, and the actor removes duplicates. Split big jobs by keyword or filter.
  • StockX shows the 50 latest sales per product; salesPerSize adds up to 50 per size (865 sales for one 26-size Jordan 4 in our run). Older individual sales are not published.
  • A search with no matches ends with 0 rows and nothing charged; RUN_SUMMARY lists pages read, products seen, filtered, not found and unchanged per source.
  • If StockX cannot be reached at all, the run fails loudly instead of returning an empty dataset.
  • Speed: 100 full products in about 10-40 seconds; 1,000 search results in about 15-60 seconds.

❓ FAQ

How does StockX Scraper get the data?

From the same data API the stockx.com website loads its prices from β€” plain HTTP, no browser, so runs are fast and small (256 MB).

Do I need a StockX account, cookies or an API key?

No. StockX Scraper reads what any visitor sees. No login, no cookies, no key.

Can StockX Scraper give prices for one shoe size?

Yes. Every product row carries variantSizes with the ask, bid, spread, last sale and 72 h sales of each size; onlySizes keeps just the sizes you want (10, EU 44, UK 9).

Can StockX Scraper find a product by SKU or style ID?

Yes β€” put codes in Style IDs. A product is delivered only when its StockX record carries exactly that style ID.

Does StockX Scraper return sales history?

Yes, three ways: priceHistoryPoints adds the all-time price chart, includeRecentSales adds the 50 latest sales to each product, and outputMode: "sales" gives one row per sale (plus 50 per size with salesPerSize).

Can I get UK, EU or Japanese prices with StockX Scraper?

Yes. Set country (the market whose book is quoted) and currency (30 supported).

Can StockX Scraper track price changes over time?

Yes. Schedule it with Changes only: each run delivers only products that are new or whose ask, bid, last sale or ask/bid count moved since the previous run.

Does it cover trading cards, watches and handbags?

Yes β€” every StockX category: sneakers, shoes, apparel, accessories, collectibles, trading cards and electronics, with sub-categories like watches, bags, figures, sealed-boxes.

Why did my StockX Scraper run return no results?

The search matched nothing, a style ID matched no product, or your price/sales filters removed everything. RUN_SUMMARY says which. Nothing is charged for an empty run.

Can I use StockX Scraper with the Apify API or an MCP server?

Yes β€” Python or JavaScript apify-client, Make/Zapier/n8n, or as a tool in Claude, ChatGPT or Cursor over MCP.

Your feedback

Something missing or wrong? Open an issue on the Issues tab β€” we read every one.