Shopify Store Products Scraper
Pricing
from $0.80 / 1,000 results
Shopify Store Products Scraper
Scrape any Shopify store's full product catalog from its public feed. Get prices, compare-at prices, variants, SKUs, stock status, images, tags and vendor. Paste a domain or collection URL, no login or API key needed. One row per product or per variant.
Pricing
from $0.80 / 1,000 results
Rating
0.0
(0)
Developer
Mangudäi
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Pull any Shopify store's product catalog into a clean dataset. Prices, compare-at prices, variants, SKUs, stock status, images, tags, vendor and product type, from the store's own public feed.
Paste a domain, get the catalog. No login, no API key, no cookies.
What it does
Every Shopify storefront publishes its catalog at /products.json. This actor reads that feed, walks its pagination, adds the shop's currency and name from /meta.json, and writes one tidy row per product or per variant.
Because the data comes straight from the store's own JSON, it is complete and current, and it does not break when the theme changes.
What you can do with it
- Track a competitor's prices and discounts day by day
- Watch stock levels on specific SKUs
- Build a product feed for a comparison site, a marketplace, or an AI agent
- Pull a supplier's catalog into your own store or spreadsheet
- Find which products a brand added or removed this week
Input
| Field | What it does |
|---|---|
storeUrls | Store home pages or /collections/<handle> URLs. A bare domain like gymshark.com works. |
collectionHandles | Optional. Restrict every store to these collections. |
searchTerm | Optional keyword filter across title, type, vendor and tags. |
outputMode | product for one row per product, variant for one row per variant. |
maxProductsPerStore | Stop after this many products per store. |
onlyAvailable | Skip products where every variant is sold out. |
minPrice / maxPrice | Price window in the store's own currency. |
includeVariants / includeImages | Attach the full arrays to each product row. |
includeDescriptionHtml | Keep the original body_html alongside the plain-text description. |
requestDelaySecs | Pause between catalog pages. |
proxyConfiguration | Apify Proxy, on by default. |
Minimal input:
{"storeUrls": ["https://gymshark.com"],"maxProductsPerStore": 200}
Price monitoring on one collection:
{"storeUrls": ["https://colourpop.com/collections/best-sellers"],"outputMode": "variant","onlyAvailable": true}
Output
One row per product:
{"storeDomain": "gymshark.com","storeName": "Gymshark US","currency": "USD","myshopifyDomain": "gymsharkusa.myshopify.com","productId": 6806953590986,"title": "Gymshark Training Regular Fleece Joggers - Haze Pink","handle": "gymshark-training-regular-fleece-joggers-pants-pink-aw26","url": "https://gymshark.com/products/gymshark-training-regular-fleece-joggers-pants-pink-aw26","vendor": "Gymshark","productType": "Womens Pants","tags": ["activewear", "joggers"],"description": "Simple & versatile for however you're training...","price": 42.0,"minPrice": 42.0,"maxPrice": 42.0,"compareAtPrice": null,"onSale": false,"available": true,"variantsCount": 7,"availableVariantsCount": 7,"imagesCount": 5,"featuredImage": "https://cdn.shopify.com/s/files/...jpg","options": ["Size"],"publishedAt": "2026-07-17T01:00:00-07:00","updatedAt": "2026-07-18T23:12:10-07:00","variants": [{ "variantId": 39797, "sku": "B7A4D-KDNB-S", "price": 42.0, "available": true }],"images": [{ "src": "https://cdn.shopify.com/...", "width": 1692, "height": 2018 }]}
In variant mode each row is a single SKU with variantId, sku, option1, option2, option3, price, compareAtPrice, discountPercent and available, which is the shape you want for a price tracker.
Notes
- Works on any store running Shopify. If a site is not Shopify, or the owner has switched the feed off, the run logs a warning for that store and moves on.
- Busy stores sometimes throttle requests. The actor retries with a fresh proxy IP, so leave Apify Proxy on.
- Prices come back in the store's own currency, reported in the
currencyfield. - Collection handles are the slug in a collection URL:
colourpop.com/collections/best-sellershas the handlebest-sellers.
Pricing
Pay per event. You pay per product row returned, and nothing for platform usage.