Shopify Product Scraper - Products & Reviews
Pricing
Pay per usage
Shopify Product Scraper - Products & Reviews
Scrape any Shopify store's products, collections, variants, and reviews. Supports Judge.me, Loox, Stamped, and Yotpo review platforms. Deep extraction with pricing, inventory, and images.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Ricardo Akiyoshi
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 minutes ago
Last modified
Categories
Share
Shopify Product Scraper - Products, Collections & Reviews
Extract detailed product data, variants, and customer reviews from any Shopify store. This actor goes beyond basic product scraping by also extracting reviews from popular platforms including Judge.me, Loox, Stamped, and Yotpo.
What data do you get?
For each product, the scraper extracts:
- Product details: Title, handle, description, vendor, product type
- Pricing: Current price, compare-at price, currency, discount percentage
- Variants: All variants with SKU, price, inventory status, weight, option values
- Images: All product images with alt text
- Tags & collections: Product tags and collection membership
- SEO metadata: Meta title, meta description, URL handle
- Reviews (optional): Rating, author, date, title, body, verified purchase status
- Review summary: Average rating, total review count per product
- Timestamps: Created, updated, and published dates
Use Cases
Dropshipping Research
Find winning products by analyzing best-sellers, pricing trends, and customer sentiment across competing Shopify stores. Sort by best-selling to quickly identify top performers.
Competitor Analysis
Monitor competitor product catalogs, pricing strategies, and customer feedback. Track new product launches and price changes over time.
Price Monitoring
Build automated price tracking by running the scraper on a schedule. Compare prices across multiple stores selling similar products.
Market Research
Analyze customer reviews to understand product-market fit, common complaints, and feature requests. Use review data to identify gaps in the market.
Product Sourcing
Identify high-rated products with strong reviews for private label or wholesale opportunities. Filter by rating and review count to find proven winners.
How to use
Input example
{"storeUrls": ["https://gymshark.com","https://allbirds.com","https://fashionnova.com"],"includeReviews": true,"maxProducts": 500,"sortBy": "best_selling"}
Sort options
| Value | Description |
|---|---|
best_selling | Most popular products first (default) |
price_asc | Cheapest products first |
price_desc | Most expensive first |
newest | Most recently added |
title | Alphabetical by title |
Output example
{"id": 7654321098765,"title": "Power Leggings","handle": "power-leggings","description": "High-waisted compression leggings with side pocket...","vendor": "Gymshark","productType": "Leggings","tags": ["women", "leggings", "best-seller", "new-arrival"],"price": "52.00","compareAtPrice": "65.00","discountPercent": 20,"currency": "USD","available": true,"variants": [{"id": 43210987654321,"title": "XS / Black","price": "52.00","compareAtPrice": "65.00","sku": "GS-PL-XS-BLK","available": true,"option1": "XS","option2": "Black","weight": 200,"weightUnit": "g"}],"variantCount": 24,"options": [{ "name": "Size", "values": ["XS", "S", "M", "L", "XL"] },{ "name": "Color", "values": ["Black", "Navy", "Grey"] }],"images": ["https://cdn.shopify.com/s/.../power-leggings-front.jpg","https://cdn.shopify.com/s/.../power-leggings-side.jpg"],"imageCount": 4,"reviewSummary": {"averageRating": 4.7,"totalReviews": 1283,"ratingDistribution": { "5": 892, "4": 241, "3": 98, "2": 32, "1": 20 }},"reviews": [{"author": "Sarah M.","rating": 5,"title": "Best leggings ever!","body": "These are incredibly comfortable and squat-proof...","date": "2026-02-15","verified": true}],"collections": ["women", "leggings", "best-sellers"],"storeUrl": "https://gymshark.com","productUrl": "https://gymshark.com/products/power-leggings","createdAt": "2025-11-01T10:00:00Z","updatedAt": "2026-02-28T14:30:00Z","scrapedAt": "2026-03-02T12:00:00Z"}
How it works
- Product Discovery: Uses Shopify's
/products.jsonAPI endpoint for fast, reliable product enumeration (250 products per page, no anti-bot blocks) - Collection Mapping: Fetches
/collections.jsonto map products to their collections - Review Extraction: Visits individual product pages and detects the review platform (Judge.me, Loox, Stamped, or Yotpo), then extracts reviews via their widget APIs
- Deduplication: Tracks product IDs to ensure no duplicates across pages
- Smart Pagination: Automatically paginates through all products up to your configured limit
Review platform support
| Platform | Detection | Extraction |
|---|---|---|
| Judge.me | Widget script tag | JSON API (/judgeme/widgets/...) |
| Loox | Script tag / meta | Widget API |
| Stamped | Script tag / div | API endpoint |
| Yotpo | App key in page | Reviews API |
| Native Shopify | SPR widget | HTML parsing |
Tips for best results
- Start small: Test with
maxProducts: 10and one store URL first - Reviews are slower: Each product page must be visited individually for reviews. Disable
includeReviewsfor faster runs if you only need product data - Use proxies: For scraping 1000+ products, enable Apify Proxy to avoid rate limiting
- Sort strategically: Use
best_sellingto get the most valuable products first when using a lowmaxProductslimit - Schedule runs: Set up a recurring schedule for ongoing price and inventory monitoring
Cost estimation
With PPE pricing at $0.004 per product scraped:
| Products | Cost |
|---|---|
| 100 | $0.40 |
| 500 | $2.00 |
| 1,000 | $4.00 |
| 10,000 | $40.00 |
Limitations
- Shopify's
/products.jsonendpoint returns a maximum of 250 products per page - Some stores may restrict the products.json endpoint; the actor falls back to
/collections/all/products.json - Review extraction requires visiting individual product pages (slower than product-only mode)
- Private/password-protected stores are not accessible
- Review API rate limits vary by platform
Changelog
v1.0.0 (2026-03-02)
- Initial release
- Product scraping via /products.json API
- Collection mapping via /collections.json
- Review extraction for Judge.me, Loox, Stamped, Yotpo, and native Shopify
- Smart pagination and deduplication
- Sort by best-selling, price, newest, or title
Integration — Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("sovereigntaylor/shopify-product-scraper").call(run_input={"storeUrl": "https://example.myshopify.com","maxResults": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item['title']}: {item.get('price', 'N/A')}")
Integration — JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('sovereigntaylor/shopify-product-scraper').call({storeUrl: 'https://example.myshopify.com',maxResults: 100});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => console.log(item.title || item.name || 'N/A'));