Shopify & WooCommerce Products Scraper
Under maintenancePricing
from $0.01 / 1,000 results
Shopify & WooCommerce Products Scraper
Under maintenanceScrape public Shopify (/products.json) and WooCommerce Store API catalogs to CSV/JSON. Diff mode detects price and stock changes (NEW / UPDATED / REMOVED). Multi-store, schedule-ready, no login.
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer
Juan Ignacio Rodriguez
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Features
Share
What does Shopify & WooCommerce Products Scraper do?
This Actor scrapes public Shopify and WooCommerce product catalogs — Shopify via the storefront /products.json endpoint, WooCommerce via the public Store API (/wp-json/wc/store/v1/products) — with no API key and no login. Each run is compared against the previous snapshot so you get NEW, UPDATED, and REMOVED rows with price deltas and stock changes. Export the full catalog to CSV/JSON, or schedule a cheap catalog-diff watch.
Why use this Actor?
Ecommerce agencies, dropshippers, brand analysts and pricing teams already pay for Shopify / WooCommerce scrapers on Apify Store. Most dump a full catalog every run. This Actor is diff-first: schedule it hourly/daily and only pay attention when something moves. One Actor covers both platforms with automatic detection (and caches the detected platform per store).
Features
- Autodetect Shopify (
/products.json) or WooCommerce Store API per store - Multi-store batch in one run
- One row per variant (SKU-level) or per product
- Persistent snapshots per
monitorName(run several independent watches) changes_onlymode for cheap scheduled price / stock monitors- Woo prices normalized from minor units (
currency_minor_unit) to decimal numbers - Clean fields ready for Sheets, webhooks, Make/Zapier, n8n
- HTTP/JSON only — no browser, fast and cheap (default 1024 MB)
What data can it extract?
| Field | Type | Description |
|---|---|---|
| platform | string | shopify or woocommerce |
| changeType | string | NEW / UPDATED / REMOVED / UNCHANGED / ERROR |
| storeDomain | string | Store hostname |
| title / variantTitle | string | Product and variant names |
| sku / barcode | string | Identifiers when public |
| price / previousPrice / priceDelta | number | Current vs previous price |
| compareAtPrice | number | Compare-at / regular price when present |
| available / previousAvailable / stockChanged | boolean | Stock signal |
| currency | string | ISO currency (Woo Store API) |
| productUrl / imageUrl | string | Links |
| vendor / productType / tags | string | Merchandising metadata |
How to scrape a Shopify or WooCommerce catalog
- Open the Actor in Apify Console.
- Paste one or more store URLs (e.g.
https://allbirds.comorhttps://godinguitars.com). - Set Output mode to
fullfor the first baseline, thenchanges_onlyfor schedules. - Give the monitor a name (e.g.
competitors-us). - Click Start. Download the dataset as JSON, CSV or Excel.
- (Optional) Schedule the Actor and attach a webhook to your Slack/Make scenario.
How much will it cost?
Pricing target (set on publish): pay-per-event ~$0.001 per product/variant row + tiny start fee, aligned with Store comps ($0.0009–$0.003/product). A 500-variant monitor run ≈ $0.50 at $0.001/row. Platform usage is deducted from creator profit; Apify keeps 20% of profits on PPE.
You only need the free or Creator plan ($1/mo with $500 test credits) to try it.
Input
See the Input tab. Required: storeUrls (Shopify or WooCommerce). Optional: maxProductsPerStore, mode, monitorName, includeUnchanged, rowPerVariant, proxyConfiguration.
Output
Download the dataset in JSON, HTML, CSV or Excel.
{"platform": "shopify","changeType": "UPDATED","storeDomain": "allbirds.com","title": "Tree Runners","variantTitle": "Medium Grey / 10","sku": "TR-MG-10","price": 98,"previousPrice": 105,"priceDelta": -7,"available": true,"previousAvailable": true,"stockChanged": false,"productUrl": "https://allbirds.com/products/mens-tree-runners"}
Tips
- First run builds the baseline (everything is NEW). Second scheduled run is where diffs appear.
- Use a distinct
monitorNameper client or niche so snapshots never collide. - Prefer
changes_onlyon schedules to keep datasets small and webhooks useful. - Most stores work without Apify Proxy. Enable proxy only if a store returns 403.
- WooCommerce: we call the public Store API only — we do not scrape
/products/reviews(reviewer PII). - Platform is cached in the snapshot KV after the first successful detection so later runs skip the probe.
FAQ, disclaimers and support
Our Actors are ethical and do not extract private user data. They only read what a merchant has chosen to publish on the public storefront catalog endpoint (Shopify /products.json or WooCommerce Store API). Results may still contain business data; comply with applicable laws (including GDPR where relevant) and the target site's Terms of Service. Use for legitimate competitive research, inventory monitoring you are authorized to perform, and your own stores. If unsure, consult a lawyer.
Open the Issues tab on this Actor for bugs and feature requests. Use the API tab to run it from code, Make, Zapier or n8n.