Shopify Products Scraper (any store, prices, variants) avatar

Shopify Products Scraper (any store, prices, variants)

Pricing

Pay per event + usage

Go to Apify Store
Shopify Products Scraper (any store, prices, variants)

Shopify Products Scraper (any store, prices, variants)

Scrape every product from any Shopify store: title, prices, compare-at prices, variants, SKUs, stock, images, tags. Many stores per run, collection, keyword, price and updated-since filters. No login or API key.

Pricing

Pay per event + usage

Rating

0.0

(0)

Developer

j money

j money

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Shopify Products Scraper

Scrape the full product catalog of any Shopify store without a login, app install or API key. Give it store domains and get back clean JSON: title, vendor, type, tags, description, min and max price, compare-at price, on-sale flag, stock, every variant with SKU and options, images, and created / updated / published dates. Many stores per run. Filter by collection, keyword, price, stock or "updated since" and pay only for the products you keep.

Use cases

  • Competitor price and stock monitoring (schedule it daily with updatedSince)
  • Dropshipping and product research across many stores at once
  • Catalog migration or backup of your own store
  • Feed product data to an AI agent via the Apify MCP server (this Actor works as a tool call)

Input

FieldMeaningDefault
storesstore domains or URLs, e.g. allbirds.comrequired
maxProductsPerStorecap per store100
collectioncollection handle, e.g. mens-shoeswhole catalog
keywordmatch in title, vendor, type or tagsnone
updatedSinceskip products not updated since YYYY-MM-DDnone
availableOnlyonly products with a variant in stockfalse
minPrice / maxPriceprice range, store currencynone
proxyConfigurationoff by default; use RESIDENTIAL if a store throttles (some block datacenter IPs)off

Headless stores whose www site is not Shopify are handled automatically (the bare domain is tried).

Output (one row per product)

{
"store": "allbirds.com",
"id": 7012345678901,
"title": "Men's Tree Runners",
"handle": "mens-tree-runners",
"url": "https://allbirds.com/products/mens-tree-runners",
"vendor": "Allbirds",
"product_type": "Shoes",
"tags": ["mens", "runners"],
"description": "Our breathable everyday sneaker…",
"price_min": 98.0,
"price_max": 98.0,
"compare_at_price_max": null,
"on_sale": false,
"available": true,
"variant_count": 9,
"variants": [{"id": 4012345, "title": "8", "sku": "TR-M-8", "price": 98.0, "compare_at_price": null, "available": true, "option1": "8", "option2": null, "option3": null, "grams": 600, "requires_shipping": true}],
"options": [{"name": "Size", "values": ["8", "9", "10"]}],
"images": ["https://cdn.shopify.com/..."],
"created_at": "2024-03-01T10:00:00-08:00",
"updated_at": "2026-10-18T09:12:44-07:00",
"published_at": "2024-03-01T10:00:00-08:00"
}

Pricing

Pay per event. product: $0.0007 per product returned ($0.70 per 1,000), with all variants included in that one row. Products removed by your filters are never charged. Plus the standard Actor start event.

Limits

Works on stores that expose Shopify's public storefront JSON (almost all do). Password-protected stores and stores that disabled the endpoint return nothing and are skipped with a log line. Inventory quantities are not public on Shopify; you get in-stock / out-of-stock per variant.

Issues

Open an issue on the Actor page; typical response is under 6 hours.