Coles & Woolworths Price Scraper (No Login) avatar

Coles & Woolworths Price Scraper (No Login)

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Coles & Woolworths Price Scraper (No Login)

Coles & Woolworths Price Scraper (No Login)

Prices of Coles and Woolworths products in one run and one row format: shelf price, was price, special and promotion text, unit price per kg or litre, barcode, category, stock and link. Search by keyword, filter specials, sort by unit price. No login, no browser.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Ben

Ben

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Share

🛒 Coles & Woolworths Price Scraper (No Login)

Search Coles and Woolworths in one run and get every product back in the same row format: shelf price, was price, special and promotion text, unit price per kg, litre or each, barcode (Woolworths), category, stock flag, image and product link. No login, no cookies, no browser. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.

Price: from November 8, 2026: $0.50 per 1,000 products on the Free plan, $0.45 on Bronze, $0.425 on Silver, $0.40 from Gold up, plus $0.00005 per run start. Until then the price this Store page had before applies ($2.50 per 1,000 on Free down to $1.75 on Diamond); Apify starts a new price two weeks after it is set. Products that are skipped (sponsored placements, or not on special when you ask for specials only) are not charged. A search with no matches costs nothing beyond the start.

🔎 What is the Coles & Woolworths Price Scraper?

Australia's two big supermarkets show prices in different formats: Woolworths says "$3.73 / 1L", Coles says "$1.65/ 1L", one lists cents per 100 g, the other per kg. This Actor reads both stores' own search results and puts every product into one row shape, with the unit price converted to per kg, per litre or each, so you can sort a mixed Coles and Woolworths list by real value without cleaning anything.

What data does it extract?

  • Store and search term: Coles or Woolworths, the term you gave, and the product's position in that store's list.
  • Product: id (Woolworths stockcode, Coles product id), name, brand, size, category path, image, product link.
  • Price: current shelf price, was price (when the product is on special), savings, isOnSpecial, promotion text such as "1/2 Price", "save $1.10" or "Pick any 3 for $5.10".
  • Unit price: the store's own text (unitPriceText) plus comparablePrice and comparableUnit (kg, L or each), converted to the same base for both stores.
  • Barcode: the EAN/GTIN of Woolworths products (Coles does not show it in search results).
  • Availability: whether the product can be bought online now.

What users of other grocery scrapers report, and what this Actor does

Reported on other Coles / Woolworths ActorsHere
One Actor per store, two different output formats to mergeBoth stores in one run, one row format, store column
Unit prices you cannot compare ("per 100 g" against "per kg")comparablePrice per kg, per litre or each for both stores
Specials and half-price items hard to pull outonlySpecials keeps products on special; wasPrice, savings and promotion say why
Runs that come back empty now and thenA refused request is asked again from another address (datacenter, then Australian residential) before a search is given up; an empty search ends as a successful run with a status message
Sponsored products for other brands mixed into the resultsLeft out by default, includeSponsored keeps them flagged
Paying a large start fee per run$0.00005 per start, 256 MB default memory

⬇️ Input

FieldTypeDefaultWhat it does
searchTermsarray of strings["milk"] when the input is emptyOne search per entry in every chosen store, as in the stores' own search box
storesarray["woolworths", "coles"]Which supermarkets to search
maxProductsPerStoreinteger20Products saved per search term and store (up to 10,000)
sortstringrelevancerelevance, price_low, price_high or unit_price_low
onlySpecialsbooleanfalseSave only products on special right now
includeSponsoredbooleanfalseKeep paid placements (flagged sponsored: true)

Example input

{
"searchTerms": ["milk", "coffee beans", "nappies"],
"stores": ["woolworths", "coles"],
"maxProductsPerStore": 100,
"sort": "unit_price_low",
"onlySpecials": false
}

⬆️ Output

Real rows from a run on October 25, 2026:

