Shopify Store Catalog Scraper avatar

Shopify Store Catalog Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Shopify Store Catalog Scraper

Shopify Store Catalog Scraper

Scrape the full public product catalog of any Shopify store. Returns product id, handle, title, URL, vendor, type, tags, images, price, sale and stock status, plus the complete variant list with SKUs. Handles headless Hydrogen storefronts automatically.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Crikit

Crikit

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

Scrape the full product catalog of any Shopify store. This Shopify scraper returns product ID, handle, title, URL, vendor, product type, tags, images, price range, compare-at price, sale and stock status, and the complete variant list with SKUs — for any store running on Shopify.

No Shopify API key, no login, and no headless browser. Results land in a structured dataset you can export to JSON, CSV, Excel, or XML, or pull straight from the Apify API.

What is Shopify Store Catalog Scraper?

Shopify Store Catalog Scraper is an Apify Actor that extracts complete public product catalogs from Shopify and returns them as clean, structured records. It handles headless Hydrogen storefronts as well as classic themes, so modern custom-built Shopify sites that defeat generic scrapers still enumerate cleanly.

What data can this Shopify scraper extract?

Every run writes one row per product. The full schema carries 32 fields; the most-used ones are below.

FieldTypeDescription
storestringHostname of the store as requested in the input, for example gymshark.com.
storeNamestringMerchant name reported by the store, for example Gymshark US. Null when the store does not publish it.
sourceDomainstringHost that actually served the catalog. Differs from Store when a headless storefront was resolved to its...
collectionstringCollection handle the product was scraped from, or null when the whole catalog was scraped.
productIdnumberShopify numeric product id. Stable across runs and the natural key for joining or deduplicating.
handlestringURL slug of the product, for example vital-seamless-leggings.
titlestringProduct title as shown on the storefront.
urlstringCanonical product page URL on the store.
vendorstringBrand or vendor assigned to the product by the merchant.
productTypestringMerchant product type, for example Shoes or Accessories.
tagsarrayMerchant tags on the product, often used for internal merchandising.
currencystringISO currency code the store prices in, read from the store rather than assumed. Null when the store does not...
priceMinnumberLowest variant price on the product.
priceMaxnumberHighest variant price on the product. Equal to Price (min) when all variants cost the same.
compareAtPricenumberHighest compare-at price across variants, which is the pre-discount price when the product is on sale.
onSalebooleanTrue when the compare-at price is above the lowest current price.
discountPercentnumberDiscount from compare-at price to the lowest current price, rounded to a whole percent. Null when not on sale.
availablebooleanTrue when at least one variant is purchasable.
fullyOutOfStockbooleanTrue when the product has variants and none of them are purchasable.
variantCountnumberTotal number of variants on the product.
availableVariantCountnumberNumber of variants currently purchasable. Use with Variants to measure size or colour stockouts.
skusarrayEvery non-empty SKU across the product's variants.

See the Output tab in Apify Console for all 32 fields.

How to scrape Shopify store catalogs

  1. Open Shopify Store Catalog Scraper and click Try for free.
  2. Add store domains or URLs to storeUrls.
  3. Optionally target a single collection instead of the whole catalog.
  4. Turn on includeVariants for SKU-level rows and includeDescription for full copy.
  5. Set maxProductsPerStore to bound each store.
  6. Click Start and watch rows appear live in the Output tab.
  7. Export the dataset as JSON, CSV, Excel, or XML — or fetch it from the Apify API once the run finishes.

Shopify Store Catalog Scraper input options

InputTypeWhat it doesDefault
storeUrlsarrayOne or more Shopify stores to scrape, one per line. Accepts a bare hostname (gymshark.com), a full URL...yes
collectionstringScrape only one collection instead of the whole catalog. Use the handle from the collection URL: for...
maxProductsPerStoreintegerCap the number of products returned for each store independently. Scraping 3 stores with a cap of 100 returns up to...100
includeVariantsbooleanInclude the full variant list on each product, with variant id, title, SKU, price, compare-at price, per-variant...true
includeDescriptionbooleanInclude the product description as plain text, converted from the store's HTML. Turn off to reduce dataset size...true

