Shopify Product Scraper โ Full Store Catalogs
Pricing
from $0.001 / product scraped
Shopify Product Scraper โ Full Store Catalogs
Scrape the full product catalog of any Shopify store: title, vendor, type, tags, description, images, options and every variant with price, SKU and availability. Great for e-commerce and competitor research.
Pricing
from $0.001 / product scraped
Rating
0.0
(0)
Developer
hiper soft
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Shopify Product Scraper โ Full Store Catalogs, Every Variant, Clean JSON, No API Key
Scrape the entire product catalog of any Shopify store from its public products.json endpoint โ title, vendor, type, tags, description, images, options and every variant with price, SKU and availability. Output is clean, structured JSON, ready for spreadsheets, databases or your own tooling. No account, no API key. Built for e-commerce teams, competitor research, price monitoring and catalog syncing.

Features
- ๐ฌ Whole catalog, any store โ pass one or many
storeUrls(e.g. "allbirds.com") and page through every product automatically, 250 at a time. - ๐๏ธ Full variant detail โ each product carries a
variantsarray withprice,compareAtPrice,sku,available, weight andoption1/2/3. - ๐ Two output shapes โ keep one row per product, or set
oneRowPerVariantto flatten to one row per variant for easy spreadsheet analysis. - ๐ท๏ธ Rich product fields โ
vendor,productType,tags,options,images,bodyHtmlplusminPrice/maxPriceand anavailableflag. - ๐ข Cap or grab everything โ
maxProductsPerStorelimits volume, or set 0 to pull the entire catalog. - ๐ก๏ธ Optional proxy โ most stores need none; add a residential proxy for stores that require one.
- ๐งพ Clean JSON output โ flat, predictable records ready to export to CSV, Excel, JSON or an API.
What you get

One record per product (default mode), variants nested inside:
{"store": "www.allbirds.com","productId": 4636362965059,"title": "Men's Wool Runners","handle": "mens-wool-runners","vendor": "Allbirds","productType": "Shoes","tags": ["wool", "runners"],"url": "https://www.allbirds.com/products/mens-wool-runners","options": [{ "name": "Size", "values": ["9", "10", "11"] }],"images": ["https://cdn.shopify.com/s/files/1/img1.jpg"],"featuredImage": "https://cdn.shopify.com/s/files/1/img1.jpg","variantsCount": 3,"minPrice": 98,"maxPrice": 98,"available": true,"variants": [{ "id": 31234, "title": "9", "sku": "WR-M-09", "price": 98, "compareAtPrice": null, "available": true, "option1": "9", "option2": null, "option3": null }]}
Output schema
| Field | Type | Description |
|---|---|---|
store | string | Domain of the Shopify store. |
productId | integer | Shopify's numeric product ID. |
title | string | Product title. |
handle | string | URL handle/slug of the product. |
vendor | string | Product vendor or brand. |
productType | string | Product type/category. |
tags | array | Tags assigned to the product. |
url | string (URL) | Link to the product page. |
createdAt | string (ISO date) | When the product was created. |
publishedAt | string (ISO date) | When the product was published. |
updatedAt | string (ISO date) | When the product was last updated. |
bodyHtml | string | Product description as HTML. |
options | array | Product options (e.g. size, color) with their values. |
images | array | Image URLs for the product. |
featuredImage | string (URL) | Main product image URL. |
variantsCount | integer | Number of variants for the product. |
minPrice | integer | Lowest variant price. |
maxPrice | integer | Highest variant price. |
available | boolean | Whether any variant is in stock. |
variants | array | All variants with price, compareAtPrice, SKU, availability and options. |
Input
{"storeUrls": ["https://www.allbirds.com", "gymshark.com"],"maxProductsPerStore": 0,"oneRowPerVariant": false,"proxyConfiguration": { "useApifyProxy": false }}
| Field | Description |
|---|---|
storeUrls | Shopify store domains or URLs; each store's full catalog is scraped. |
maxProductsPerStore | Max products per store (0 = entire catalog). |
oneRowPerVariant | Output one flattened row per variant instead of one per product. |
proxyConfiguration | Optional proxy; a residential proxy is recommended for stores that require one. |
Use cases
- Sync or import a competitor's full catalog into your own store or database.
- Monitor prices, discounts (
compareAtPrice) and stock across variants over time. - Analyze assortment, vendors and product types for market research.
- Feed clean product data into pricing, analytics or reselling workflows.
Pricing
Pay-per-event: you're billed a small amount per run and per item scraped โ you only pay for what you get. See the Pricing tab for current rates.
FAQ
Do I need a Shopify account or API key? No. Just enter the store URLs and run โ no account, login or API key required.
What format is the output?
Structured JSON โ one row per product (or per variant with oneRowPerVariant) โ exportable as JSON, CSV, Excel or via the Apify API.
Can I integrate this with other tools? The Shopify Product Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.
Notes
This scraper only reads a store's publicly available products.json catalog โ no login-walled content, orders or customer data. It is an independent tool and is not affiliated with, authorized or endorsed by Shopify or any store; "Shopify" and store names belong to their respective owners.