Woolworths NZ Product & Price Scraper
Pricing
from $1.00 / 1,000 products
Woolworths NZ Product & Price Scraper
Extract products, prices, specials and Everyday Rewards club prices from Woolworths New Zealand (formerly Countdown). Search by keyword, scrape whole departments, or look up SKUs. No login, pay per result.
Pricing
from $1.00 / 1,000 products
Rating
0.0
(0)
Developer
architek.earth
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
44 minutes ago
Last modified
Categories
Share
Extract product data from Woolworths New Zealand (woolworths.co.nz, formerly Countdown) — shelf prices, specials, Everyday Rewards club prices, multi-buy deals, unit prices, stock levels and barcodes. Search by keyword, scrape whole departments, or look up specific SKUs.
Built on Woolworths' own JSON endpoints. No headless browser, so runs finish in seconds and cost a fraction of browser-based scrapers. Pairs with our Woolworths AU, Coles AU and ALDI AU scrapers for trans-Tasman price comparison.
🤖 Built for AI workflows. Every row is deterministic, schema-stable JSON — feed it straight to LLM apps, RAG pipelines, or agent tool calls via the Apify API, the Apify MCP server (mcp.apify.com), or AI coding agents like Claude Code and Cursor.
| 🏪 Retailer | 📍 Market | 💰 From | 🔑 Standout fields |
|---|---|---|---|
| Woolworths (formerly Countdown) | New Zealand 🇳🇿 | $1.00 / 1,000 products | Clubcard prices, multi-buy deals, barcodes |
🎁 What you get
| Field | Example |
|---|---|
sku | 282765 |
name / brand / variety | Meadow Fresh Milk Standard / Meadow Fresh / Standard |
salePrice / originalPrice / savePrice / savePercentage | 4.49 / 4.99 / 0.5 / 10 |
isSpecial / isClubPrice / isNew | true |
promotionStartDate / promotionEndDate | ISO dates of the current special |
cupPrice / cupMeasure / cupListPrice | 2.25 / 1L / 2.5 |
volumeSize / packageType / unit | 2L / Bottle / Each |
tagType / multiBuy / bonusPoints | MultiBuy / {...} / 50 |
stockLevel / availabilityStatus / isAgeRestricted | 3 / In Stock / false |
barcode | 9415767001117 (GTIN) |
departments | [{"id": 5, "name": "Fridge & Deli"}] |
imageSmall / imageBig | CDN URLs |
url | Product page |
With Fetch full product details on, every row is loaded from the product detail endpoint, which adds any extra fields Woolworths exposes for that product (e.g. description, ingredients, nutrition) when they are present.
💡 Use cases
- 💸 Price monitoring — track Woolworths NZ prices daily, catch specials and club-price drops.
- 🔬 Competitor benchmarking — compare against New World / PAK'nSAVE, or against Woolworths AU, Coles and ALDI on identical barcodes.
- 💸 Grocery apps & shopping lists — current prices, unit prices and stock for any product.
- 🗂️ Market research — department-wide catalogue snapshots (Fruit & Veg, Pantry, Drinks, etc.).
- Promotion analysis — multi-buy structures, bonus points and promotion windows at scale.
⚙️ Input
{"searchTerms": ["milk", "weet-bix"],"departments": ["Pantry", "8", "fruit & veg"],"skus": ["282765", "https://www.woolworths.co.nz/shop/productdetails/282765/meadow-fresh-milk-standard"],"maxItemsPerQuery": 100,"includeDetails": false}
Any of searchTerms, departments or skus can be used alone or together. Duplicates across sources are removed.
maxItemsPerQuery— cap per search term / department (0= everything).includeDetails— one extra request per product via the detail endpoint. SKU lookups always return full details.
Departments
Pass an id or a name (case-insensitive):
| id | Department | id | Department |
|---|---|---|---|
| 1 | Fruit & Veg | 8 | Pantry |
| 2 | Meat & Poultry | 9 | Beer & Wine |
| 3 | Fish & Seafood | 10 | Drinks |
| 5 | Fridge & Deli | 11 | Health & Body |
| 6 | Bakery | 12 | Household |
| 7 | Frozen | 13 | Baby & Child |
| 14 | Pet |
Names not in this list are resolved against the live site navigation; anything still unmatched is logged and skipped.
📦 Output example
{"sku": "282765","name": "Meadow Fresh Milk Standard","brand": "Meadow Fresh","variety": "Standard","barcode": "9415767001117","unit": "Each","originalPrice": 4.99,"salePrice": 4.49,"savePrice": 0.5,"savePercentage": 10,"isClubPrice": false,"isSpecial": true,"isNew": false,"promotionStartDate": "2026-10-06T00:00:00","promotionEndDate": "2026-10-12T23:59:59","cupListPrice": 2.5,"cupPrice": 2.25,"cupMeasure": "1L","packageType": "Bottle","volumeSize": "2L","stockLevel": 3,"availabilityStatus": "In Stock","isAgeRestricted": false,"tagType": null,"multiBuy": null,"bonusPoints": null,"departments": [{"id": 5, "name": "Fridge & Deli"}],"imageSmall": "https://assets.woolworths.com.au/images/2010/282765.jpg?impolicy=wowcdxwbjbx&w=200&h=200","imageBig": "https://assets.woolworths.com.au/images/2010/282765.jpg?impolicy=wowcdxwbjbx&w=900&h=900","slug": "meadow-fresh-milk-standard","url": "https://www.woolworths.co.nz/shop/productdetails/282765/meadow-fresh-milk-standard","source": "search","searchTerm": "milk"}
💸 How much does it cost?
1,000 products ≈ $1.00; with full detail $4.00 / 1,000. No browser warm-up needed — runs cost a fraction of browser-based scrapers. Platform usage is included.
💰 Pricing
Pay per result. product = one row from search or department browsing. product-detail = one row fetched from the product detail endpoint (SKU lookups and includeDetails runs). Nothing is charged for failed requests.
Performance (measured 17 Oct 2026)
Real validation runs against the live site:
| Run | Input | Products | Wall clock |
|---|---|---|---|
| Search | searchTerms: ["milk"], cap 40 | 40 rows | 7 s |
| Category + details | departments: ["Fruit & Veg"], cap 10, includeDetails | 10 full-detail rows | 28 s |
Charges were verified against delivery: every charged event corresponded to exactly one row in the dataset, nothing charged for failures. No browser, no rendering — the actor speaks to Woolworths' own JSON API, so a 1,000-product run costs cents of platform usage and finishes in well under a minute.
🌐 Proxies
Woolworths NZ is fronted by Akamai, which blocks many datacenter IPs. The default proxy configuration uses Apify residential proxies with a New Zealand exit. Leave it as is unless you have your own NZ residential proxies.
🛡️ Reliability
- Sessions are warmed up on the Woolworths homepage before any API call and rotated automatically on block.
- Browser TLS fingerprint impersonation (Chrome / Edge / Safari).
- Every result is normalised to the same schema regardless of source (search, department, SKU).
- A product that disappears from Woolworths is reported in the log as not found, not silently dropped.
🔌 Integrations & API
Run from the Apify API, schedule it, or push results to Google Sheets, webhooks, Make, Zapier, n8n. Works as an MCP tool for AI agents — inputs are plain keywords, department names and SKUs.
🤖 For AI agents & LLM apps
woolworths-nz-scraper returns Woolworths New Zealand products as deterministic, schema-stable JSON — one object per line, same fields whether the row came from search, a department or a SKU lookup — so agents and RAG pipelines can parse it without defensive code. Invoke it from any agentic workflow via the Apify API or the Apify MCP server (mcp.apify.com) as a tool call; pay-per-event billing charges per delivered row (product or product-detail) and nothing for failed requests — a run costs a known amount before it starts ($1 per 1,000 products, $4 per 1,000 full-detail rows; maxItemsPerQuery caps it). Honest limits: products that disappear from Woolworths are reported as not found rather than silently dropped, and availability signals are source-provided flags, not stock counts.
Works out of the box with LangChain, LlamaIndex and AI coding agents — call it as a tool from Claude Code, Cursor, or any MCP client via mcp.apify.com.
⚖️ Legal
Scrapes publicly available product listings only. No login, no personal data. Review Woolworths' terms and your local laws before commercial use.