Shopify Scraper
Pricing
Pay per event
Shopify Scraper
Scrape products, collections, and customer reviews from any Shopify store. Get prices, variants, images, and reviews from Yotpo, Judge.me, Stamped.io, and Okendo.
Pricing
Pay per event
Rating
0.0
(0)
Developer

Stas Persiianenko
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Shopify Store Scraper
Scrape products, collections, and customer reviews from any Shopify-powered store. Get prices, variants, descriptions, images, availability, and reviews from Yotpo, Judge.me, Stamped.io, and Okendo — no API key required.
What does Shopify Store Scraper do?
Shopify Store Scraper extracts product, collection, and review data from any Shopify store. Just provide a store URL and get structured data back:
- Products — Title, price, compare-at price, description, vendor, type, tags, variants (sizes/colors), images, and availability
- Collections — Title, description, product count, and images
- Reviews — Rating, author, review text, date, verified buyer status, and images. Auto-detects the review platform (Yotpo, Judge.me, Stamped.io, Okendo)
Works on any store built on Shopify — from small boutiques to major brands like Allbirds, Gymshark, and ColourPop.
Why scrape Shopify stores?
Shopify powers 4.8M+ online stores worldwide. Structured product and review data is valuable for:
- 💰 Price monitoring — Track competitor pricing and discount patterns
- ⭐ Review analysis — Analyze customer sentiment, ratings, and feedback trends
- 📊 Market research — Analyze product catalogs, pricing tiers, and inventory
- 🔍 Product discovery — Find new products and trending items across stores
- 📈 Competitive intelligence — Monitor competitor product lines and customer satisfaction
- 🏷️ Catalog building — Aggregate products from multiple stores for comparison sites
- 📦 Inventory tracking — Monitor stock availability across variants
Use cases
- E-commerce brands monitoring competitor catalogs, pricing, and customer reviews
- Dropshippers finding products and evaluating supplier quality via reviews
- Price comparison sites aggregating data from multiple stores
- Market researchers studying product trends, pricing, and customer sentiment
- Brand managers tracking how products are reviewed and priced by retailers
- Data analysts building e-commerce and review datasets
How to scrape Shopify stores
- Go to Shopify Store Scraper on Apify Store
- Enter one or more Shopify store URLs
- Choose what to extract: products, collections, reviews, or all three
- Set the max products and reviews limits
- Click Start and wait for results
- Download data as JSON, CSV, or Excel
Data you can extract
Product data
| Field | Type | Description |
|---|---|---|
title | string | Product name |
price | string | Current price |
compareAtPrice | string | Original/compare price |
available | boolean | Whether in stock |
vendor | string | Brand/vendor name |
productType | string | Product category |
description | string | Product description (text) |
tags | array | Product tags |
imageUrl | string | Main product image |
imageCount | number | Total images |
variantCount | number | Number of variants |
variants | array | Size/color variants with prices and SKUs |
options | array | Option names (e.g., Size, Color) |
url | string | Product page URL |
createdAt | string | When product was added |
updatedAt | string | Last update date |
Review data
| Field | Type | Description |
|---|---|---|
productTitle | string | Product being reviewed |
author | string | Reviewer name |
rating | number | Star rating (1-5) |
title | string | Review title |
body | string | Full review text |
date | string | Review date |
verifiedBuyer | boolean | Whether reviewer is a verified buyer |
helpfulCount | number | Number of helpful votes |
imageUrls | array | Review images uploaded by customer |
reviewPlatform | string | Review platform (yotpo, judgeme, stamped, okendo) |
Collection data
| Field | Type | Description |
|---|---|---|
title | string | Collection name |
description | string | Collection description |
productsCount | number | Products in collection |
imageUrl | string | Collection image |
url | string | Collection page URL |
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
storeUrls | array | required | Shopify store URLs |
scrapeProducts | boolean | true | Extract products |
scrapeCollections | boolean | false | Extract collections |
scrapeReviews | boolean | false | Extract customer reviews |
maxProducts | integer | 100 | Max products per store |
maxReviewsPerProduct | integer | 50 | Max reviews per product |
Input example
{"storeUrls": ["https://www.allbirds.com"],"scrapeProducts": true,"scrapeReviews": true,"maxProducts": 50,"maxReviewsPerProduct": 20}
Output example
Product
{"type": "product","storeUrl": "https://www.allbirds.com","productId": 7091688144976,"title": "Women's Tree Dasher 2 - Rustic Brown","handle": "womens-tree-dashers-rustic-brown","vendor": "Allbirds","productType": "Shoes","price": "99.00","compareAtPrice": "140.00","available": true,"imageUrl": "https://cdn.shopify.com/s/files/...","imageCount": 5,"variantCount": 13,"variants": [{"variantId": 41814508675152,"title": "5","sku": "TD2-WRBR-5","price": "99.00","available": true,"option1": "5"}],"url": "https://www.allbirds.com/products/womens-tree-dashers-rustic-brown","scrapedAt": "2026-03-11T12:00:00.000Z"}
Review
{"type": "review","storeUrl": "https://www.allbirds.com","productId": 7091688144976,"productTitle": "Women's Tree Dasher 2 - Rustic Brown","productUrl": "https://www.allbirds.com/products/womens-tree-dashers-rustic-brown","reviewPlatform": "yotpo","reviewId": "814862892","author": "Katie L.","rating": 2,"title": "narrow opening","body": "Unfortunately these don't work for me. I have had Tree Dasher before...","date": "2026-02-27T17:09:27.000Z","verifiedBuyer": true,"helpfulCount": 0,"imageUrls": [],"scrapedAt": "2026-03-11T12:00:00.000Z"}
Supported review platforms
The scraper auto-detects which review platform a store uses by visiting one product page:
| Platform | Detection | API |
|---|---|---|
| Yotpo | Script loader URL or data-appkey | Public CDN API (JSON) |
| Judge.me | judge.me scripts, jdgm-widget elements | Public widget API |
| Stamped.io | StampedFn.init() or stamped.io scripts | Widget API with public key |
| Okendo | okendo.io scripts, data-oke- attributes | Storefront REST API |
If a store uses a different review platform (e.g., Loox), reviews will be skipped with a warning.
How much does it cost to scrape Shopify stores?
Shopify Store Scraper uses pay-per-event pricing:
| Event | Price |
|---|---|
| Run started | $0.005 |
| Product extracted | $0.003 per product |
| Collection extracted | $0.001 per collection |
| Review extracted | $0.001 per review |
Cost examples
| Scenario | Items | Cost |
|---|---|---|
| 50 products, no reviews | 50 | ~$0.155 |
| 50 products + 10 reviews each | 50+500 | ~$0.655 |
| 20 products + reviews from 3 stores | 60+600 | ~$0.785 |
Apify's free plan includes $5/month — enough for ~1,600 products or ~5,000 reviews.
Using Shopify Store Scraper with the Apify API
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('automation-lab/shopify-scraper').call({storeUrls: ['https://www.allbirds.com'],scrapeProducts: true,scrapeReviews: true,maxProducts: 50,maxReviewsPerProduct: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();const products = items.filter(i => i.type === 'product');const reviews = items.filter(i => i.type === 'review');console.log(`${products.length} products, ${reviews.length} reviews`);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_API_TOKEN')run = client.actor('automation-lab/shopify-scraper').call(run_input={'storeUrls': ['https://www.allbirds.com'],'scrapeProducts': True,'scrapeReviews': True,'maxProducts': 50,'maxReviewsPerProduct': 20,})dataset = client.dataset(run['defaultDatasetId']).list_items().itemsproducts = [i for i in dataset if i['type'] == 'product']reviews = [i for i in dataset if i['type'] == 'review']print(f"{len(products)} products, {len(reviews)} reviews")
cURL
curl "https://api.apify.com/v2/acts/automation-lab~shopify-scraper/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \-X POST -H "Content-Type: application/json" \-d '{"storeUrls": ["https://www.allbirds.com"], "scrapeReviews": true, "maxProducts": 10}'
Integrations
- Scheduled runs — Monitor prices, inventory, and review trends daily
- Webhooks — Get notified when scraping completes
- Google Sheets — Export product catalogs and reviews to spreadsheets
- Slack — Alert on price changes or negative reviews
- Zapier / Make — Automate e-commerce data workflows
- Shopify → Google Sheets competitor catalog — Schedule weekly scrapes of competitor Shopify stores and auto-sync product catalogs to a spreadsheet for pricing analysis.
- Shopify reviews → Slack sentiment alerts — Get notified when a competitor receives negative reviews (rating < 3) so you can capitalize on their weak spots.
Tips
- 🏪 Any Shopify store works — If it's built on Shopify, you can scrape it
- ⭐ Review platform auto-detected — No need to specify which review app a store uses
- 📊 Compare prices — Use
compareAtPricevspriceto find discounted items - 📦 Track inventory — The
availablefield shows real-time stock status per variant - 🏷️ Filter by type — Use
productTypeto categorize products,typefield to separate products vs reviews - 🔄 Monitor changes — Schedule daily runs and compare datasets to detect price/stock/review changes
- 🛒 Multiple stores — Scrape several stores in one run by providing multiple URLs
How to tell if a store uses Shopify
Add /products.json to any store URL. If it returns JSON product data, it's a Shopify store. For example: https://www.allbirds.com/products.json
Is it legal to scrape Shopify stores?
This scraper uses Shopify's public product API (/products.json) and publicly accessible review widget APIs. It only accesses data that is already visible to any store visitor. Always review individual store terms of service before large-scale data collection.
Use with AI agents via MCP
Shopify Store Scraper is available as a tool for AI assistants that support the Model Context Protocol (MCP).
Setup for Claude Code
$claude mcp add --transport http apify "https://mcp.apify.com"
Setup for Claude Desktop, Cursor, or VS Code
Add this to your MCP config file:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com"}}}
Example prompts
Once connected, try asking your AI assistant:
- "Scrape all products from this Shopify store"
- "Get product reviews from this Shopify store"
- "Find all collections and their products on this store"
Learn more in the Apify MCP documentation.
FAQ
How do I know if a store uses Shopify?
Add /products.json to the store URL. If you get JSON data, it's Shopify.
Can I scrape any Shopify store? Most Shopify stores expose their product API by default. Some may have disabled it — those will return no results.
Which review platforms are supported? Yotpo, Judge.me, Stamped.io, and Okendo. The scraper auto-detects which platform a store uses. If a store uses a different platform, reviews will be skipped.
What about stores with thousands of products?
The scraper paginates automatically. Set maxProducts high (up to 10,000) for large catalogs.
Does it include variant details? Yes — each product includes all variants with sizes, colors, SKUs, prices, and availability.
Can I scrape only reviews without products?
Reviews require product data (IDs and handles), so products are always fetched. Set scrapeProducts: false and scrapeReviews: true to skip pushing product data to the dataset while still fetching reviews.
The scraper returns 0 products for a store I know is on Shopify. What happened?
Some Shopify stores disable the public /products.json API endpoint. If the store returns a 401 or empty response at that URL, the scraper cannot extract products. This is a store-level setting that cannot be bypassed.
Why are reviews missing even though the store has them? The scraper supports Yotpo, Judge.me, Stamped.io, and Okendo. If the store uses a different review platform (e.g., Loox, Shopify native reviews), reviews will be skipped. Check the run log for a warning message indicating the detected (or undetected) platform.
Other e-commerce scrapers
- Amazon Scraper — Scrape product data and reviews from Amazon
- eBay Scraper — Extract listings and prices from eBay
- Walmart Scraper — Scrape product data from Walmart
- Target Scraper — Extract products and prices from Target
- Newegg Scraper — Scrape electronics and product data from Newegg