Shopify Store Product Scraper
Under maintenancePricing
Pay per usage
Shopify Store Product Scraper
Under maintenanceFor agencies, catalog ops, and SaaS builders who just got a Shopify URL and need the full product dump now. Pulls title, price, variants, SKUs, stock, images via public products.json. No login, no personal data. Free to run.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
ScrapeForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 days ago
Last modified
Categories
Share
Shopify Product Scraper — Full Store Catalogs as Clean JSON
Launch pricing: this actor currently adds no fee — run it on your Apify free-plan credits. Try it, bookmark it, wire it into your stack.
A Shopify product scraper and Shopify store scraper in one: scrape Shopify products — full catalogs with variants, SKUs, prices, compare-at prices and availability — from any store. It's a Shopify products.json scraper, so it reads the store's own public JSON instead of fragile HTML, which makes it ideal for reliable Shopify price monitoring at daily-schedule quality.
One run, whole catalog: every product, every variant, every price — and multi-store runs skip dead stores instead of failing.
Who uses this
- Merchants & competitor watchers — diff a rival's prices and stock daily;
compareAtPricevspriceexposes live discounts. - Dropshipping & product researchers — analyze catalogs, price points and assortment depth across niches.
- Agencies & consultants — audit a client's (or prospect's) catalog structure, tags and image coverage in minutes.
- Data & AI teams — stable JSON for pipelines, LLM agents and enrichment jobs.
Watching big-box furniture prices too? The IKEA Product Scraper does the same for any IKEA country store.
How it works
For each store, the actor pages through the public /products.json endpoint (250 products per page) that Shopify exposes on virtually every storefront. No HTML parsing, no selectors to break. In multi-store runs, a store that fails or hides products.json is skipped with a warning — the run only fails if no store at all yields products.
Output
One record per product (variants array included):
{"store": "https://www.allbirds.com","productId": 7292464955472,"title": "Men's Cruiser - Shadow Blue (Natural White Sole)","handle": "mens-cruiser-shadow-blue-natural-white-sole","url": "https://www.allbirds.com/products/mens-cruiser-shadow-blue-natural-white-sole","vendor": "Allbirds","productType": "Shoes","tags": ["DNAM BRANDS", "EC STOCK"],"priceMin": 105,"priceMax": 105,"variantsCount": 13,"variants": [{ "variantId": 41990816759888, "title": "8", "sku": "A12856M080", "price": 105, "compareAtPrice": null, "available": true }],"image": "https://cdn.shopify.com/s/files/1/1104/4168/products/...","imagesCount": 6,"createdAt": "2023-01-11T10:20:11-05:00","updatedAt": "2026-07-14T22:03:41-04:00","scrapedAt": "2026-07-15T09:34:24.539Z"}
(variants truncated here for brevity — the dataset contains all 13, each with SKU, price, compare-at price and availability)
Input
| Field | Default | Description |
|---|---|---|
storeUrl | https://www.allbirds.com | A Shopify store homepage |
storeUrls | — | Additional stores — scrape many in one run |
maxProducts | 1000 | Stop after this many products across all stores |
The default run needs no configuration — an empty input scrapes the demo store.
Reliability & limits
- Depends on the store's public
products.json: the vast majority of Shopify stores expose it, but a store can disable it or sit behind a password page. Such stores are skipped (logged), and the run fails only when zero products came from all stores together. - Prices are per-variant;
priceMin/priceMaxsummarize the spread. Currency is the store's own currency (not converted). - Very large catalogs paginate at 250 products/page; raise
maxProductsaccordingly.
Paste this output into…
- Google Sheets —
=IMPORTDATA("https://api.apify.com/v2/acts/exuberant_volley~shopify-store-scraper/runs/last/dataset/items?format=csv&clean=1&token=YOUR_TOKEN&fields=store,title,vendor,productType,priceMin,priceMax,url,updatedAt")for a live catalog sheet. - Make / n8n — schedule daily, pull
.../runs/last/dataset/items, and route price changes to Slack or email. - Discount detector (merchants) — filter records where any variant has
compareAtPrice > price; that's the store's live sale list — pipe it to a Slack channel every morning.
ScrapeForge free data suite
One publisher, fourteen plug-and-play datasets — all currently free to run:
| Actor | What it delivers | |
|---|---|---|
| Executive Changes Tracker | New CEO/CFO/board moves from SEC 8-Ks + official newswires — source-cited B2B trigger leads | run it next → |
| IKEA Product Scraper | Names, prices, ratings and images from any IKEA search or category page | run it next → |
| Shopify Store Scraper | Any Shopify store's full catalog — variants, SKUs, prices — via products.json | run it next → |
| App Store Apps Scraper | App rankings, ratings, prices and metadata by keyword, any country | run it next → |
| Remote Jobs Scraper | Live remote listings from RemoteOK + Remotive, keyword-filtered | run it next → |
| CoinGecko Market Scraper | Top-coin prices, market caps and 24h moves — keyless | run it next → |
| GitHub Repositories Scraper | Repo search with stars, forks, topics and licenses | run it next → |
| Hacker News Scraper | Top/New/Best HN stories with scores and comment counts | run it next → |
| Wikipedia Scraper | Article summaries, images and URLs in any language — RAG-ready | run it next → |
| SEC EDGAR Filings Scraper | Any US public company's filing history by ticker | run it next → |
| Open-Meteo Weather Scraper | 16-day daily forecast for any coordinates — temps, rain, wind — keyless | run it next → |
| arXiv Papers Scraper | Research papers by topic — abstracts, categories, PDF links, newest-first sort | run it next → |
| NVD CVE Scraper | Fresh CVEs with CVSS severity, CWE ids and CISA known-exploited flags | run it next → |
| npm Registry Scraper | npm package vitals — latest version, license, weekly downloads, dependency count | run it next → |
Compliance
- No personal data — product catalog only (titles, prices, variants, images), GDPR-safe.
- Reads only the store's own public
products.jsonendpoint — no logins, no cookies, no customer data. - Records live only in your run's dataset; the actor keeps nothing beyond it.