WooCommerce Product Scraper | $0.90/1K | Shopify CSV Export
Pricing
from $0.90 / 1,000 product scrapeds
WooCommerce Product Scraper | $0.90/1K | Shopify CSV Export
Scrape any WooCommerce catalog via the public Store API. Full variant prices, reviews text, related products, discount %, product intelligence score. Export to Shopify CSV (migration) or Google Merchant feed. $0.0009 per product ($0.90 per 1,000).
Pricing
from $0.90 / 1,000 product scrapeds
Rating
0.0
(0)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
WooCommerce Product Scraper | Catalog Snapshot, Variants, Reviews, Shopify CSV & Google Merchant Export
Scrape any WooCommerce-powered store in real-time via the public Store API. Now with catalog snapshot mode (one aggregate record per store), brand auto-extraction, auto-categorization (apparel/electronics/beauty/...), new-arrival detection, popularity ranking, live FX conversion, full variant prices, review text, discount %, product intelligence score, and direct export to Shopify CSV (for store migration), Google Merchant feed (for Google Shopping), or custom CSV (you pick the columns).
WooCommerce powers ~30% of all online stores worldwide — millions of shops are reachable with this single actor.
✨ Why this is different
- ⚡ Direct JSON API — 10–100× faster than browser scraping
- 🎯 Exact structured data — no AI guessing, no hallucinations
- 📦 Full catalog pagination — up to 10,000 products per run
- 🧬 Real variant prices (when
enrichVariantsis on) - 💬 Review text + reviewer info (optional)
- 💰 Auto-computed
discountPctper product - 🏷️ Brand auto-extraction from attributes/meta
- 📂 Auto-categorization — apparel / electronics / beauty / home / food / etc
- 🆕
isNewArrivalflag for products added in last 30 days - 🔝
popularityRankwithin-store bestseller ranking - 💱 Live FX conversion (
convertToCurrency: "USD") - 🧠 Product intelligence score (0-100)
- 📊 Catalog snapshot mode — one aggregate record per store
- 🔄 WooCommerce → Shopify migration (
exportFormat: "shopify-csv") - 📢 Google Shopping feed generator (
exportFormat: "google-merchant") - 📋 Custom CSV — pick exactly which columns you want
- 🔒 Zero antibot — Store API is public by design
Works on
Any store built on WooCommerce — ~30% of all online stores:
- WordPress + WooCommerce sites of any theme (Astra, OceanWP, Kadence, Storefront, Divi)
- WooCommerce Marketplace and any third-party themes
- Subscription, multilingual (WPML), variable-product stores
Not sure if a site is WooCommerce? Try <store>/wp-json/wc/store/v1/products?per_page=1. JSON response → it works.
📦 Input
Scrape entire catalog with full variant prices
{"storeUrls": ["https://store.com"],"maxProducts": 500,"enrichVariants": true}
Migrate WooCommerce → Shopify
{"storeUrls": ["https://my-old-store.com"],"maxProducts": 0,"exportFormat": "shopify-csv-only"}
Result: every dataset row already has Shopify-CSV columns (Handle, Title, Body (HTML), Variant SKU, Variant Price, Variant Compare At Price, Image Src, SEO Title, ...). Export the dataset as CSV and import directly into Shopify.
Generate Google Shopping feed
{"storeUrls": ["https://store.com"],"exportFormat": "google-merchant-only","onlyInStock": true}
Each row contains id, title, link, image_link, availability, price, brand, condition, product_type — drop into Google Merchant Center.
Catalog snapshot — competitor monitoring at scale ⭐
{"storeUrls": ["https://competitor1.com","https://competitor2.com","https://competitor3.com"],"exportFormat": "catalog-snapshot","maxProducts": 0}
Returns one aggregate record per store with full intel:
- Total product count, price ranges, AOV estimate
- % on sale, average discount %, in-stock %
- New arrivals in last 30 days
- Top 10 brands with product counts
- Category distribution (apparel/electronics/beauty/...)
- Catalog-wide review aggregates
- Top-3 most-reviewed products
- Average product intelligence score
100 competitor stores → 100 rows. Perfect for weekly competitive dashboards.
Custom CSV — pick your columns
{"storeUrls": ["https://store.com"],"exportFormat": "custom-csv","customColumns": "productId,title,brand,price,priceUsd,inStock,popularityRank,autoCategory,isNewArrival","convertToCurrency": "USD"}
Multi-currency price normalization
{"storeUrls": ["https://uk-store.com","https://eu-store.com","https://us-store.com"],"convertToCurrency": "USD"}
Each product gets priceUsd field with live FX-converted price for fair cross-store comparison.
Scrape products with full variant + review text
{"storeUrls": ["https://store.com"],"maxProducts": 100,"flattenVariants": true,"extractReviewsText": true,"reviewsPerProduct": 10}
Filter by category and stock
{"storeUrls": ["https://store.com"],"category": "hoodies","onlyInStock": true,"maxProducts": 200}
Competitive analysis — multiple stores at once
{"storeUrls": ["https://store1.com","https://store2.com","https://store3.com"],"maxProducts": 100,"maxConcurrency": 3}
Input parameters
| Field | Type | Default | Description |
|---|---|---|---|
storeUrls | string[] | required | Store domains, product URLs, or bare domains |
maxProducts | int | 250 | Limit per store (0 = unlimited) |
perPage | int | 100 | Products per API page (WC max: 100) |
flattenVariants | bool | false | One row per variant. Auto-enables enrichVariants |
enrichVariants | bool | false | Second API call per product → full variant prices + related_ids |
extractReviewsText | bool | false | Pull review text per product |
reviewsPerProduct | int | 5 | Reviews to fetch per product |
exportFormat | string | default | default, shopify-csv, shopify-csv-only, google-merchant, google-merchant-only, custom-csv, catalog-snapshot |
customColumns | string | "" | Comma-separated columns when exportFormat: "custom-csv" |
convertToCurrency | string | "" | ISO code (USD/EUR/GBP) — adds priceXxx field with live FX conversion |
onlyInStock | bool | false | Skip out-of-stock products |
category | string | "" | Category slug filter |
extractTitle ... extractVariations | bool | true | Toggle individual fields |
maxConcurrency | int | 3 | Parallel store fetches |
timeout | int | 30 | HTTP timeout per request (seconds) |
📖 Output (default JSON format)
{"success": true,"productId": 18734006539864,"productUrl": "https://store.com/product/awesome-hoodie/","slug": "awesome-hoodie","title": "Awesome Hoodie","shortDescription": "Premium organic cotton hoodie. Made in Portugal.","description": "Our flagship hoodie, hand-crafted from 100% organic cotton...","price": "59.00","regularPrice": "79.00","salePrice": "59.00","currency": "USD","priceUsd": 59.00,"onSale": true,"discountPct": 25.3,"sku": "HOOD-001","brand": "ApiVault Apparel","autoCategory": "apparel","isNewArrival": true,"dateCreated": "2026-05-12T14:30:00","popularityRank": 3,"images": "https://store.com/img/hood-1.jpg, https://store.com/img/hood-2.jpg","mainImage": "https://store.com/img/hood-1.jpg","imagesCount": 6,"categories": "Apparel, Hoodies","categorySlugs": "apparel, hoodies","tags": "winter, organic, bestseller","attributes": "Size: [S, M, L, XL] | Color: [Black, Grey, Navy]","stockStatus": "in-stock","inStock": true,"isPurchasable": true,"lowStock": null,"averageRating": 4.7,"reviewCount": 128,"type": "variable","parentId": null,"hasOptions": true,"addToCartUrl": "https://store.com/?add-to-cart=18734","variationsCount": 12,"relatedProductIds": "18735, 18736, 18737","productIntelligenceScore": 87,"variations": [{"variant_id": 18741,"sku": "HOOD-001-S-BLK","name": "Awesome Hoodie - S, Black","price": "59.00","regular_price": "79.00","sale_price": "59.00","currency": "USD","in_stock": true,"low_stock": null,"attributes": "Size: S | Color: Black"}],"reviews": [{"reviewer": "John D.","rating": 5,"review_text": "Best hoodie I've ever owned. Super soft.","date_created": "2026-04-12T14:23:00","verified": true}]}
📊 Output (catalog-snapshot mode)
{"success": true,"snapshot_type": "catalog","store_url": "https://competitor.com","domain": "competitor.com","product_count": 487,"currency": "USD","price_min": 12.50,"price_max": 459.00,"price_median": 89.00,"aov_estimate": 133.50,"products_on_sale_pct": 32.4,"avg_discount_pct": 18.5,"in_stock_pct": 87.2,"new_arrivals_30d": 42,"new_arrivals_pct": 8.6,"brands_count": 17,"top_brands": [{"brand": "Nike", "products": 89},{"brand": "Adidas", "products": 64}],"category_distribution": [{"category": "apparel", "count": 220},{"category": "footwear", "count": 152},{"category": "accessories", "count": 89}],"avg_images_per_product": 5.3,"avg_intelligence_score": 68.4,"max_intelligence_score": 95,"premium_listings_pct": 41.2,"total_reviews": 8453,"catalog_avg_rating": 4.42,"top_3_by_reviews": [{"title": "Air Max 90", "reviewCount": 412, "averageRating": 4.7, "price": "129.99", "url": "..."}]}
🧠 Product Intelligence Score
A heuristic 0–100 indicating product listing quality. Computed for every product:
| Signal | Weight |
|---|---|
| 8+ product images | +20 |
| Description ≥ 1000 chars | +20 |
| Has variations | +10 |
| Has attributes | +10 |
| Has SKU | +10 |
| Has tags + short description | +10 |
| Rating ≥ 4.0 with 5+ reviews | +15 |
| Has rating only | +5 |
- 70+ = premium DTC brand listing
- 40–70 = decent mid-market
- < 40 = thin / generic / dropshipper-style listing
💼 Use Cases
🚀 WooCommerce → Shopify Migration
Switch platforms in minutes, not weeks. Use exportFormat: "shopify-csv-only" to get a clean Shopify Product CSV directly from any WooCommerce store. Includes Handle, Title, Body, Vendor, Type, Tags, Variant SKU, Variant Price, Variant Compare At Price, Image Src, SEO Title, SEO Description, and more — all matching Shopify's official import format.
📢 Google Shopping Feed Generation
Set exportFormat: "google-merchant-only" to produce a feed compliant with Google Merchant Center. Each row has id, title, description, link, image_link, availability, price, brand, condition, product_type. Pipe directly into your ad platform.
🏪 Dropshipping & Reseller Research
Pull entire WooCommerce-store catalogs in seconds. Filter productIntelligenceScore > 70 to find premium stores worth reselling, or < 30 to spot generic/copycat catalogs.
📊 Competitive Intelligence
Diff your catalog vs. competitor WooCommerce stores. Spot new product launches, price drops, restocks. The relatedProductIds field reveals their cross-sell strategy.
🏷️ Price Monitoring & MAP Enforcement
Track pricing on retailers hosting your products. discountPct flags MAP violations automatically.
🛠️ Catalog Migration & Backup
Export any WooCommerce store to JSON or CSV. Feed your custom store, marketplace listing, or affiliate site.
🧬 Product Research
Analyze product attribute trends across a niche. Aggregate categories, attributes, productIntelligenceScore distributions to understand market positioning.
💰 Pricing
| Volume | Cost |
|---|---|
| 1 product | $0.0009 |
| 100 products | $0.09 |
| 1,000 products | $0.90 |
| 10,000 products | $9.00 |
No subscriptions, no hidden fees. Pay only for products successfully fetched.
🔧 How It Works
WooCommerce 4.7+ stores expose /wp-json/wc/store/v1/products by default:
- Listing endpoint — paginates the catalog at
?per_page=100&page=N - Detail endpoint (when
enrichVariantson) —/products/{id}for full variant data +related_ids - Reviews endpoint (when
extractReviewsTexton) —/products/reviews?product_id={id}
All endpoints are public, official WooCommerce REST APIs. No anti-bot risk, no proxies needed.
Speed:
- Default mode: ~1 second per 100 products (10K products ≈ 60 seconds)
- With
enrichVariants: ~0.3 seconds per extra product (100 products ≈ +30 seconds) - With
extractReviewsText: ~0.3 seconds per extra product
Reliability: 100% — Store API is an official WooCommerce endpoint. Some stores disable it via security plugins; if so, you get a 404 and the actor skips cleanly.
❓ FAQ
Q: Do I need any keys, plugins or cookies? A: No. The Store API is public by default in modern WooCommerce.
Q: How is the variant pricing extracted?
A: Listing endpoint returns variation IDs only. Set enrichVariants: true (or use flattenVariants) — the actor then makes one extra call per product to /products/{id} for full variant prices, stock, and attribute values.
Q: Are variant prices in cents?
A: WooCommerce's API uses minor units. The actor auto-formats to decimal strings (e.g. 59.00, not 5900).
Q: Can I use the Shopify CSV output directly?
A: Yes. Set exportFormat: "shopify-csv-only", run, then export the dataset as CSV and import via Shopify Admin → Products → Import. Note: review images and pricing before importing into a live store.
Q: How accurate is productIntelligenceScore?
A: It's a heuristic, not a perfect signal. Use it as a filter to surface premium listings or flag thin ones. Always sanity-check on a sample.
Q: What if a store has the Store API disabled? A: You'll get 0 products and an HTTP 404 in the log. We don't fall back to scraping (would defeat the speed advantage). Consider Shopify Store Analyzer if the store turns out to be Shopify.
🔗 Related Actors
- Shopify Product Scraper — Shopify catalog extraction
- WooCommerce Store Analyzer — revenue, traffic, plugins for any WC store
- WordPress Plugin Detector — detect WP plugins on any site
- Shopify Store Analyzer — full Shopify intelligence
📞 Support
Issues, feature requests, or custom data fields? Reach out via Apify messaging or the actor's page.