Shopify Store Scraper
Pricing
Pay per event
Shopify Store Scraper
Deep-dive any Shopify store: full product catalogue, installed apps, theme, pricing strategy and tech stack, plus review coverage and average rating measured over a product sample. One flat record per store for competitor research and lead generation.
Pricing
Pay per event
Rating
5.0
(1)
Developer
WebDataLabs
Maintained by CommunityActor stats
5
Bookmarked
173
Total users
11
Monthly active users
17 days ago
Last modified
Categories
Share
Shopify Store Intelligence - Competitor Analysis & Tech Stack Detector
Deep dive into any Shopify store: Extract ALL products, detect installed apps and the base theme, analyze pricing strategy, and measure review coverage. One-time comprehensive store analysis for competitor research and market intelligence.
Every number in the output is measured, never modelled. This actor does not publish a sales estimate, because a Shopify storefront does not expose order volume and any "estimated sales" figure would be a guess dressed up as data. Fields that could not be measured are
nullandstatus_reasonsays why.
🎯 What Does This Actor Do?
This Shopify Store Intelligence Scraper provides a comprehensive, one-time deep analysis of any Shopify store - going far beyond simple product scraping.
Unlike basic product scrapers that just list items, this actor delivers complete business intelligence per store:
✅ Complete Product Catalog - All products, variants, pricing, inventory ✅ Tech Stack Detection - Base theme + merchant theme name/version + 20+ app categories ✅ Pricing Intelligence - Min/avg/max prices, discount analysis ✅ Review Signals - Review coverage and average rating, measured on real product pages ✅ Competitive Positioning - Category focus, pricing strategy ✅ Store Age & History - Launch date estimation ✅ Inventory Health - Stock availability percentage ✅ Best-Selling Products - Top 10 by collection position
Output: ONE comprehensive intelligence record per store (not per product!)
💼 Use Cases
🔍 Competitor Research
Understand rivals' product mix, pricing strategy, and technology choices. See what apps successful stores use for reviews, email marketing, upselling, and more.
💰 Dropshipping Intelligence
Find winning products and compare stores by catalogue size, price band, discount depth and how much review social proof they have actually accumulated.
📊 Market Analysis
Benchmark your store against competitors. Compare catalog size, pricing, review coverage, and technology adoption.
🔌 Tech Stack Discovery
See what apps and themes successful stores use. Perfect for agencies prospecting stores that need better tools or optimization.
🎯 E-commerce Market Research
Gather data on pricing strategies, product categories, and business metrics across multiple stores in your industry.
🚀 Features
📦 Complete Product Catalog Analysis
- Scrapes ALL products with variants, pricing, and inventory
- Calculates price ranges (min/avg/max)
- Identifies products on sale with average discount percentage
- Breaks down categories and product types
- Analyzes vendor/brand distribution
🔌 Tech Stack & App Detection
Automatically detects installed Shopify apps via HTML pattern matching:
Reviews: Judge.me, Yotpo, Stamped.io, Loox, Okendo Email Marketing: Klaviyo, Omnisend, Privy Upsell/Cross-sell: Rebuy, Zipify, Bold Upsell Search: Searchanise, Klevu, SearchSpring Loyalty: Smile.io, Yotpo Loyalty Analytics: Google Analytics, Segment, Hotjar Customer Support: Gorgias, Zendesk, Tidio Payments: Afterpay, Affirm, Klarna Personalization: Nosto, Dynamic Yield Social Proof: Fomo, Prove Source
Plus: base theme (theme_base_name, e.g. Dawn, Impulse, Prestige), the merchant's own theme
name, theme version and Shopify theme ID. Most merchants rename their theme copy — theme_name
comes back as things like (24 Jun-2024) Worked of the American-Art-Decor, so group and filter on
theme_base_name.
💰 Measured Store Metrics
- Review coverage percentage — share of the sampled product pages (up to 15) that show reviews
- Average reviews per product and average product rating across those sampled pages
- Inventory health (% variants in stock)
- Store age estimation (from oldest product date)
Review figures are measured on a sample of up to 15 real product pages per store, not on the whole
catalogue — the field titles and descriptions say so, and review_coverage_pct is the share of that
sample.
📈 Competitive Positioning
- Price strategy analysis (min/avg/max across catalog)
- Category distribution and focus areas
- Discount strategy (% products on sale, average discount)
- SEO quality indicators (images per product, description coverage)
- Collection count and organization
📥 Input
Simple configuration - just add store URLs:
{"storeUrls": [{ "url": "https://gymshark.com" },{ "url": "https://allbirds.com" }]}
Parameters:
mode-urlto analyse the URLs you supply,discoveryto pull store domains from a directory firststoreUrls(required in URL mode) - Array of Shopify store URLs to analyzecategory/maxStores/maxPages- discovery mode onlyproxyConfiguration(optional) - Enable Apify proxies for large stores
📤 Output
Every URL you submit gets exactly one row — nothing is ever dropped silently.
Each row starts with a status field that tells you what happened to that URL:
status | Meaning | Billed? |
|---|---|---|
analyzed | Full intelligence below | Yes |
not_shopify | The site is genuinely not a Shopify store | No |
rate_limited | The store's product API throttled us even after retries with backoff | No |
blocked | It is a Shopify store, but its public product API is closed (password / region / app block) | No |
unreachable | DNS, TLS, timeout or server error | No |
skipped_run_timeout | The run hit its time limit before reaching this URL | No |
budget_exhausted | The run reached its maximum charge before this URL could be delivered | No |
status_reason carries the plain-language explanation. On non-analyzed rows every
analysis field is null — no placeholder numbers, no "Unknown", no invented dates.
The run also writes an OUTPUT record to the key-value store with per-URL counts and reasons, and the run fails loudly (instead of reporting a green empty result) when none of your URLs could be analysed for a reason on our side.
If you see rate_limited rows, switch Proxy Settings on and pick the RESIDENTIAL
group — retries then come from fresh IPs.
An analyzed row carries 41 intelligence fields:
{"status": "analyzed","status_reason": null,"store_domain": "gymshark.com","shop_name": "gymshark.myshopify.com","country": "US","currency": "USD","locale": "en-US","theme_name": "Gymshark/main","theme_base_name": "Dawn","theme_id": 123456789,"theme_version": "1.0.0","apps_installed": ["Judge.me", "Klaviyo", "Rebuy"],"apps_by_category": {"Reviews": ["Judge.me"],"Email Marketing": ["Klaviyo"],"Upsell": ["Rebuy"]},"apps_count": 3,"total_products": 1234,"total_variants": 5678,"collections": ["Men", "Women", "Accessories"],"collections_count": 12,"categories": ["T-Shirts", "Hoodies", "Leggings"],"price_min": 15.00,"price_avg": 45.50,"price_max": 120.00,"products_on_sale": 234,"discount_pct_avg": 15.5,"products_with_reviews": 11,"review_coverage_pct": 73.3,"avg_reviews_per_product": 123,"avg_rating": 4.5,"total_variants_available": 4500,"inventory_availability_pct": 79.3,"estimated_launch_date": "2019-03-15","oldest_product_date": "2019-03-15","newest_product_date": "2025-10-27","products_with_images": 1234,"avg_images_per_product": 4.5,"products_with_description": 1200,"top_products": [{"title": "Premium Hoodie","url": "https://gymshark.com/products/premium-hoodie","price": 55,"reviews": 1234,"rating": 4.8}],"scraped_at": "2025-10-27T15:30:00Z","scrape_duration_sec": 45}
products_with_reviews and review_coverage_pct describe the sample of up to 15 product pages,
not the full catalogue — a 953-product store with review_coverage_pct: 73.3 means 11 of the 15
sampled pages showed reviews.
Output Format
- Flat structure - Easy to import into spreadsheets, databases, n8n, Zapier
- Predictable fields - Same fields every time (uses
nullfor missing data) - No nested complexity - Ready for automation tools
- Clean arrays - Collections, categories, vendors, apps
- No modelled figures - every number is measured; nothing is extrapolated or assumed
🔧 How It Works
- Verifies Shopify store - Checks
/products.jsonendpoint - Fetches homepage HTML - Extracts base theme, merchant theme name, shop metadata
- Detects installed apps - Pattern matching on CDN scripts, HTML comments, known app signatures
- Scrapes all products - Via Shopify's
/products.jsonpagination API - Samples reviews - Up to 15 real product pages per store (Judge.me, Yotpo, Stamped, Loox, Okendo, JSON-LD)
- Fetches collections - Via
/collections.jsonendpoint - Calculates metrics - Aggregates pricing and inventory from the catalogue it actually read
- Outputs intelligence - ONE comprehensive record per store
Technology: HTTP client only (no browser needed) - fast and efficient!
💲 Pricing
Pay-per-store analyzed (pay-per-event model)
Why This Pricing?
- Traditional product scrapers provide just raw product data
- Store Intelligence provides complete analysis including products, tech stack, apps, business metrics, and insights
- One-time deep analysis (not ongoing monitoring) = Maximum value
See current pricing in the Apify Console when starting a run.
Cost scales with the number of stores analyzed. Perfect for competitor analysis and market research.
⚡ Performance
- Speed: about 5-20 seconds per store, driven by catalogue size (a 2,700-product store takes longest)
- Reliability: HTTP API-based (no browser = no blocking)
- Scalability: Analyze multiple stores in one run
- Data quality: no placeholder values, no
"N/A", no invented numbers. A field that could not be measured isnullandstatus_reasonexplains it.
How this differs from a product scraper
| Feature | Product Scrapers | Store Intelligence |
|---|---|---|
| Price | Per-product pricing | Per-store pricing |
| Output | 100+ records (per product) | 1 record (per store) |
| Data | Product details only | Products + Apps + Metrics |
| Tech Stack | ❌ Not included | ✅ Theme + Apps detected |
| Business Metrics | ❌ Not calculated | ✅ Pricing, apps, review coverage |
| Use Case | Price monitoring | Competitor research |
| Value | Low (raw data) | 5× Higher (insights) |
| Integration | Complex (many records) | Easy (one flat record) |
Need this data as a managed feed?
If you would rather receive this data on a schedule than run the Actor yourself, we can build and operate the feed: the fields you specify, the cadence you set, delivered to a dataset, S3, a webhook, or your database. Every scheduled run is checked against an agreed shape rather than assumed to be fine, missing values are reported as null instead of filled with placeholders, and repairing the collector when the source changes is covered by the monthly rate. Priced as a one-time setup fee plus a monthly rate, scoped in writing before anything is built.
Contact: support@webdatalabs.net
Leave a review
Is this actor saving you time? A quick review on the Store helps other people find it — and tells us which fields to add next. Rate this actor →
Legal Disclaimer
This actor is a general-purpose tool for analyzing publicly accessible web data. The user bears sole responsibility for ensuring their specific use complies with:
- Applicable laws (GDPR/DSGVO, copyright law)
- The target website's Terms of Service
- Apify's Terms of Service
The provider (webdatalabs) expressly disclaims liability for any unauthorized or unlawful use. By using this actor, the user agrees to indemnify the provider against any third-party claims arising from their use of the data.
This tool is not affiliated with Shopify. All trademarks belong to their respective owners.
🔍 SEO Keywords & Searchability
What this actor helps you discover:
- Shopify competitor analysis
- Shopify store analytics
- Shopify app detector
- Shopify theme detector
- E-commerce market research
- Dropshipping product research
- Shopify store scraper
- Competitor pricing intelligence
- Shopify tech stack analysis
- Store performance metrics
- Shopify base theme detector
- E-commerce business intelligence
- Shopify market intelligence
- Store catalog analyzer
- Shopify apps list detector
Industries & Niches: Fashion, Apparel, Shoes, Accessories, Beauty, Cosmetics, Health, Fitness, Sports, Electronics, Home Goods, Pet Supplies, Jewelry, Dropshipping, Print on Demand
📊 Example: Real Store Analysis
Store: Allbirds.com (Sustainable Footwear Brand)
Results:
- 717 products across 6 categories
- Wide price range with competitive average pricing
- 631 products on sale (31% average discount)
- 30 collections, including Men's/Women's shoes
- Theme: merchant copy
Allbirdsv1.51.1, base themeDawn - Review coverage: 9.9% of the sampled product pages (4.4★ average)
- 82% inventory availability
- Store launched: October 2019
Time: 58 seconds
🛠️ Technical Details
Requirements
- Valid Shopify store URL (e.g.,
https://store.comorhttps://store.myshopify.com) - Store must be publicly accessible (not password-protected)
Detection Methods
Apps Detection:
- HTML comments:
<!-- BEGIN app block: shopify://apps/... --> - CDN scripts:
cdn.shopify.com/s/files/.../[app].js - Known signatures: CSS classes, data attributes, script patterns
Theme Detection:
Shopify.themeJavaScript object- Theme name, ID, schema version
Shop Metadata:
Shopify.shop,Shopify.country,Shopify.currency,Shopify.locale
Review Sampling:
- Up to 15 real product pages per store, read directly
- Judge.me, Yotpo, Stamped, Loox, Okendo badges plus JSON-LD
aggregateRating
📚 Frequently Asked Questions
Q: Can I use this for ongoing price monitoring? A: This is designed for one-time deep analysis. For ongoing monitoring, use a product scraper scheduled daily.
Q: How many apps can it detect? A: 20+ major app categories with 40+ specific apps. Detection rate varies by store's implementation.
Q: What if a store has 10,000+ products? A: Actor scrapes ALL products. Larger stores take longer (2-5 minutes) but still output one comprehensive record.
Q: Can I integrate with n8n/Zapier/Make? A: Yes! Output is flat JSON, perfect for automation tools. One record per store = easy to map.
Q: Does it work with custom Shopify themes? A: Yes! Works with both Shopify themes and custom implementations as long as the store uses Shopify's product API.
Q: What if a store blocks scraping? A: Enable Apify proxies in settings (free with Apify subscription). HTTP API access is rarely blocked.
Q: Can I get historical data? A: No, this provides current snapshot only. For trends, run periodically and compare results.
Q: Is this legal? A: Yes. All data is publicly accessible via Shopify's standard product JSON feeds and public HTML.
🎓 Examples & Tutorials
Use Case 1: Competitor Analysis
# Analyze top 5 competitors{"storeUrls": [{ "url": "https://competitor1.com" },{ "url": "https://competitor2.com" },{ "url": "https://competitor3.com" },{ "url": "https://competitor4.com" },{ "url": "https://competitor5.com" }]}
Compare:
- Pricing strategies (average prices, discount rates)
- Tech stack adoption (which apps they use)
- Catalog sizes (product/variant counts)
- Review strategies (coverage %, ratings)
Use Case 2: Agency Prospecting
# Find stores missing key apps# 1. Run actor on target stores# 2. Filter results where apps_count < 5# 3. Reach out offering app installation services
Use Case 3: Market Research
# Analyze entire niche (e.g., sustainable fashion)# 1. Identify 20-50 stores in niche# 2. Run actor on all stores# 3. Export to Excel/Google Sheets# 4. Calculate industry benchmarks:# - Average price points# - Most common apps# - Review coverage standards# - Typical catalog sizes
🔗 Integration Examples
Google Sheets
- Run actor on Apify
- Download dataset as CSV
- Import to Google Sheets
- Use pivot tables for analysis
n8n Workflow
Trigger (Schedule/Webhook)→ Apify Actor Node (Store Intelligence)→ Filter Node (apps_count < 3)→ Email Node (Send opportunities to sales team)
Zapier Integration
- Trigger: New row in Google Sheets (competitor URLs)
- Action: Run Apify actor
- Action: Add results to Airtable
- Action: Notify Slack channel
📞 Support & Feedback
Questions or issues? Email: via Apify
Feature requests? We're actively improving detection of:
- More Shopify apps (currently 40+, expanding to 100+)
- Additional business metrics
- Historical data comparison
- Multi-currency support
🏷️ Tags
shopify ecommerce competitor-analysis market-research business-intelligence app-detector theme-detector pricing-intelligence base-theme-detector dropshipping store-analytics tech-stack shopify-scraper store-intelligence
📈 Changelog
v1.1 (2026-07-27)
- Removed
total_estimated_salesandavg_sales_per_product. Both were extrapolations built on an assumed 2% review rate applied to a top-of-catalogue sample, so they were guesses, not measurements. A Shopify storefront does not publish order volume, so no honest replacement exists. - Removed
discovery_category(it only ever echoed thecategoryyou typed into the input) andshopify_theme_directory(a third-party mirror that was empty on every URL-mode row). - Added
theme_base_name: the parent Shopify theme the storefront is built on, read from the storefront itself, in both modes. - Review coverage, average reviews per product and average rating are now collected on every run.
The
extractReviewstoggle is gone; passing it does nothing.
v1.0.0 (2025-10-27)
- Initial release
- Complete product catalog scraping
- Tech stack detection (themes + apps)
- Pricing and inventory analysis
- Review sampling on real product pages
- Top products identification
- Pay-per-event pricing model
🔗 Explore More of Our Actors
🏢 Business Intelligence
The full catalogue is at apify.com/webdatalabs.
🛒 E-commerce
| Actor | Description |
|---|---|
| Shopify Scraper Pro | Extract complete Shopify product data with variants and sales estimates |
| Etsy Scraper Pro | Fast Etsy product scraper with ratings, reviews, and shop data |
| Amazon Reviews Scraper | Extract Amazon customer reviews for sentiment analysis |
Built with ❤️ by [WebDataLabs](mailto:via Apify)
Perfect for e-commerce entrepreneurs, dropshippers, market researchers, agencies, and anyone needing competitive intelligence on Shopify stores.