StockX Market Price & Sales History Finder
Pricing
from $0.49 / 1,000 results
StockX Market Price & Sales History Finder
Get StockX lowest ask, highest bid, last sale, and recent sales history for sneakers, streetwear, watches, and collectibles, by search, brand, category, or product slug.
Pricing
from $0.49 / 1,000 results
Rating
0.0
(0)
Developer
Xyrelith Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Security
Limited permissionsShare
Collect live resale market data from StockX for sneakers, apparel, watches, handbags, electronics, collectibles, and trading cards. Search by keyword, browse a brand or category, paste StockX URLs, fetch exact products, or pull individual sales history — with per-size order books and prices in 28 currencies across 24 markets.
What this actor does
- Six modes: keyword
search,byBrand,byCategory, exactbyProductslugs or URLs,byUrlfor pasted links, andsalesHistoryfor individual transactions - Full market snapshot: lowest ask, highest bid, ask tiers and counts, last sale, 72-hour velocity, 90-day and annual averages, volatility, price premium, and the 12-month low/high
- Per-size order book: every available size with its own ask, bid, spread, spread percentage, last sale, 72-hour sales, GTINs, and size conversions
- Product identity: style ID, colorway, retail price, release date, description, traits, gallery images, and 360° views
- Honest limits: StockX caps each query at 1,000 results, serves sales 50 at a time, and the actor tells you when a cap or filter affects the result
- Empty fields are omitted from every record — no
nullplaceholders or sentinel values
No StockX account, cookies, or proxy setup is required.
Output: per product
Used by search, byBrand, byCategory, byProduct, and byUrl product links.
slug,productUrl,sourceUrl,productId— identity and the listing page the row came fromtitle,name,model,brand,brandSlug— product namingcategory,subcategory,categories[],categoryPath[],productCategory,primaryCategory— category pathgender,condition,listingType— audience and listing attributesstyleId,colorway,retailPrice,releaseDate— manufacturer and release data when StockX publishes itdescription— plain-text description with markup removedtraits[]— visible product traits as{name, value, format}objectsimageUrl,smallImageUrl,thumbUrl,gallery[],gallery360[],verticalImages[]— image linkslowestAsk,highestBid— current best priceslowestAskUpdatedAt,highestBidUpdatedAt— when each side last changednumberOfAsks,numberOfBids,askServiceLevels— order-book depth and Standard / Express / Next-Day ask tierslastSale,lastSaleChangePercentage,lastSaleChangeValue— most recent transaction and its changesalesLast72Hours— units traded in the last 72 hoursdeadstockSold— annual sales count (kept for compatibility with older integrations)annualLow,annualHigh,annualAveragePrice,annualSalesCount— 12-month range and statsvolatility,pricePremium,averageDeadstockPrice— market characterlast90DaysAveragePrice,last90DaysSalesCount— 90-day statscurrency,region— pricing currency and market used for this runvariants[]— per-size order book rows (below)recentSales[]— recent individual sales when you enable sales enrichmentsponsored— present andtruewhen StockX marks a listing as sponsoredrecordType: "product",siteName: "StockX",scrapedAt
Variant object (variants[])
variantId,sku,size,sizeType,sizeConversions[],gtins[]lowestAsk,highestBid,numberOfAsks,numberOfBidslastSale,salesLast72Hours,last90DaysAveragePrice,last90DaysSalesCountspread,spreadPct— only when both an ask and a bid existcurrency,region
Output: per sale (salesHistory mode and recentSales[])
amount,currency— sale price and currencycreatedAt— transaction timestamporderType—EXPRESSorSTANDARDshoeSize,sizeType,sizeConversions[],variantId— the size that soldproductSlug,productUrl,productTitle— the product the sale belongs tosaleKey— deterministic key built from product, timestamp, price, and sizeregion— market used for this runrecordType: "sale",siteName: "StockX",scrapedAt
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | search | search, byBrand, byCategory, byProduct, byUrl, or salesHistory |
searchQueries | array | ["jordan"] | One or more keywords (mode=search) |
brand | string | – | Brand alias for mode=byBrand, e.g. jordan, nike, new-balance; also filters other modes when set |
category | string | – | StockX category for mode=byCategory; also filters other modes when set |
gender | string | – | men, women, or kids |
color | string | – | Common color filter |
sortBy | string | featured | Ten StockX sort orders, including lowest_ask, most-active, and release_date |
productSlugs | array | – | Product slugs or StockX product URLs (mode=byProduct / salesHistory) |
startUrls | array | – | StockX search, category, brand, browse, or product URLs (mode=byUrl) |
currency | string | USD | One of 28 supported currencies |
country | string | US | One of 24 supported markets |
minPrice | integer | – | Drop products whose lowest ask is below this value |
maxPrice | integer | – | Drop products whose lowest ask is above this value |
minSalesLast72Hours | integer | – | Keep products with at least this many recent sales |
includeProductDetails | boolean | true | Fetch the full product record while browsing; off gives a compact listing row |
includeVariants | boolean | true | Add the per-size order book to full product records |
includeSalesHistory | boolean | false | Add recentSales[] to each product record |
salesLimit | integer | 50 | Maximum individual sales per product (1–500) |
salesCondition | string | all | all, new-and-verified, new-other, or used |
maxItems | integer | 25 | Hard cap on emitted records (1–1,000) |
maxPages | integer | 5 | Listing pages per query (1–25, 40 products per page) |
Example: search with sizes and full market stats
{"mode": "search","searchQueries": ["jordan 4 retro"],"currency": "USD","country": "US","sortBy": "most-active","maxItems": 25,"maxPages": 2,"includeProductDetails": true,"includeVariants": true}
Example: a brand within a price band
{"mode": "byBrand","brand": "new-balance","gender": "men","minPrice": 120,"maxPrice": 400,"maxItems": 50}
Example: paste StockX links
{"mode": "byUrl","startUrls": ["https://stockx.com/category/watches","https://stockx.com/brands/casio","https://stockx.com/browse/women","https://stockx.com/air-jordan-5-retro-wolf-grey-2026"],"currency": "EUR","country": "DE","maxItems": 40}
Example: individual sales history
{"mode": "salesHistory","productSlugs": ["air-jordan-5-retro-wolf-grey-2026"],"salesCondition": "all","salesLimit": 200,"maxItems": 200,"currency": "GBP","country": "GB"}
Use cases
- Resale price monitoring — schedule daily runs and track lowest ask, highest bid, and last sale per product
- Sneaker and streetwear research — compare colorways, release dates, retail prices, and 12-month ranges
- Watch and collectible dealers — read per-size or per-variant order books, spreads, and ask depth
- Sales-ledger analysis — pull individual transactions to study realized prices, size premiums, and volume
- Cross-market pricing — request the same product in different currencies and markets to compare localized pricing
- Catalog enrichment — collect style IDs, GTINs, colorways, traits, and image galleries for a product database
FAQ
Do I need a StockX account, cookies, or a proxy? No. The actor reads StockX's public product and market data directly. You do not need to log in, supply cookies, or configure a proxy.
How fresh is the data? Each run requests current listings and market statistics, so prices, asks, bids, and recent sales reflect what StockX serves at run time.
Why is lowestAsk or highestBid missing for some products?
Those fields are omitted when no active seller or buyer exists for the product or size. Missing means "nothing live right now", not zero.
How many results can one query return? StockX caps a single query at 1,000 products across 25 pages of 40. When the cap is reached, the run status suggests splitting by brand, category, or gender for wider coverage.
How deep is the sales history?
StockX serves 50 individual sales per request with a cursor for older pages. salesLimit controls how many sales the actor collects per product, up to 500.
Why did a sale-condition filter return all conditions? StockX intermittently rejects condition-filtered sales requests. When that happens the actor retries, falls back to all conditions, and says so in the run status instead of returning nothing.
What does "Price: high to low" mean?
StockX does not serve a true descending price sort, so the actor collects the requested pages in ascending order and reverses those rows before emitting them. Increase maxPages to widen the range considered.
Why are chainId and deadstockRangeLow / deadstockRangeHigh not in the output?
StockX no longer exposes a transaction ID or a separate deadstock range. Existing output fields are preserved, but these are omitted rather than filled with placeholders; annualLow and annualHigh carry the 12-month range.
Is this affiliated with StockX? No. This is an independent, third-party actor that reads publicly available StockX data. It is not operated by or affiliated with StockX.