Woolworths NZ Product & Price Scraper avatar

Woolworths NZ Product & Price Scraper

Pricing

from $1.00 / 1,000 products

Go to Apify Store
Woolworths NZ Product & Price Scraper

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

architek.earth

Maintained by Community

Actor 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 productsClubcard prices, multi-buy deals, barcodes

🎁 What you get

FieldExample
sku282765
name / brand / varietyMeadow Fresh Milk Standard / Meadow Fresh / Standard
salePrice / originalPrice / savePrice / savePercentage4.49 / 4.99 / 0.5 / 10
isSpecial / isClubPrice / isNewtrue
promotionStartDate / promotionEndDateISO dates of the current special
cupPrice / cupMeasure / cupListPrice2.25 / 1L / 2.5
volumeSize / packageType / unit2L / Bottle / Each
tagType / multiBuy / bonusPointsMultiBuy / {...} / 50
stockLevel / availabilityStatus / isAgeRestricted3 / In Stock / false
barcode9415767001117 (GTIN)
departments[{"id": 5, "name": "Fridge & Deli"}]
imageSmall / imageBigCDN URLs
urlProduct 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):

idDepartmentidDepartment
1Fruit & Veg8Pantry
2Meat & Poultry9Beer & Wine
3Fish & Seafood10Drinks
5Fridge & Deli11Health & Body
6Bakery12Household
7Frozen13Baby & Child
14Pet

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:

RunInputProductsWall clock
SearchsearchTerms: ["milk"], cap 4040 rows7 s
Category + detailsdepartments: ["Fruit & Veg"], cap 10, includeDetails10 full-detail rows28 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.

Scrapes publicly available product listings only. No login, no personal data. Review Woolworths' terms and your local laws before commercial use.