Woolworths Scraper - Prices, Specials, Barcodes & Nutrition avatar

Woolworths Scraper - Prices, Specials, Barcodes & Nutrition

Pricing

from $0.27 / 1,000 product (or category) rows

Go to Apify Store
Woolworths Scraper - Prices, Specials, Barcodes & Nutrition

Woolworths Scraper - Prices, Specials, Barcodes & Nutrition

Scrape Woolworths Australia by search, category, specials, stockcode or barcode: price, was price, unit price, multi-buy, stock, barcode, ingredients, nutrition, ratings. Reviews, in-store stock and store directory add-ons. Price monitor. $0.27 per 1,000 products, no start fee.

Pricing

from $0.27 / 1,000 product (or category) rows

Rating

0.0

(0)

Developer

Top Api

Top Api

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Security

Limited permissions

Share

What does Woolworths Scraper do?

Woolworths Scraper pulls product data from woolworths.com.au, the online store of Woolworths Supermarkets in Australia. Give it search terms, Woolworths links, specials groups, stockcodes or barcodes and it returns one row per product: price, was price, unit (cup) price, special and multi-buy deal, stock, barcode, category path, ingredients, allergens, nutrition and customer rating. Brands, category managers, price-comparison apps, nutrition apps and analysts use it to track Australian grocery prices week after week.

Also known as: Woolworths API, Woolies price scraper, Woolworths specials scraper, Australian grocery price scraper.

  • πŸ”Ž Every way in: keyword search, any category / aisle / specials / search / multi-buy offer link, whole departments, the full catalogue, stockcodes and exact barcodes, all in one run
  • 🏷️ Specials as data: Half Price, Lower Shelf Price, Everyday Low Price, Seasonal, Buy More Save More and Online Only groups, with was price, saving, % off and the multi-buy deal ("2 for $8.00")
  • πŸ₯« Product facts on every row: barcode, ingredients, allergens, dietary claims, Health Star Rating and nutrition per 100 g and per serve, plus ratings with the 1-5 star breakdown
  • βž• Add-ons: the product page's nutrition panel, country-of-origin label and aisle; customer reviews; in-store availability at the stores nearest a postcode; the Woolworths store directory; the category tree
  • πŸ” Price monitor: on a schedule it delivers only new products and price, special or availability changes, with the previous price
  • πŸ”“ No login, no cookies, no API key, no browser: it reads the same public pages any visitor opens
  • πŸ“€ Export to JSON, CSV, Excel or HTML, or feed Google Sheets, Make, Zapier, n8n, webhooks and AI agents through the API and MCP

What data can you get from Woolworths?

πŸ”’ Stockcode stockcodeπŸ“¦ Barcode (EAN) barcode🏷️ Name, brand, pack size
πŸ’² Price priceπŸ”™ Was price wasPriceπŸ’Έ Saving $ and % savingsPercent
βš–οΈ Unit price unitPriceTextπŸ“ Price per kg / litre / item🎯 Special type specialType
πŸ›οΈ Multi-buy multibuyText🏬 In-store price instorePriceπŸ“Š Stock status stockStatus
πŸ”» Units left stockQuantityπŸ—‚οΈ Category path categoryPath🏭 Merchandise hierarchy
πŸ₯£ Ingredients ingredients⚠️ Allergens contains / may contain🌱 Dietary claims lifestyleClaims
⭐ Health Star RatingπŸ§ͺ Nutrition per 100 g / per serve🌟 Rating + 1-5 star counts
πŸ–ΌοΈ Images imagesπŸ”— Product link urlπŸ›’ Everyday Market seller (opt-in)

How to scrape Woolworths with Woolworths Scraper

  1. Create a free Apify account (it comes with monthly free credit).
  2. Open Woolworths Scraper and go to the Input tab.
  3. Type search terms (e.g. milk), paste Woolworths links, or pick a specials group such as Half Price.
  4. Set Max products and switch on any add-on you need.
  5. Click Start and wait a few seconds: 100 products take about 7 seconds.
  6. Download the results as JSON, CSV, Excel or HTML, or read them through the API.

⬇️ Input

