Zara Product Scraper — Prices, Stock & Variants avatar

Zara Product Scraper — Prices, Stock & Variants

Pricing

from $4.00 / 1,000 product scrapeds

Go to Apify Store
Zara Product Scraper — Prices, Stock & Variants

Zara Product Scraper — Prices, Stock & Variants

Extract validated Zara product data from product URLs, search terms, or category pages. Get prices, sale prices, availability, images, color and size options, descriptions, and canonical URLs for fashion research and monitoring. Pay only for complete product rows.

Pricing

from $4.00 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Share

Extract structured Zara catalogue data from direct product URLs, Zara search pages, category pages, or simple product search terms. This actor is designed for fashion analysts, ecommerce teams, price-monitoring workflows, and AI agents that need a small, clean record for each public Zara product. It returns price and previous price, availability text, images, color and size options, description, product reference, canonical URL, and scrape provenance.

What this Zara scraper extracts

Every saved dataset item is validated before it is written or billed. Fields stay consistent across direct URLs and discovery runs.

FieldDescription
productId, reference, nameZara identifiers and the storefront title
price, originalPrice, currencyCurrent public price, prior price when displayed, and currency
availabilityZara's public stock or availability text; never inferred
colors, sizes, imagesAvailable product options and public image URLs
description, category, urlProduct context and canonical product URL
sourceType, searchTerm, scrapedAtDiscovery provenance and timestamp

When to use it

Use direct product URLs when monitoring a known assortment, sale prices, or availability. Direct URLs have the clearest scope and are the best choice for scheduled price tracking. Use a Zara search URL or searchTerms when discovering new products that match a concept such as linen shirt, black dress, or kids trainers. Use category URLs when a merchandising team needs a bounded slice of a localized catalogue.

This actor is not a shopping bot. It does not log in, add products to a bag, make purchases, access private customer data, or guarantee store-level inventory. Availability is the exact public text exposed by Zara at scrape time, and can differ by location or change quickly.

Input

Provide either startUrls, searchTerms, or both. Start URLs can be Zara product pages, Zara search URLs, or category URLs. Search terms build a public Zara search URL using the selected storefront. URLs keep their own storefront, so a UK product page is not rewritten when country is set to US.

{
"startUrls": [
"https://www.zara.com/us/en/search?searchTerm=linen"
],
"searchTerms": ["linen shirt"],
"country": "US",
"maxProducts": 25,
"maxScrollsPerListing": 3,
"includeVariants": true
}

maxProducts is a global hard cap, not a suggestion. The actor limits discovery, verifies the cap again immediately before a dataset write, and never intentionally charges more product events than this number. maxScrollsPerListing controls lazy-load scrolling only for search and category pages. Start with the default of three; raising it increases browser time but can discover more cards on long listings.

The default proxy configuration uses Apify Residential proxies. Zara currently uses bot protections, so a real browser and a consistent proxy session are necessary for reliable catalogue access. You may provide a compatible Apify proxy configuration, but do not paste proxy credentials into the input.

Output

The default dataset has one row per complete validated product. Diagnostics never pollute the result dataset. Instead, OUTPUT gives a compact machine-readable outcome and RUN_SUMMARY records safe counts, warning samples, errors, and the cost cap.

{
"productId": "05644401",
"reference": "5644/401/800",
"name": "LINEN BLEND SHIRT",
"description": "Relaxed fit shirt made from a linen blend.",
"price": 49.9,
"originalPrice": null,
"currency": "USD",
"availability": "In stock",
"colors": ["Ecru", "Navy blue"],
"sizes": ["S", "M", "L"],
"images": ["https://static.zara.net/photos/example.jpg"],
"category": "WOMAN / SHIRTS",
"url": "https://www.zara.com/us/en/linen-blend-shirt-p05644401.html",
"sourceType": "searchTerm",
"searchTerm": "linen shirt",
"scrapedAt": "2026-07-15T17:00:00.000Z"
}

Price and platform usage

The actor charges $0.004 per saved product. A product is billed only after its full record passes schema validation and is persisted in the default dataset. There is also Apify's small actor-start event and platform usage, including browser and proxy use. For example, 25 saved products cost at most $0.10 in product events, plus platform usage. Set maxProducts to control this upper bound before starting a run.

Reliability and limits

The actor uses a browser rather than a synthetic HTTP client because Zara is a JavaScript storefront and applies Akamai protections. It checks for challenge pages, retires the affected session, retries bounded requests, and writes a truthful terminal outcome. COMPLETE means all scheduled product records were written. PARTIAL means some usable products were saved while cards, URLs, or sessions failed. VALID_EMPTY means a valid search or listing did not expose matching products. INVALID_INPUT indicates a URL or input problem. UPSTREAM_FAILED is reserved for a target outage or global block with no useful rows.

Zara can change page markup, prices, product titles, localization, or bot defenses without notice. For that reason, use direct product URLs for production monitoring and keep the actor's result cap small while validating a new country or category. Product cards that cannot be converted into a complete record are skipped and counted in RUN_SUMMARY; the actor never invents a minimal billable row.

API and agent use

Run the actor from the Apify Console, API, scheduled task, or Apify MCP integration. The most natural agent call is a short list of product URLs with maxProducts equal to the desired record count. The output is intentionally flat and typed so it can be exported as JSON, CSV, Excel, or passed to a price-monitoring or catalogue-comparison step.

Use this actor only for public data and in accordance with Zara's terms, applicable law, and your organization’s policies. Do not use it to collect personal data, bypass account controls, or automate purchases. Prices and availability are observations, not guarantees; verify any commercial decision with Zara directly.