482 scrapers live47.7K runs1,562 usersRebuilt in the last 30 days: 482 of 482

Scrapers / E-commerce

Shopify Product Scraper logo

Shopify Product Scraper

hipersoft/shopify-product-scraper

Scrape the full product catalog of any Shopify store: title, vendor, type, tags, description, images, options and every variant with price, SKU and availability. Great for e-commerce and competitor research.

Total users

3

Monthly users

2

Total runs

115

Per product scraped

$0.002

Last rebuilt

Oct 26, 2026

Overview

Scrape the entire product catalog of any Shopify store from its public products.json endpoint — title, vendor, type, tags, description, images, options and every variant with price, SKU and availability. Output is clean, structured JSON, ready for spreadsheets, databases or your own tooling. No account, no API key. Built for e-commerce teams, competitor research, price monitoring and catalog syncing.

Shopify Product Scraper input — store URLs and output options in the Apify Console

Features

  • 🏬 Whole catalog, any store — pass one or many storeUrls (e.g. "allbirds.com") and page through every product automatically, 250 at a time.
  • 🎚️ Full variant detail — each product carries a variants array with price, compareAtPrice, sku, available, weight and option1/2/3.
  • 🔀 Two output shapes — keep one row per product, or set oneRowPerVariant to flatten to one row per variant for easy spreadsheet analysis.
  • 🏷️ Rich product fields — vendor, productType, tags, options, images, bodyHtml plus minPrice/maxPrice and an available flag.
  • 🔢 Cap or grab everything — maxProductsPerStore limits volume, or set 0 to pull the entire catalog.
  • 🛡️ Optional proxy — most stores need none; add a residential proxy for stores that require one.
  • 🧾 Clean JSON output — flat, predictable records ready to export to CSV, Excel, JSON or an API.

What you get

Shopify Product Scraper output example — products and variants with prices as structured JSON

One record per product (default mode), variants nested inside:

{
  "store": "www.allbirds.com",
  "productId": 4636362965059,
  "title": "Men's Wool Runners",
  "handle": "mens-wool-runners",
  "vendor": "Allbirds",
  "productType": "Shoes",
  "tags": ["wool", "runners"],
  "url": "https://www.allbirds.com/products/mens-wool-runners",
  "options": [{ "name": "Size", "values": ["9", "10", "11"] }],
  "images": ["https://cdn.shopify.com/s/files/1/img1.jpg"],
  "featuredImage": "https://cdn.shopify.com/s/files/1/img1.jpg",
  "variantsCount": 3,
  "minPrice": 98,
  "maxPrice": 98,
  "available": true,
  "variants": [
    { "id": 31234, "title": "9", "sku": "WR-M-09", "price": 98, "compareAtPrice": null, "available": true, "option1": "9", "option2": null, "option3": null }
  ]
}

Output schema

Field Type Description
store string Domain of the Shopify store.
productId integer Shopify's numeric product ID.
title string Product title.
handle string URL handle/slug of the product.
vendor string Product vendor or brand.
productType string Product type/category.
tags array Tags assigned to the product.
url string (URL) Link to the product page.
createdAt string (ISO date) When the product was created.
publishedAt string (ISO date) When the product was published.
updatedAt string (ISO date) When the product was last updated.
bodyHtml string Product description as HTML.
options array Product options (e.g. size, color) with their values.
images array Image URLs for the product.
featuredImage string (URL) Main product image URL.
variantsCount integer Number of variants for the product.
minPrice integer Lowest variant price.
maxPrice integer Highest variant price.
available boolean Whether any variant is in stock.
variants array All variants with price, compareAtPrice, SKU, availability and options.

Input

{
  "storeUrls": ["https://www.allbirds.com", "gymshark.com"],
  "maxProductsPerStore": 0,
  "oneRowPerVariant": false,
  "proxyConfiguration": { "useApifyProxy": false }
}
Field Description
storeUrls Shopify store domains or URLs; each store's full catalog is scraped.
maxProductsPerStore Max products per store (0 = entire catalog).
oneRowPerVariant Output one flattened row per variant instead of one per product.
proxyConfiguration Optional proxy; a residential proxy is recommended for stores that require one.

Use cases

  • Sync or import a competitor's full catalog into your own store or database.
  • Monitor prices, discounts (compareAtPrice) and stock across variants over time.
  • Analyze assortment, vendors and product types for market research.
  • Feed clean product data into pricing, analytics or reselling workflows.

Pricing

Pay-per-event: you're billed a small amount per run and per item scraped — you only pay for what you get. See the Pricing tab for current rates.

FAQ

Do I need a Shopify account or API key? No. Just enter the store URLs and run — no account, login or API key required.

What format is the output? Structured JSON — one row per product (or per variant with oneRowPerVariant) — exportable as JSON, CSV, Excel or via the Apify API.

Can I integrate this with other tools? The Shopify Product Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.

Notes

This scraper only reads a store's publicly available products.json catalog — no login-walled content, orders or customer data. It is an independent tool and is not affiliated with, authorized or endorsed by Shopify or any store; "Shopify" and store names belong to their respective owners.

Input

FieldTypeDescription
storeUrls required
Store URLs
arrayShopify store domains or URLs, e.g. "allbirds.com" or "https://www.allbirds.com". Each store's full catalog is scraped.
maxProductsPerStore
Max products per store
integerMaximum products to collect per store (0 = entire catalog).
Default: 0
oneRowPerVariant
One row per variant
booleanIf true, output one row per variant (flattened) instead of one row per product with a variants array.
Default: false
proxyConfiguration
Proxy
objectProxy configuration. Leave the default — it is tuned for reliable results.
Default: {"useApifyProxy": false}

API

curl -X POST "https://api.apify.com/v2/acts/hipersoft~shopify-product-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "storeUrls": [
    "https://www.allbirds.com"
  ]
}'

Pricing

EventPricePaid plans from
Product scraped
One Shopify product with title, price, variants, images and link
$0.002$0.001
Store page fetched
One Shopify store products page fetched
$0.001$0.001

You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.

Related scrapers

Carousell Scraper

Scrape Carousell search listings: title, price, condition, location, seller, photo and URL. Requires your own Carousell app token.

242 runs · 2 users · $0.003 / listing scraped

Google Flights Scraper

Scrape flight options from Google Flights by route and date: airline, flight number, departure and arrival times, duration, stops, layovers and price. One-way or round-trip, any cabin and currency. For travel and price monitoring.

216 runs · 4 users · $0.004 / flight scraped

Pinterest Scraper

Search Pinterest and scrape pins (title, description, destination link, image, pinner, board, saves), boards and users. Fast. For visual research, e-commerce, trend and marketing analysis.

151 runs · 2 users · $0.0034 / item scraped

Google Trends Scraper

Scrape Google Trends for any keyword: interest over time, related and rising queries, and interest by region. Per country and timeframe. For SEO, market and trend research. No setup.

139 runs · 6 users · $0.001 / keyword scraped

AliExpress Product Search Scraper

Search AliExpress by keyword and export one clean row per product — title, sale price, original price, image and product URL. Export to JSON, CSV or Excel.

135 runs · 3 users · $0.003 / product scraped

Google Maps Scraper

Search Google Maps and scrape places: name, category, full address, city, coordinates, rating, phone, website, Place ID and map link. Fast browser-free via Google's internal endpoint, no setup. For local lead generation and market research.

130 runs · 2 users · $0.005 / place scraped
Need a source that isn't here?

Send the site and the fields. We build it and you get it first.

Request a build