Shopify Store Scraper - Products, Prices & Variants
Pricing
from $1.20 / 1,000 results
Shopify Store Scraper - Products, Prices & Variants
Scrape any Shopify store via the public /products.json endpoint. Get product title, vendor, type, tags, images, full variants (SKU, price, compare-at, availability), and options. No auth, no browser, works on most myshopify.com stores and custom domains.
Pricing
from $1.20 / 1,000 results
Rating
0.0
(0)
Developer
Thirdwatch
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Shopify Store Scraper
Scrape products from any Shopify store: title, vendor, tags, images, prices, compare-at prices, and full variant data.
What you get
Structured product data for any public Shopify storefront — no login, no API key, no merchant permission needed. Pass one or more store URLs (homepages, myshopify.com subdomains, or specific collection URLs) and get back every product with variants, images, prices, tags, and inventory status. Ideal for competitive intelligence, price monitoring, DTC market research, and product-catalog mirroring.
Output fields
| Field | Description |
|---|---|
store_domain | Store domain (e.g., allbirds.com) |
store_url | Original store URL provided |
url | Product page URL |
product_id | Shopify product ID |
handle | URL handle / slug |
title | Product title |
vendor | Brand / vendor name |
product_type | Category (e.g., "Shoes", "Apparel") |
tags | Array of tags applied by the merchant |
description | Product description |
image | Main product image URL |
images | All product image URLs |
options | Variant options (Size, Color, etc.) |
min_price | Lowest variant price |
max_price | Highest variant price |
min_compare_at_price | Lowest compare-at (pre-discount) price |
max_compare_at_price | Highest compare-at price |
on_sale | True if any variant is discounted |
variants | Array of {id, title, sku, price, compare_at_price, available, option1/2/3} |
variant_count | Number of variants |
available | True if any variant is in stock |
created_at | Product creation date |
updated_at | Last update date |
published_at | Publish date to storefront |
Example output
{"store_domain": "allbirds.com","store_url": "https://www.allbirds.com","url": "https://www.allbirds.com/products/mens-wool-runners","product_id": 4029431775334,"handle": "mens-wool-runners","title": "Men's Wool Runners","vendor": "Allbirds","product_type": "Shoes","tags": ["mens", "runner", "wool"],"description": "Our iconic everyday shoe, spun from superfine merino wool...","image": "https://cdn.shopify.com/...","images": ["https://cdn.shopify.com/...", "https://cdn.shopify.com/..."],"options": ["Size", "Color"],"min_price": 110.0,"max_price": 110.0,"on_sale": false,"variants": [{"id": 39274, "title": "10 / Natural Grey", "sku": "WR-NG-10", "price": 110.0, "available": true}],"variant_count": 24,"available": true,"created_at": "2021-05-12T10:00:00Z","updated_at": "2026-04-10T08:32:11Z","published_at": "2021-05-12T10:05:00Z"}
Input parameters
| Parameter | Required | Description |
|---|---|---|
storeUrls | Yes | List of Shopify store URLs. Accepts homepages, myshopify subdomains, or collection URLs. |
maxProductsPerStore | No | Maximum products per store. Default 25. Raise for full-catalog pulls. |
includeVariants | No | Include full variant list per product. Default true. Disable for smaller output. |
useProxy | No | Route through Apify's proxy. Default false. Enable only if a store returns errors. |
Use cases
- DTC brands & marketers: Track competitor launches, prices, and sale events across a list of Shopify rivals.
- Price monitoring tools: Mirror pricing & availability across target stores for alert systems.
- Dropshippers & affiliates: Pull catalogs into a mirror database with variant-level inventory.
- Investors & analysts: Measure catalog size, price bands, and sale cadence across a portfolio of DTC brands.
Limitations
- Works on public Shopify storefronts only. Private stores, password-locked stores, and stores that disable public catalog access are not supported (the store is skipped and no charge applies).
- Currency is not published in the product feed. Prices are floats in the store's default currency — handle conversions downstream.
- Individual product reviews are NOT included. Use the Shopify Reviews Scraper for aggregate review data.
Compared to alternatives
- vs. other Apify Store Shopify scrapers (typically $0.005-$0.01 per product): this actor is 5-10x cheaper at $0.001/product with the same fields.
- vs. manual CSV exports: requires being the store owner or a partner. This actor works on any public Shopify storefront without permissions.
Pairs well with the Shopify Reviews Scraper for review counts and ratings.
FAQ
Do I need to own the store? No. Any publicly visible Shopify storefront works.
What about custom domains?
Fully supported. Pass the brand's primary domain (e.g., allbirds.com or gymshark.com).
Can I pull a specific collection only?
Yes. Pass the collection URL (e.g., https://shop.gymshark.com/collections/mens-new-releases) and only products in that collection are scraped.
Will this work on Shopify Plus stores? Yes.
Last verified: 2026-04
More scrapers at thirdwatch.dev.