Lululemon Product Scraper
Pricing
from $6.00 / 1,000 dataset items
Lululemon Product Scraper
Scrape lululemon products by keyword, category, URL or full catalog — name, current/list/sale price, size-level stock, colors, images, fabric and fit as structured JSON. Track markdowns and stock for price monitoring and resale. Pay only for the results you get.
Pricing
from $6.00 / 1,000 dataset items
Rating
0.0
(0)
Developer
axly
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Turn any lululemon keyword, category, product URL, or the entire catalog into clean, structured JSON — with size-level stock, current/list/sale prices, colors, images, fabric and fit. Runs on lululemon's own product API, so results are fast and complete. No proxy, no login, no CAPTCHA solving on your side.
Not affiliated with, endorsed by, or sponsored by lululemon athletica inc. Use responsibly and in line with applicable terms and laws.
Who it's for
- Price & markdown intelligence — track prices, "We Made Too Much" markdowns and stock across the catalog over time.
- Resellers & arbitrage — spot drops, sale %, and which sizes/colors are still available on the official store.
- E-commerce, affiliate & catalog feeds — a clean, incremental product feed (name, price, variants, images) for comparison sites and marketplaces.
- Analysts & researchers — assortment, pricing and sustainability studies.
- AI / agents — call it from an MCP-enabled assistant to pull live product data.
What you get (output fields)
| Field | Type | Description |
|---|---|---|
id, legacyId, unifiedId | string | Product identifiers. |
name | string | Product name. |
brand, gender, tier | string | Brand, gender, product tier. |
category | string | Category (e.g. "Leggings"). |
url | string | Full product page URL. |
currency | string | USD or CAD (per locale). |
price, priceMax | number | Current price range (sale price when discounted). |
listPrice, listPriceMax | number | Original list price range. |
salePrice | number | Lowest sale price (present when on sale). |
onSale | boolean | Whether any SKU is discounted. |
inStock | boolean | Whether any size is available. |
availableSizes, sizes, inseams | array | Sizes in stock, all sizes, inseams. |
skuCount | integer | Number of SKUs (size × color × inseam). |
skus | array | Per-SKU: size, inseam, color, listPrice, salePrice, isAvailable, isLowStock, fulfillmentType, isFinalSale. |
colors, colorNames, colorCount | array/int | Color options and count. |
image, images | string/array | Primary image + full image set. |
description | string | Marketing description. |
fabric, fit, fitDescription | string | Fabric, fit name and description. |
features | array | Product feature bullets. |
designedFor, activities | string/array | Intended activity/use. |
highlights, collections | array | Badges (e.g. "Best Gift") and collection. |
sustainability | string | Sustainability claim, when present. |
reviewsId | string | Bazaarvoice reviews id (for cross-referencing reviews). |
source, locale, lastmod, scrapedAt | string | Provenance and timestamps. |
Empty/irrelevant fields are omitted per row, so the output stays clean.
High-value use cases
- Daily price & markdown tracking — schedule
scrapeFullCatalogwithupdatedSinceto capture only what changed since your last run, then diff prices andonSaleto detect markdowns the moment they land. - Size-availability monitoring — watch
availableSizes/skus[].isAvailableon a set ofproductUrlsto know exactly when a size or color sells out or restocks. - Category assortment snapshots — pull an entire category (e.g. women's
leggings) with one
categoryUrlsentry to analyze breadth, pricing tiers and color counts. - Competitive & resale intelligence — compare official-store price and stock against resale marketplaces to price inventory or find arbitrage.
- Product feed for a site or app — keep a comparison site or app in sync with a nightly incremental catalog crawl.
Input parameters
| Field | Type | Default | Description |
|---|---|---|---|
searchQueries | string[] | ["align leggings"] | Keywords to search; each is fully paginated. |
categoryUrls | string[] | – | Category pages, e.g. https://shop.lululemon.com/c/women-leggings/n1udsq. |
productUrls | string[] | – | Product URLs or bare IDs (prod8780551, nydfvgl10k); always fetched with full detail. |
scrapeFullCatalog | boolean | false | Crawl the full product sitemap for the locale (~4,000 styles). |
updatedSince | string | – | Catalog only: ISO date; scrape only products modified on/after it (incremental). |
includeDetails | boolean | true | Enrich each product with full detail (SKUs, fabric, fit, images). Turn off for lighter rows. |
locale | string | en-us | en-us (USD), en-ca (CAD), fr-ca (CAD). |
sort | string | "" | new_arrivals, top_rated, price_high_to_low, price_low_to_high. |
maxItems | integer | 100 | Stop after this many products across all sources. |
filters | string | – | Advanced raw refinement string (e.g. a color filter). |
proxyConfiguration | object | off | Optional Apify proxy; not needed for normal use. |
Provide at least one of searchQueries, categoryUrls, productUrls, or set
scrapeFullCatalog=true.
Example input
{"searchQueries": ["align leggings"],"includeDetails": true,"locale": "en-us","sort": "price_low_to_high","maxItems": 50}
Example output (one row, trimmed)
{"id": "prod8780551","legacyId": "prod8780551","unifiedId": "Align-Pant-Full-Length-28","reviewsId": "Align_Pant_Full_Length_28","name": "lululemon Align™ High-Rise Pant 28\"","brand": "lululemon","gender": "Women","category": "Leggings","url": "https://shop.lululemon.com/p/womens-leggings/Align-Pant-Full-Length-28/_/prod8780551","currency": "USD","price": 98,"listPrice": 98,"onSale": false,"inStock": true,"availableSizes": ["0", "2", "4", "6", "8", "10", "12"],"colorCount": 12,"skuCount": 111,"skus": [{"id": "124926329", "size": "0", "inseam": "28\"", "color": "True Navy","listPrice": 98, "currency": "USD", "isAvailable": true, "fulfillmentType": "ship"}],"fabric": "Nulu™","fit": "Tight","designedFor": "Yoga","activities": ["Dance", "Pilates", "Yoga"],"images": ["https://images.lululemon.com/is/image/lululemon/LW5JYYS_077007_1"],"source": "search:align leggings","locale": "en-us","scrapedAt": "2026-08-29T00:00:00Z"}
Scheduling & integrations
- Schedule runs (hourly/daily) from the Apify Console to keep a price/stock
feed fresh; pair
scrapeFullCatalogwithupdatedSincefor cheap incremental syncs. - Webhooks can fire on run completion to push new data into your systems.
- Export to JSON, CSV, Excel or the API, or connect to Google Sheets, Make, Zapier, Airbyte or S3 via Apify's integrations.
- Every run also resumes from a checkpoint if interrupted — no duplicate rows.
Use it from an AI assistant (MCP)
This Actor works with the Apify MCP server, so an MCP-enabled assistant (Claude, ChatGPT, VS Code, etc.) can call it as a tool — e.g. "get lululemon align leggings prices and which sizes are in stock" — and receive the structured rows above. See Apify's MCP documentation to connect it.
FAQ
Do I need a proxy or account? No. The Actor talks to lululemon's public
product API, which it reaches directly. A proxy is optional (e.g. a Canadian IP
for en-ca).
How fresh is the data? It is fetched live on each run — prices, sale status and size availability reflect the store at run time.
How many products can it return? As many as you want via maxItems; the full
catalog is ~4,000 styles per locale. Search pages 20/request, categories 100/request.
Can I get only what changed? Yes — scrapeFullCatalog + updatedSince scrape
only products whose sitemap lastmod is on/after your date.
Does it include reviews? Not the review text — lululemon serves reviews via a
separate gated system. Each row includes reviewsId so you can cross-reference.
Which regions? United States (en-us, USD) and Canada (en-ca / fr-ca,
CAD).
Is it reliable against anti-bot? Yes — it impersonates a real browser at the TLS layer to pass Akamai, with retries and graceful per-item error handling.
Is this legal? It collects publicly available product data. You are responsible for complying with lululemon's terms and applicable laws; don't use it for anything unlawful.