[
{
"store": "Woolworths",
"searchTerm": "milk",
"position": 2,
"productId": "888137",
"name": "Woolworths Full Cream Milk 2L",
"brand": "Woolworths",
"size": "2L",
"price": 3.4,
"wasPrice": null,
"savings": null,
"isOnSpecial": false,
"promotion": null,
"unitPriceText": "$1.70 / 1L",
"comparablePrice": 1.7,
"comparableUnit": "L",
"available": true,
"barcode": "9300633556143",
"category": "Milk",
"imageUrl": "https://cdn1.woolworths.media/content/wowproductimages/large/888137.jpg",
"url": "https://www.woolworths.com.au/shop/productdetails/888137/woolworths-full-cream-milk",
"sponsored": false,
"scrapedAt": "2026-10-25T21:28:56.011821+00:00"
},
{
"store": "Coles",
"searchTerm": "milk",
"position": 2,
"productId": "4182384",
"name": "a2 Milk Light Milk 3L",
"brand": "a2 Milk",
"size": "3L",
"price": 10.5,
"wasPrice": null,
"savings": null,
"isOnSpecial": false,
"promotion": null,
"unitPriceText": "$3.50/ 1L",
"comparablePrice": 3.5,
"comparableUnit": "L",
"available": true,
"barcode": null,
"category": "Dairy, Eggs & Fridge > Milk > Skim & Low Fat Milk",
"imageUrl": "https://productimages.coles.com.au/productimages/4/4182384.jpg",
"url": "https://www.coles.com.au/product/a2-milk-light-milk-3l-4182384",
"sponsored": false,
"scrapedAt": "2026-10-25T21:29:11.265636+00:00"
}
]

A key-value record SUMMARY lists every search with its count and how many products the store reports for it.

💡 Use cases

  • 🧾 Price comparison apps and newsletters: one weekly run per basket of terms, both chains side by side, sorted by comparablePrice.
  • 🏷️ Specials tracking: onlySpecials: true on a schedule gives this week's half-price and multibuy deals of both stores.
  • 📊 Brand and category monitoring: see where your products rank in each store's search and what competitors charge per kg.
  • 🧠 Research and inflation datasets: a daily export of the same terms builds a price history you own.

🤖 For AI agents

Copy this input; nothing else is needed (no credentials):

{"searchTerms": ["olive oil"], "stores": ["woolworths", "coles"], "maxProductsPerStore": 10, "sort": "unit_price_low"}

Each row is one product of one store. Compare comparablePrice only between rows with the same comparableUnit.

⚠️ Limits, stated plainly

  • Prices are the stores' online prices for their default location; in-store prices and prices of a chosen store can differ.
  • Coles search results carry no barcode, so rows of the two stores are not matched to each other automatically; compare by name, size and unit price.
  • Coles lists a few hundred products per term at most (327 for "milk"), Woolworths up to a few thousand (2,704 for "milk", including its online marketplace). unit_price_low on Woolworths lists only products that show a unit price.
  • Woolworths' category is its online aisle name; Coles gives a three-level path.
  • Coles answers some cloud addresses with a script check instead of results. The Actor does not solve such checks; it asks again from another address, so a run can take a few seconds longer.

❓ FAQ

Do I need a Coles or Woolworths account? No. The Actor reads what any visitor sees without logging in.

How fast is it? Woolworths returns 36 products a request and Coles 48; a 100-product search per store usually takes under half a minute.

Why did I get fewer products than I asked for? The store listed fewer for that term, or onlySpecials skipped the rest. The status message names the searches that had more available.

What does comparablePrice mean? The unit price converted to dollars per kg, per litre or each, so "$3.06 per 100 g" becomes 30.6 per kg.

Are sponsored products included? Not by default. Both stores insert paid placements, often for other brands than you searched; includeSponsored: true keeps them with sponsored: true.

What happens when the run is aborted or moved to another server? Progress is saved after every page; a resurrected run continues and does not save or charge a product twice.

Can I set a spending limit? Yes. The run stops when the maximum charge you set is reached and says so in its status message.

Is it legal? The Actor collects publicly listed product and price information, no personal data. Check the stores' terms for your use and do not overload their sites; respect GDPR, the Australian Privacy Act and consumer law when you publish comparisons.

Is this affiliated with Coles or Woolworths? No. It is an independent tool; the store names describe which public sites it reads.

🔗 You might also like

Keywords: Coles scraper, Woolworths scraper, Australian grocery prices, supermarket price comparison, Coles price API, Woolworths price API, Coles specials, Woolworths specials, half price specials Australia, unit price comparison, grocery price tracker, Woolies scraper, Coles product data, Woolworths barcode, AU supermarket data, grocery price history, price monitoring Australia