Universal Shopify Product & Lead Scraper avatar

Universal Shopify Product & Lead Scraper

Pricing

from $0.50 / 1,000 products

Go to Apify Store
Universal Shopify Product & Lead Scraper

Universal Shopify Product & Lead Scraper

Lightning-fast scraper exploiting Shopify's internal JSON APIs to extract entire product catalogs in seconds. Extracts SKUs, prices, variants, and stock levels without a browser.

Pricing

from $0.50 / 1,000 products

Rating

0.0

(0)

Developer

Daniel Dimitrov

Daniel Dimitrov

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Extract thousands of products from any Shopify-powered online store in seconds. Universal Shopify Scraper bypasses standard HTML rendering entirely by tapping into Shopify's built-in /products.json API endpoint — no headless browser needed, making it one of the fastest and most cost-efficient e-commerce scrapers available.

What does Universal Shopify Scraper do?

Universal Shopify Scraper is an Apify Actor that extracts structured product data from any Shopify store. Universal Shopify Scraper can extract:

  • Product details — title, vendor, price, compare-at price, tags, and product URL
  • Variant data — individual sizes, colors, SKUs, and variant-specific pricing as flat, CSV-ready rows
  • Images — main product image URL for each product or variant
  • Multi-store support — scrape multiple Shopify stores in a single run
  • Hybrid fallback — automatically switches to HTML/JSON-LD extraction if the JSON API is disabled

Why scrape Shopify stores?

Shopify powers over 4.4 million online stores worldwide, making it the largest e-commerce platform by store count. The product data on these stores is a goldmine for business intelligence.

Here are just some of the ways you could use that data:

  • Dropshipping research — discover trending products, compare supplier pricing, and identify profitable niches
  • Competitor price monitoring — track competitor pricing changes in real-time to optimize your own pricing strategy
  • Market research — analyze product catalogs, brand positioning, and assortment strategies across any market segment
  • Inventory tracking — monitor stock levels, new product launches, and catalog changes at scale
  • Lead generation — build lists of Shopify store owners and vendors for B2B outreach

If you would like more inspiration on how scraping Shopify stores could help your business, check out our industry pages.

How to scrape Shopify stores

  1. Click on Try for free.
  2. Enter one or more Shopify store URLs in the storeUrls field (e.g., https://gymshark.com).
  3. Set maxProductsPerStore (0 = scrape entire catalog) and enable includeVariants if you need size/color-level data.
  4. Click on Run.
  5. When Universal Shopify Scraper has finished, preview or download your data from the Dataset tab.

How much will it cost to scrape Shopify stores?

Apify gives you $5 free usage credits every month on the Apify Free plan. Because this Actor uses direct JSON API calls with no browser overhead, you can extract approximately 50,000 products per month for that, so those 50,000 products will be completely free!

But if you need to get more data regularly from Shopify stores, you should grab an Apify subscription. We recommend our $49/month Personal plan — you can get up to 500,000 products every month with the $49 monthly plan!

Or get 5,000,000+ products for $499 with the Team plan — wow!

Input parameters for Shopify Scraper

ParameterTypeRequiredDefaultDescription
storeUrlsArrayBase domains of Shopify stores to scrape (e.g., https://gymshark.com)
maxProductsPerStoreInteger0Maximum products to extract per store. Set to 0 to scrape the entire catalog
includeVariantsBooleanfalseIf true, creates a separate row for every variant (size, color, SKU)
webhookUrlStringURL to receive a POST notification when the run finishes

Output from Shopify Scraper

Each scraped product is stored as a JSON record in the Actor's dataset:

{
"storeUrl": "https://gymshark.com",
"productTitle": "Crest Oversized T-Shirt",
"vendor": "Gymshark",
"price": "30.00",
"compareAtPrice": "40.00",
"sku": "GS-CREST-BLK-M",
"productUrl": "https://gymshark.com/products/crest-oversized-t-shirt",
"imageUrl": "https://cdn.shopify.com/s/files/gymshark/crest-tee-black.jpg",
"tags": ["t-shirts", "oversized", "mens", "new-arrivals"]
}
FieldTypeDescription
storeUrlStringThe originating Shopify store domain
productTitleStringThe main product name
vendorStringBrand or vendor listed on Shopify
priceStringCurrent product price
compareAtPriceStringOriginal/compare-at price (for sale items)
skuStringStock Keeping Unit (variant-specific when variants enabled)
productUrlStringDirect link to the product page
imageUrlStringMain product image URL
tagsArrayShopify categorization tags assigned to the product

Shopify Scraper webhook integration

You can automatically send scraped data to your favorite tools (Google Sheets, CRM, Slack) as soon as the Actor finishes running.

  1. Generate a webhook URL in your automation platform (Make.com, Zapier, or n8n).
  2. Paste that URL into the webhookUrl input field.
  3. When the Actor finishes, it sends a POST request with the resultsUrl so your automation can fetch the data.
{
"actorName": "universal-shopify-scraper",
"runId": "abc123def456",
"datasetId": "xyz789",
"resultsUrl": "https://api.apify.com/v2/datasets/xyz789/items?format=json&clean=true",
"status": "SUCCESS",
"timestamp": "2026-03-09T10:00:00.000Z"
}

Tips for scraping Shopify stores

  • Start with one store to verify data quality before running multi-store scrapes
  • Enable variants only when you need SKU-level data — it multiplies the row count significantly
  • Set maxProductsPerStore to a small number (e.g., 10) for testing, then set to 0 for full catalog extraction
  • Use the webhook to automate downstream workflows — pipe data directly into Google Sheets or your CRM

Note that personal data is protected by GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. We also recommend that you read our blog post: is web scraping legal?