Shopify Website Scraper avatar

Shopify Website Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Shopify Website Scraper

Shopify Website Scraper

Scrape Shopify Store (Products + Collections + Pages + Blogs + Menu + Policies)

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Data Foundry

Data Foundry

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Security

Limited permissions

Share

Scrape any Shopify store's entire public catalogue: products with variants and prices, collections, pages, blog posts, navigation menus and store policies - from the storefront's own endpoints, with no API key and no browser.

What you getBuilt for

🛍️ Products with variants, prices, SKUs, stock state
📚 Collections, including smart collections
📄 Pages, blog posts, menus and policies
🧾 Variants as separate rows when you need them
🌍 Any Shopify storefront - no app, no token, no login
🔁 Partial-data tolerant - a denied field never kills a run

🏪 Dropshipping and assortment research
💵 Competitor pricing and catalogue audits
🧮 Marketplace and feed building
🕵️ Product launches - what a store added this week
🤖 LLM-ready JSON, one row per resource
🔗 API, schedules, integrations via Apify

What data do I get?

One dataset record per resource type, chosen with resources.

ResourceWhat you get
productsid, handle, title, body HTML, vendor, type, tags, variants (price, compare-at, SKU, availability), images, createdAt / updatedAt
collectionsid, handle, title, description, product count, sort order
pageshandle, title, body HTML, publishedAt
blogsblog handle, article title, body, author, tags, publishedAt
menunavigation links, nested, for the handles you pass
policiesrefund, privacy, terms and shipping policy bodies

How much does it cost?

Pay per event: $1.50 per 1,000 items scraped ($0.0015 each). One item is one product, variant, collection, page, post or policy.

TaskItemsCost
One store, full catalogue2,000$3.00
50 stores, products only25,000$37.50
Weekly sweep of 200 stores100,000$150.00

How do I use it?

  1. Create a free Apify account.
  2. Open Shopify Website Scraper in Apify Console.
  3. Paste one or more store URLs - https://example.com or example.com.
  4. Pick which resources you want.
  5. Set a cap if you only need a sample.
  6. Start the run and download JSON, CSV, Excel or XML.

Input

FieldTypeDescription
storeUrlsarrayStore domains or URLs. Scheme optional.
resourcesarrayAny of products, collections, pages, blogs, menu, policies.
menuHandlesarrayMenu handles for the menu resource, e.g. main-menu.
collectionHandlesarrayLimit collections to specific handles.
maxProductsPerStoreintegerCap products per store.
includeVariantsbooleanEmit one row per variant instead of nesting them.
includeDescriptionbooleanInclude the full product body HTML.
requestDelayintegerMilliseconds between requests, to be gentle.
storeTimeoutSecsintegerPer-store time budget.
concurrencyintegerStores processed in parallel.
proxyConfigurationobjectOptional, for stores that block datacenter IPs.
{
"storeUrls": ["https://www.allbirds.com", "gymshark.com"],
"resources": ["products", "collections"],
"maxProductsPerStore": 500,
"includeVariants": true
}

Output

{
"store": "https://www.allbirds.com",
"resource": "products",
"id": 7991234567890,
"handle": "mens-wool-runners",
"title": "Men's Wool Runners",
"vendor": "Allbirds",
"type": "Shoes",
"tags": ["men", "running"],
"variants": [
{"sku": "WR-M-08", "price": "98.00", "available": true, "title": "Natural Black / 8"}
],
"images": ["https://cdn.shopify.com/..."],
"updatedAt": "2026-11-05T11:02:13-05:00"
}

Notes and exceptions

  • No API key needed. The actor reads the storefront's public product endpoints and GraphQL API, the same ones the shop's own front-end calls.
  • Inventory counts are usually not exposed. Availability is included, exact quantity often is not - that is a Shopify permission, not an actor limit.
  • Password-protected stores cannot be read.
  • A store that is not on Shopify returns no products rather than failing.
  • includeVariants changes the row shape - one row per variant, with the parent product repeated.

What can I do with the data?

Catalogue research. Pull a competitor's full product list with prices and compare it to yours: what they added, what they dropped, how their price bands moved.

Feed building. Products plus variants in one JSON is a straight path to a Google Shopping or marketplace feed.

Launch monitoring. Run it weekly against 50 stores and diff updatedAt and product ids to see who is shipping.

FAQ

Do I need Shopify credentials? No. Public storefront data only.

Can it scrape checkout or customer data? No, and it never tries - only public catalogue resources.

Why are some products missing? Hidden or draft products are not public; the storefront does not expose them.

Changelog

  • 0.9 - related actors, store copy.
  • 0.8 - variants, menus and policies.
  • 0.1 - First release.