E-commerce Product Scraper — Price, Stock & GTIN, Any Store avatar

E-commerce Product Scraper — Price, Stock & GTIN, Any Store

Pricing

from $4.20 / 1,000 product scrapeds

Go to Apify Store
E-commerce Product Scraper — Price, Stock & GTIN, Any Store

E-commerce Product Scraper — Price, Stock & GTIN, Any Store

Paste product, category or store URLs from almost any online shop and get name, price, currency, stock, SKU, GTIN, brand, images, rating and variants, read from schema.org data, Open Graph and Shopify JSON. Plain HTTP, no browser. From US$4.20 per 1,000 products.

Pricing

from $4.20 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Fabrikit

Fabrikit

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Security

Limited permissions

Share

E-commerce Product Scraper extracts product data from almost any online store: name, price and currency, sale / list price, stock status, SKU, GTIN (EAN / UPC / barcode), MPN, brand, category path, images, rating, review count and the full variant list (size, colour…). Paste product pages, category or collection pages, or just a store's home page — one Actor works across Shopify, WooCommerce, BigCommerce, Salesforce Commerce Cloud and custom-built shops.

It reads the structured data stores publish for Google Shopping and search engines (schema.org JSON-LD, microdata, Open Graph product tags) and, on Shopify, the public product JSON. No browser, no CSS selectors to maintain, no AI guessing: the values come from the store's own markup. It is built on the HTTP crawling core of our Website to Markdown Scraper (fetching, robots.txt, sitemaps).

What you get for each product

FieldExample
name, brand, descriptionMen's Tree Runner - Jet Black (White Sole), Allbirds
price, maxPrice, listPrice, onSale, currency100, 100, null, false, USD
availability, inStockInStock, true
sku, gtin, mpn, productIdTR3MJBW080, 843416184854
category, breadcrumbsMen's > Fleece > Jackets
image, imagesmain picture + gallery (largest size)
rating, reviewCount4.6, 9951
variantseach with its own SKU, GTIN, price, stock flag, options and URL
store, platform, dataSourcesallbirds.com, shopify, json-ld + shopify-json

Prices are numbers, dates are ISO 8601, availability uses the schema.org names (InStock, OutOfStock, PreOrder, BackOrder…). Reviews and reviewer names are never collected.

Use cases

  • Price monitoring and MAP compliance — schedule the Actor on your competitors' or resellers' product pages and track price, sale price and stock every day.
  • Catalog and feed enrichment — fill GTIN, brand, images and descriptions for products you list, or match your SKUs to other shops by barcode.
  • Market research — collect a whole category from several stores and compare prices, ranges and ratings.
  • AI agents and RAG — give an LLM clean, structured product facts instead of raw HTML.

How it works

  1. Product page → one row. Sources are merged: JSON-LD Product / ProductGroup (with hasVariant or isVariantOf), Offer / AggregateOffer / priceSpecification, AggregateRating, BreadcrumbList; then microdata; then Open Graph product: tags. On Shopify the Actor also reads /products/<handle>.js for every variant's SKU, barcode, price, compare-at price and stock flag.
  2. Category, collection, search or home page → the Actor finds the product links (JSON-LD ItemList, microdata product cards, the product grids of common store themes, product-looking links) and follows "next page" links up to maxListingPages. Links that turn out not to be products are skipped and never charged. Shopify collections and home pages are listed through /products.json (250 products per request).
  3. Sitemaps (optional) → useSitemaps reads the store's product sitemap for a whole catalog. Home pages without product links use it automatically.

Requests are polite: robots.txt is respected by default, each store gets at most 2 requests at a time with a pause between them, and several stores are processed in parallel. When a store answers with an anti-bot page, the request is retried with other browser header profiles (Chrome, Firefox, Safari).

Input example

{
"startUrls": [
{ "url": "https://www.allbirds.com/products/mens-tree-runners" },
{ "url": "https://www.ikea.com/us/en/cat/billy-bookcases-58288/" },
{ "url": "https://scrapeme.live/shop/" }
],
"maxItems": 100,
"maxListingPages": 3,
"includeVariants": true
}

Output example