ParameterTypeDescription
πŸ” What to scrape
searchTermsarrayProducts to search for, e.g. ["milk", "tim tam"]. A barcode typed here is looked up as a barcode.
startUrlsarrayWoolworths search, category / aisle, specials, multi-buy offer, product or store links. Sort and specials settings in a link are kept.
specialsarrayhalfPrice, lowerShelfPrice, everydayLowPrice, seasonal, buyMoreSaveMore, bundles, onlineOnly or all.
stockcodesarrayWoolworths product numbers, e.g. 888140.
barcodesarrayExact EAN / GTIN barcodes, e.g. 9300633556150.
departmentsarrayWhole departments, e.g. dairy-eggs-fridge, pantry.
fullCatalogbooleanEvery department, duplicates removed. Default false.
categoryTreebooleanOne row per Woolworths category with its id, path and link. Default false.
storeDirectorybooleanWoolworths supermarkets with address, phone, coordinates, hours and facilities. Default false.
🎯 Filters
sortBystringrelevance (default), priceAsc, priceDesc, unitPriceAsc, unitPriceDesc, nameAsc, nameDesc.
specialsOnly, inStockOnlybooleanOnly specials / multi-buys; only available products.
includeEverydayMarketbooleanInclude third-party Everyday Market listings. Default false.
βœ‚οΈ Refine results
minPrice, maxPricenumberShelf price range in A$.
minDiscountPercentintegere.g. 40 for 40% off or more.
minRating, minHealthStarRatingnumberAverage customer rating; Health Star Rating.
brands, dietary, allergenFree, excludeCategoriesarraye.g. ["Cadbury"], ["Vegan"], ["Gluten"], ["Beer, Wine & Spirits"].
βž• Extra data
includeDetailsbooleanProduct page fields (nutrition panel, serving size, country-of-origin label and %, aisle, health warnings, all images). Add-on.
includeRatingsbooleanRating, counts and star breakdown on every row, free. Default true.
includeReviews, maxReviewsPerProduct, reviewSortCustomer reviews as their own rows; default 20 per product, newest first. Add-on.
postcodes, storeIdsarrayPostcodes (e.g. 0800) or store numbers (e.g. 1002): in-store availability at the nearest stores, or the stores for the directory.
inStoreAvailability, maxStoresPerProductOne row per product per nearby store. On automatically with postcodes or store numbers. Add-on.
πŸ” Monitoring
monitorMode, monitorOutput, monitorStoreNameDeliver only new products and changes since the previous run.
πŸ“¦ Output
maxItemsintegerMost product rows in the run (default 1,000; 0 = no limit).
maxResultsPerSourceintegerMost products per search, link, specials group or department (0 = no limit).
deduplicate, compactbooleanOne row per product per run (default on); core fields only.
βš™οΈ Advanced
proxyConfiguration, maxConcurrencyOptional own proxy; parallel sources (default 3).

Input JSON

{
"searchTerms": ["milk", "tim tam"],
"specials": ["halfPrice"],
"maxItems": 200,
"maxResultsPerSource": 50,
"includeDetails": false
}

Category links are the most precise source. Open the aisle on woolworths.com.au (for example Dairy, Eggs & Fridge > Milk) and paste https://www.woolworths.com.au/shop/browse/dairy-eggs-fridge/milk. A sort order or the "specials only" switch in the link is kept. Turn on categoryTree once to get every category link Woolworths has.

Use specials groups for the weekly catalogue

Woolworths starts a new specials week every Wednesday. Pick Half Price or all in specials and schedule the run for Wednesday morning to capture each week's deals with their was price and saving.

Barcodes are exact

A barcode returns only the product that carries exactly that barcode. A barcode Woolworths does not sell online is listed under notFound in the run summary and is not charged.

⬆️ Output

One row per product ("type": "product"). Reviews, in-store availability, stores and categories come as rows of their own type. A real row from run tt9zAkn7nM47rS6Jf (2026-10-28), shortened:

{
"stockcode": 153676,
"barcode": "9310016800701",
"name": "Magnum Mini Classic Ice Cream Sticks",
"brand": "Magnum",
"packageSize": "6 pack",
"price": 6,
"wasPrice": 12,
"savingsPercent": 50,
"specialType": "Half Price",
"promotionLabel": "Save $6.00",
"unitPriceText": "$1.67 / 100ML",
"stockStatus": "in_stock",
"stockQuantity": 35,
"allergensContains": ["Milk", "Soy"],
"healthStarRating": 1,
"rating": 4.68,
"ratingCount": 66,
"url": "https://www.woolworths.com.au/shop/productdetails/153676/magnum-mini-classic-ice-cream-sticks",
"source": "specials",
"sourceInput": "halfPrice"
}

With Product details on, the same row also carries the printed panel:

{
"nutrition": [{ "name": "Energy", "per100g": "2190.0kJ", "perServing": "401.0kJ" }, { "name": "Protein", "per100g": "4.6g", "perServing": "0.8g" }],
"servingSize": "18.3 G",
"servingsPerPack": 11,
"countryOfOriginLabel": "Made in Australia",
"aisle": "plain & sweet biscuits",
"detailStatus": "enriched"
}

An in-store availability row:

{ "type": "storeStock", "stockcode": 84628, "productName": "Arnott's Tim Tam Original Chocolate Biscuits Large Pack 365g",
"storeId": "3813", "storeName": "Melbourne Square (Southbank)", "state": "VIC", "distanceKm": 1.62, "inStoreAvailable": true, "nearPostcode": "3000" }

Fields

Measured fill on run tt9zAkn7nM47rS6Jf (100 products from "coffee", "bread" and Half Price):

FieldFillFieldFill
stockcode, name, brand, price, wasPrice, url, images100%barcode100%
unitPriceText, instorePrice, stockStatus100%categoryPath, department100%
description100%ingredients91%
allergenFreeClaims86%lifestyleClaims87%
storageInstructions83%nutritionPer100g65%
rating, ratingCount, ratingDistribution60%allergensContains56%
stockQuantity (when stock is low)49%healthStarRating35%
specialType (specials only)61%pricePerKg / pricePerLitre / pricePerItem66% / 12% / 22%