Proxy is configured through the standard proxyConfiguration object; the defaults shipped with this Actor are already tuned for the target site.

Example output

{
"storeUrls": ["https://gymshark.com", "allbirds.com"],
"maxProductsPerStore": 500,
"includeVariants": true
}

How much does it cost to scrape Shopify?

This Actor runs on pay per result pricing: $0.001 per product ($1 per 1,000). A one-time start fee of $0.00005 applies per run.

ResultsApproximate cost
1,000$1.00
10,000$10.00
100,000$100.00

You pay for rows you actually receive, so a search that returns nothing costs nothing beyond the start fee. Every Apify account includes free monthly usage credit, so you can trial Shopify Store Catalog Scraper at no cost.

What can you build with Shopify data?

Analyse a competitor's entire catalog

Every product, variant, price, and tag from a competitor's store in one run — the complete picture of how they structure and price their range.

Monitor competitor pricing and stock-outs

available and fullyOutOfStock on a schedule show you what is selling out, which is the clearest public signal of what is working for them.

Build a dropshipping or affiliate product feed

SKUs, images, prices, and descriptions arrive in a shape that maps directly onto a product feed.

Research a niche across many brands

Run a list of stores in one vertical to see how the whole category prices, tags, and merchandises.

Audit your own store's public data

Confirm exactly what your storefront exposes publicly, including variants you may have thought were hidden.

Shopify scraping tips and limits

  • Any store on Shopify works — you do not need permission or an API key, because this reads the public storefront that Shopify serves to every visitor.
  • includeVariants multiplies row count by the number of variants per product. Leave it off for a catalog census and turn it on when you need SKU detail.
  • compareAtPrice against priceMin is how you detect genuine discounting rather than permanent fake sale pricing.
  • Collections are the efficient way to scrape one category from a very large store.

Integrations and automation

Run Shopify Store Catalog Scraper on a schedule to keep a Shopify dataset fresh, or trigger it from your own stack through the Apify API and the official JavaScript and Python clients. Native integrations push results into Google Sheets, Slack, Airtable, Zapier, Make, GitHub, or any webhook endpoint. The Actor also works as an MCP tool, so an AI agent can call it directly.

ActorWhat it does
Etsy Scraper - Listings, Shops & Search ResultsEtsy shops and listings for handmade and vintage.
Amazon Product ScraperAmazon catalog with offers and reviews.
eBay Product & Sold ScrapereBay sold-price history for resale benchmarking.
Google Shopping ScraperWhere these products rank in Google Shopping.

Frequently asked questions

How do I know if a site runs on Shopify?

Most Shopify stores expose a /products.json endpoint and Shopify-specific markup. If this Actor returns products for the domain, it is on Shopify.

Can I scrape a Hydrogen or headless Shopify store?

Yes. Headless Hydrogen storefronts are handled explicitly, which is where generic catalog scrapers usually fail.

Do I need a Shopify API key?

No. Shopify Store Catalog Scraper reads publicly available Shopify pages and endpoints directly, so there is no key to obtain, no OAuth app to register, and no account to connect.

Can I export Shopify data to CSV, Excel, or Google Sheets?

Yes. Every run stores results in an Apify dataset that exports to JSON, JSONL, CSV, Excel, XML, or HTML with one click, and the Google Sheets integration writes rows straight into a spreadsheet.

Can I run Shopify Store Catalog Scraper on a schedule?

Yes. Apify schedules run the Actor hourly, daily, weekly, or on any cron expression, and webhooks can notify your systems the moment a run finishes.

Scraping publicly available data is broadly lawful in the US and EU, but the answer depends on what you collect and how you use it. This Actor is built to gather public product catalog information a Shopify store publishes publicly on its own storefront. Personal data carries extra obligations under GDPR and CCPA. Read Apify's guide on whether web scraping is legal and take your own legal advice for your use case.

Support and feedback

Found a bug, a missing field, or a Shopify page shape this Actor does not handle yet? Open an issue from the Issues tab on the Actor page. Feature requests and custom-scraper enquiries are welcome there too.