{
"url": "https://www.allbirds.com/products/mens-tree-runners",
"store": "allbirds.com",
"platform": "shopify",
"name": "Men's Tree Runner - Jet Black (White Sole)",
"brand": "Allbirds",
"price": 100,
"maxPrice": 100,
"listPrice": null,
"onSale": false,
"currency": "USD",
"availability": "InStock",
"inStock": true,
"sku": "MENS_TREE_RUNNERS",
"productId": "4870548979792",
"condition": "New",
"image": "https://cdn.shopify.com/s/files/1/1104/4168/files/TR3MJBW080_SHOE_LEFT_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?v=1751165486",
"rating": 4.6,
"reviewCount": 9951,
"productType": "Shoes",
"variantsCount": 7,
"variants": [
{
"name": "Men's Tree Runner - Jet Black (White Sole) - 8",
"sku": "TR3MJBW080",
"gtin": "843416184854",
"price": 100,
"currency": "USD",
"availability": "InStock",
"inStock": true,
"stockQuantity": 42,
"options": { "Size": "8" },
"url": "https://www.allbirds.com/products/mens-tree-runners?variant=33179624669264"
}
],
"dataSources": ["json-ld", "shopify-json"],
"inputUrl": "https://www.allbirds.com/products/mens-tree-runners",
"status": "ok",
"scrapedAt": "2026-10-21T05:31:58.114Z"
}

A start URL that gives no product gets a free row with status (blocked, not-found, no-product-data, robots-disallowed, timeout…) and an error message, so you always know why. Turn it off with saveFailedUrls: false.

Pricing

Pay per event: US$4.20 per 1,000 products (US$0.0042 per product row). Platform usage is included.

  • 100 products → US$0.42
  • 1,000 products → US$4.20
  • 10,000 products → US$42

Status rows for failed start URLs, listing pages, sitemap reads and Shopify JSON requests are free. maxItems is exact and the run stops at your maximum charge per run.

How it compares

  • apify/e-commerce-scraping-tool charges US$6.00 per 1,000 products on the free plan and also covers marketplaces and keyword search. This Actor is about 30 % cheaper for product, category and store URLs you already have, and returns variants, GTIN and stock per variant when the store publishes them.
  • For a full Shopify or WooCommerce catalog, our Shopify Store Products Scraper and WooCommerce Store Products Scraper read the store APIs in bulk for less. Use this Actor when stores are mixed or you need ratings, breadcrumbs and GTIN.

Integrations

Run it from the Apify API or a client library, on a schedule, or from n8n, Make, Zapier, Google Sheets and webhooks. AI agents can call it through the Apify MCP server and get JSON back.

FAQ

Is it legal? It reads publicly available product pages — the same structured data stores publish for search engines — and respects robots.txt by default. Check each store's terms for your use case. No personal data is collected.

Which stores work? Stores that publish schema.org Product data, microdata or Open Graph product tags in their HTML — most Shopify, WooCommerce and BigCommerce shops and many big brands do. Tested on Allbirds (Shopify), IKEA, nutribullet, the ScrapeMe (WooCommerce), BigCommerce and Web Scraper demo stores, and on LEGO and Patagonia, which only answered to some browser header profiles. Pages that render products with JavaScript only, or that sit behind strong anti-bot protection, return a free no-product-data or blocked row.

Do I need a proxy? The Apify datacenter proxy (default) is enough for most stores. Apify Residential is not offered because product pages are heavy; if a store blocks datacenter IPs you can add your own proxy URLs.

Why is a field empty? Fields are only filled when the store publishes them. Many stores omit GTIN or rating, for example.

Changelog

  • 0.1 (October 2026) — First release: JSON-LD, microdata, Open Graph and Shopify product JSON; listing pages, pagination, Shopify collections and product sitemaps; variants with GTIN and stock.

En español

E-commerce Product Scraper extrae nombre, precio, moneda, stock, SKU, GTIN/EAN, marca, imágenes, valoración y variantes de páginas de producto de casi cualquier tienda online (Shopify, WooCommerce, BigCommerce, Salesforce y tiendas propias), leyendo los datos estructurados schema.org que la tienda publica. Acepta páginas de producto, de categoría o la portada de la tienda. Cuesta US$4,20 por cada 1.000 productos; las filas de URLs que fallan son gratis.