Fields are null when Woolworths does not publish the value for that product (fresh produce has no ingredients; unrated products have no rating). The dataset has views for Products, Specials & multi-buy, Ingredients & nutrition, Reviews and Stores.

Use cases

  • 🏷️ FMCG brands: track your shelf price, specials frequency and multi-buy deals against competitors, week by week
  • πŸ“Š Category managers and analysts: snapshot whole aisles or the full catalogue with unit prices and the merchandise hierarchy
  • πŸ›’ Price-comparison and cashback apps: feed live Woolworths prices and specials by barcode
  • πŸ₯— Nutrition and allergy apps: ingredients, allergens, dietary claims, Health Star Rating and the nutrition panel per barcode
  • πŸ“° Journalists and economists: measure grocery inflation and "was price" claims over time with monitor mode
  • πŸ€– AI agents: compact rows through the API or MCP answer "what does milk cost at Woolworths today"

How much does it cost to scrape Woolworths?

You pay per row delivered, with no start fee. Filtered, duplicate and unchanged (monitor) products are not charged.

WhatPrice
Product row (or category row)$0.27 per 1,000
Product details add-on$0.36 per 1,000 rows that carry it
Customer review row$0.45 per 1,000
Store row (directory or in-store availability)$0.90 per 1,000
RunRowsCost
100 products100$0.027
1,000 products1,000$0.27
1,000 products with details1,000$0.63
10,000 products10,000$2.70

Measured on the platform: 100 products in 6.5 s, 1,000 products from the Pantry department in 47 s at 512 MB.

Integrations, API, scheduling & MCP

  • Schedule the actor in Apify (daily, weekly on Wednesday for specials) with monitorMode on, so each run delivers only what changed.
  • Webhooks send each finished run to your endpoint; Make, Zapier, n8n, Google Sheets, Slack and Airbyte connect from the Integrations tab.
  • API: start runs and read datasets from any language with the Apify API, or the clients for Python and JavaScript.
  • MCP: AI agents (Claude, ChatGPT, Cursor) can call Woolworths Scraper through the Apify MCP server.

More scrapers from TopApi

All TopApi actors: apify.com/TopApi

Limits & empty runs

  • Prices are Woolworths' default online prices (store 1101, priceScope: "online"). Woolworths shows a chosen store's prices only to a signed-in shopper, and this actor never signs in; per-store availability is delivered with postcodes or store numbers.
  • Woolworths returns at most 36 tiles per page; the actor pages through every page a search or category has.
  • Directions for use, product videos, variant lists and member prices are not columns: Woolworths' public data carried none of them in 1,600+ products read on 2026-10-28.
  • Everyday Market (third-party sellers) is left out unless includeEverydayMarket is on.
  • A run that finds nothing ends with a message that says why (no results, every product filtered, nothing new in monitor mode) and charges nothing. The run summary (RUN_SUMMARY in the key-value store) lists each source, its count and any input that was not found.

❓ FAQ

How much does Woolworths Scraper cost?

$0.27 per 1,000 products, no start fee. Add-ons are charged only on the rows that carry them. A 100-product run costs about $0.03.

How many products can Woolworths Scraper return?

As many as Woolworths lists: a search returns every page of results (e.g. 696 supermarket products for "milk"), a department up to several thousand, and the full catalogue all departments. Set maxItems to bound a run.

Can I monitor Woolworths prices on a schedule?

Yes. Turn on monitorMode, give the schedule a monitorStoreName, and each run delivers only new products and price, special or availability changes, with changeType, previousPrice and priceChange. An unchanged poll delivers and charges nothing.

Does Woolworths Scraper get prices for my local store?

It returns Woolworths' online prices, which is what a visitor sees before signing in. For a store, it tells you whether each product is on the shelf there (inStoreAvailability with postcodes or storeIds).

Can I get Woolworths specials with Woolworths Scraper?

Yes. Pick specials groups (Half Price, Lower Shelf Price, Buy More Save More...) or set specialsOnly on any search or category. Each row has the was price, saving, special type and multi-buy deal.

Can I look up products by barcode?

Yes. Put EAN / GTIN barcodes in barcodes; only an exact barcode match is returned.

Can I use Woolworths Scraper with the Apify API or Python?

Yes. Start a run and read its dataset with the Apify API or the Python and JavaScript clients; see the API tab of the actor for ready-made code.

Can AI agents use Woolworths Scraper through MCP?

Yes. Add the actor to the Apify MCP server and turn on compact for smaller rows.

Do I need a Woolworths account, login or API key?

No. Woolworths Scraper reads public product pages; no account, cookies or API key are needed.

Is this an official Woolworths API?

No. It is unofficial and not affiliated with Woolworths.

Why did my Woolworths Scraper run return no results?

The status message says why: the search had no results, your filters removed every product, a barcode or stockcode does not exist online, or (in monitor mode) nothing changed. Nothing is charged for an empty run.

Your feedback

Found a bug or need a field? Open an issue in the Issues tab and we will look at it.