Shopify & WooCommerce Products & Price Monitor avatar

Shopify & WooCommerce Products & Price Monitor

Pricing

from $0.80 / 1,000 product saveds

Go to Apify Store
Shopify & WooCommerce Products & Price Monitor

Shopify & WooCommerce Products & Price Monitor

Scrape products, prices, variants and stock from any Shopify or WooCommerce store. Track price drops and back-in-stock changes. $0.80 per 1,000 products.

Pricing

from $0.80 / 1,000 product saveds

Rating

0.0

(0)

Developer

Liora Blyth

Liora Blyth

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Shopify & WooCommerce Products Scraper and Price Monitor

Export the full product catalog of any Shopify or WooCommerce store, including prices, compare-at and sale prices, stock status, variants, SKUs, images, tags and categories. Run it on a schedule to get only price drops, price rises, back-in-stock, out-of-stock, new and removed products.

It reads the stores' public catalog JSON (/products.json on Shopify, the WooCommerce Store API /wp-json/wc/store/v1/products). No browser, no proxies, no login, so runs are fast and cheap.

Use cases

  • Competitor price monitoring and MAP (minimum advertised price) checks
  • Product research and dropshipping or catalog analysis
  • Feeding product data into spreadsheets, BI tools or LLM pipelines
  • Back-in-stock and new-product alerts

Input

{
"storeUrls": ["https://www.allbirds.com", "colourpop.com", "https://www.yithemes.com"],
"platform": "auto",
"outputMode": "products",
"maxProductsPerStore": 0,
"includeDescription": false,
"trackChanges": true,
"onlyChanges": false,
"stateKey": "my-competitors",
"respectRobotsTxt": true,
"requestDelayMs": 500
}
  • platform: auto (tries Shopify, then WooCommerce), shopify or woocommerce
  • outputMode: products (variants nested) or variants (one row per Shopify variant)
  • trackChanges / onlyChanges + stateKey: compare against the previous run with the same key
  • respectRobotsTxt (default on): stores that disallow the catalog endpoint are skipped

Filters and collections

  • Collection / category URLs: paste https://store.com/collections/sale (Shopify) or https://store.com/product-category/shoes/ (WooCommerce) to scrape just that collection.
  • searchQuery: keep products matching all words (title, brand, type, tags, categories, description); WooCommerce uses the store's own search.
  • vendors, productTypes, minPrice, maxPrice, onlyAvailable, onlyOnSale.
  • Every product now has discountPercent (compare-at vs current price) and collection.
  • Not offered on purpose: exact stock counts (Shopify only exposes them through cart tricks, which we do not use) and "related products" (Shopify's recommendations endpoint is disallowed in its default robots.txt).

Output

{
"platform": "shopify", "store": "https://www.allbirds.com", "storeName": "Allbirds", "currency": "USD",
"productId": "7340901859408", "title": "Women's Allbirds Flip Flop - Dusty Pink",
"url": "https://www.allbirds.com/products/womens-allbirds-flip-flop-dusty-pink",
"vendor": "Allbirds", "productType": "Shoes", "tags": ["…"],
"price": 25.0, "maxPrice": 25.0, "compareAtPrice": 50.0, "onSale": true, "available": true,
"variantCount": 7, "variants": [{"variantId": 42146889039952, "title": "5", "sku": "A12513W050", "price": 25.0,
"compareAtPrice": 50.0, "available": false, "options": ["5"]}],
"imageUrl": "https://cdn.shopify.com/…", "createdAt": "…", "updatedAt": "…",
"changeType": "new", "previousPrice": null, "scrapedAt": "…"
}

changeType values: new, price_down, price_up, back_in_stock, out_of_stock, removed, unchanged (or null when tracking is off). WooCommerce items also carry sku, rating and reviewCount (aggregates only). Samples: sample_output.json, sample_output_variants.json, and sample_changes.json, a real price change caught between two runs a few minutes apart (tentree.com, 178 → 198 USD).

Pricing (pay per result)

  • $0.0008 per product item ($0.80 per 1,000). In variants mode each variant row counts as one item.
  • With onlyChanges you pay only for changed products, so daily monitoring of a 2,000-product competitor usually costs cents.

Performance (measured locally, 2026-10-21)

  • 4 stores, 3,733 products (Allbirds 692, ColourPop 1,063, tentree 1,849, YITH 129) in about 23 s
  • WooCommerce.com, 300 products: about 18 s

Limitations

  • Stores behind Cloudflare or similar bot challenges, or that disable the public endpoints, are skipped and reported. This Actor never bypasses anti-bot protection.
  • Headless or custom storefronts that removed /products.json are not supported.
  • Shopify's products.json does not expose inventory quantities, only whether each variant is available.

Only public product and price data published by the store is collected. No customer data, no reviews' text or reviewer names, nothing behind a login. robots.txt is respected by default. Use the data in line with the target store's terms and your local laws.