Shopify Store Scraper - Products, Prices, Sales & Stock
Pricing
from $0.35 / 1,000 results
Shopify Store Scraper - Products, Prices, Sales & Stock
Read a Shopify store's whole live catalog in seconds, straight from its own feed — always current, never a stale cache. Every product: price + variant range, sale price, stock, vendor, type, tags, images. Plus sale detection, out-of-stock and missing-SKU flags and a per-store price summary.
Pricing
from $0.35 / 1,000 results
Rating
0.0
(0)
Developer
Malek Oweis
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Point this at any Shopify store and get its entire live catalog back in seconds — price, sale price, stock, variants, images, tags — read straight from the store's own product feed, so it's always current, never a stale cache. No login, no private data.
Where a plain scraper stops at raw fields, this one adds the analysis a price/catalog monitor actually needs: sale detection, out-of-stock and missing-SKU flags, variant price ranges, and a per-store price summary (avg / min / max, on-sale count, out-of-stock count).
What you get per product
| Field | Meaning |
|---|---|
priceMin / priceMax | Price range across all variants |
compareAtMax | Highest "compare at" (was) price — set when on sale |
onSale | true when any variant's compare-at price is above its price |
inStock | true when at least one variant is available |
vendor, productType | Brand / category as set in Shopify |
tags, tagCount | Storefront tags |
variantCount, imageCount | Catalog completeness signals |
descriptionLength | Product description length (HTML stripped) |
skuCoverage | Fraction of variants that have a SKU set |
createdAt, updatedAt, publishedAt | Timestamps — diff between runs to catch changes |
flags | Quality issues found (see below) |
url | Direct link to the product page |
Flags
OUT_OF_STOCK— no variant availableON_SALE— compare-at price above current priceNO_IMAGES/SINGLE_IMAGE— thin product mediaNO_DESCRIPTION— empty descriptionNO_TAGS— no storefront tagsMISSING_SKU— one or more variants have no SKUNO_PRICE— no parseable price on any variant
Input
{"storeUrls": ["https://www.allbirds.com", "taylorstitch.com"],"maxProductsPerStore": 1000,"proxyConfiguration": { "useApifyProxy": false }}
storeUrls— bare domain, full URL, or any page on the store (only the domain is used).maxProductsPerStore—0for no limit (up to 50,000).proxyConfiguration— the starting connection. Leave it off: blocked stores are retried through residential proxies, then the Unblocker, automatically.
Output
One dataset row per product, plus a STORE_SUMMARY key-value record per store with
productsScraped, onSaleCount, outOfStockCount, avgPrice, minPrice, maxPrice.
Example row
{"store": "taylorstitch.com","title": "The Tiller Half Zip in Rinsed Indigo Slub","url": "https://www.taylorstitch.com/products/tiller-half-zip-in-rinsed-indigo-slub-2607","vendor": "Taylor Stitch","productType": "Knits","tags": ["knits", "half-zip", "indigo"],"tagCount": 31,"variantCount": 6,"priceMin": 138.0,"priceMax": 138.0,"compareAtMax": null,"onSale": false,"inStock": true,"imageCount": 9,"descriptionLength": 812,"skuCoverage": 1.0,"createdAt": "2026-01-14T09:02:11-08:00","updatedAt": "2026-09-03T11:40:55-07:00","publishedAt": "2026-01-15T06:00:00-08:00","flags": []}
Use cases
- Competitor price monitoring — schedule daily, diff
priceMinbetween runs - Sale detection — alert when
onSaleCountjumps for a competitor - New-product alerts — watch for new
handles / recentpublishedAt - Catalog QA — audit your own store for missing images, descriptions, SKUs
- Market research — pull an entire niche's pricing into a spreadsheet
FAQ
Does it need a proxy?
No setup needed. Each store is tried directly first. If a store blocks the request
(HTTP 403/429 or non-JSON, common on big brands like Allbirds), the Actor automatically
retries that store through Apify residential proxies, then the Apify Unblocker, and stays
on whichever tier worked. A few stores (e.g. Gymshark) have switched their public
/products.json feed off entirely; those are reported in the log and skipped.
How fast is it? Very. It reads a paginated JSON feed (250 products per request), no headless browser. A full 1,000-product catalog typically finishes in a few seconds.
How current is the data? It is the store's own live feed — the same data the storefront renders. There is no cache layer; every run reflects the catalog at run time.
Is this allowed?
It reads only the public /products.json endpoint Shopify exposes on every store by
default, i.e. public data any visitor can see. It never logs in and never touches
customer, order or checkout data. Respect each store's terms and your local laws.
A store returned nothing / was skipped. The owner disabled the public product feed, or the store isn't Shopify. The run logs a warning and moves on to the next store.
Can I get only new or changed products?
Run it on a schedule and diff priceMin / updatedAt / the set of handles between
runs — new handles are new products, changed priceMin is a price move.
Use it from an AI agent (Claude, ChatGPT, Cursor, any MCP client)
This Actor works as a tool for AI agents through Apify's MCP server. Add it to your AI app with this MCP URL:
https://mcp.apify.com/?tools=malek_oweis/shopify-store-product-price-scraper
Then just ask in plain language. Example prompt:
Get every product from allbirds.com with price, sale price and stock, and tell me which items are discounted.
Questions this Actor answers
- What products does this Shopify store sell, and at what prices?
- Which items in this Shopify store are on sale or out of stock right now?
- Track a competitor's Shopify prices and alert me when they change.
- Export a Shopify store's full product catalog to CSV.
- Compare price ranges across three Shopify stores in the same niche.
Free sample dataset
Want to see real output before running it? A free sample collected with this Actor (October 2026) is published on Hugging Face and GitHub, as CSV and JSONL, together with samples from the other Actors below.
More resale and e-commerce data tools by the same developer
- Resale Price Checker: one resale value per item across StockX, GOAT and Mercari
- Etsy Shop Scraper: Etsy listings, prices and shop health
- StockX Sales Data Scraper: StockX resale prices and sales volume
- Chrono24 Watch Listing Scraper: luxury watch prices on Chrono24
- GOAT Sneaker Price Scraper: GOAT sneaker prices by size
- Mercari Sold Listings Scraper: Mercari US sold prices (price comps)
Notes
Reads only the public /products.json endpoint that Shopify exposes on every
storefront by default. No login, no private data.