Shopify Product Scraper avatar

Shopify Product Scraper

Pricing

from $1.50 / 1,000 products

Go to Apify Store
Shopify Product Scraper

Shopify Product Scraper

Scrape every product from any Shopify store — title, price, variants, SKUs, images, tags and dates — straight from the public product feed. One row per product or per variant. No login, no browser. Perfect for price research, dropshipping and catalogue imports.

Pricing

from $1.50 / 1,000 products

Rating

0.0

(0)

Developer

Arber Lutolli

Arber Lutolli

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Scrape every product from any Shopify store — no login, no browser automation, no manual work.

Give it store addresses like allbirds.com; get back a clean row for every product: title, price range, variants, SKUs, images, tags, vendor, product type and dates. Export to CSV, Excel, JSON or pull it via the API.

Perfect for dropshippers, competitor and price research, catalogue imports, market analysis and feeding product data into your own app.

What it does

For each Shopify domain you provide, the Actor:

  1. Reads the store's public product feed (products.json) — the fixed address every Shopify store exposes, no login required.
  2. Pages through the entire catalogue (or up to your limit).
  3. Returns a clean, structured row for every product — or, if you prefer, one row per variant (SKU-level), so each size/colour has its own price and stock status.

Headless (Hydrogen/Oxygen) stores are handled automatically via their *.myshopify.com domain. It uses plain HTTPS requests through Apify Proxy — no headless browser — so runs are fast and cheap.

Input

FieldMeaning
Shopify store domains or URLsOne per line, e.g. allbirds.com.
One row per variant (SKU-level)Off = one row per product. On = one row per variant (size/colour/SKU).
Include product description textAdds a plain-text description to each row. On by default.
Max products per storeCap per store. 0 = all products.
Stores processed at onceConcurrency. 5 is a safe default.
ProxyApify Proxy. Residential gives the best hit rate.

Output (one row per product)

{
"recordType": "product",
"domain": "allbirds.com",
"productTitle": "Men's Wool Runners",
"handle": "mens-wool-runners",
"productUrl": "https://allbirds.com/products/mens-wool-runners",
"vendor": "Allbirds",
"productType": "Shoes",
"tags": ["wool", "everyday"],
"priceMin": 98.0,
"priceMax": 110.0,
"price": 98.0,
"variantCount": 24,
"available": true,
"optionNames": ["Size", "Color"],
"imageCount": 6,
"image": "https://cdn.shopify.com/...",
"descriptionText": "Our iconic everyday shoe...",
"createdAt": "2020-02-01T00:00:00-05:00",
"updatedAt": "2026-10-18T09:12:00-04:00",
"publishedAt": "2020-02-03T00:00:00-05:00"
}

In variant mode each row instead carries variantId, variantTitle, sku, price, compareAtPrice, available, option1/2/3, weightGrams and barcode.

Good to know

  • Shopify only. Non-Shopify domains return a short error row (and aren't charged). Need WooCommerce or contact/lead data too? See the Shopify & WooCommerce Store Leads Actor.
  • Pricing is pay-per-result: you're charged per product (or per variant row) returned.
  • products.json doesn't expose currency, so currency is null — prices are in the store's own currency.

Use cases

  • Competitor and price monitoring across stores.
  • Dropshipping / catalogue import into your own store or app.
  • Market and assortment research (what sells, at what price, in what categories).
  • Feed product data into a spreadsheet, database or pricing tool.

FAQ

Can I export products from a Shopify store I don't own? Yes. Every Shopify store exposes a public products.json feed, so you don't need admin access, a password or an app — just the store's web address.

How is this different from Shopify's built-in export? Shopify's built-in export only works for your own store, one store at a time, and large exports get emailed to you. This scrapes any store, many at once, and delivers CSV / Excel / JSON or a live API feed.

What fields do I get for each product? Title, handle, URL, vendor, product type, tags, price range, variant count, SKUs, availability, images and dates — or switch to one row per variant for full SKU-level detail.

Does it work on every Shopify store? Most of them. Headless (Hydrogen / Oxygen) stores are handled automatically via their *.myshopify.com domain. A small share sit behind Cloudflare challenges and may not return data.

Can I track competitor prices over time? Yes — schedule the Actor to re-run and record price and stock changes across your list of stores.