Skip to content

Coles Australia Scraper

Try for free

Scrape Coles Australia (coles.com.au): product search, categories, weekly specials and half-price deals, product pages and the store finder. Prices, was prices, unit prices, promotions, availability, images, ingredients, nutrition and barcodes. No login needed.

🛒 Coles Australia Scraper

Pull product data from Coles Australia (coles.com.au): search results, whole categories, the weekly specials catalogue, single product pages and the store finder. Each product comes with the shelf price, the was price, the unit price, the promotion text, availability, category path and images. You can add ingredients, nutrition and barcodes too. A 10-product search finishes in seconds, needs no login, and costs $0.70 per 1,000 results.

✨ Why use Coles Australia Scraper?

  • ⚡ Fast: reads the same JSON the Coles website loads, 48 products per request, no browser.
  • 🏷️ Every price field: current price, was price, saving in dollars and percent, unit price ($/kg, $/L, each), and multi-buy offers like "Pick any 2 for $9".
  • 🔥 Specials built in: scrape all specials, half price, multi-buy or online-only deals in one click.
  • 🧾 Full product details on request: ingredients, allergens, nutrition panel, GTIN barcode, country of origin, storage instructions and every pack image.
  • 📍 Store finder: nearest Coles supermarkets for any postcode, with address, phone, distance, today's hours and the Liquorland next door.
  • 🔓 No account needed: public data only, no cookies or login.

🎯 Use cases

  • 📈 Price monitoring: track Coles shelf and unit prices for your brand or category every day.
  • 🥊 Competitor analysis: compare Coles with other Australian grocers on the same products.
  • 🔥 Deal tracking: collect the weekly half-price and multi-buy catalogue the day it changes.
  • 🧪 Product research: build datasets of ingredients, allergens, nutrition and country of origin.
  • 🗺️ Retail mapping: list Coles stores near target postcodes with phone numbers and trading hours.
  • 🤖 Apps and AI agents: feed grocery prices into budgeting apps, meal planners or chatbots.

🚀 How to use

  1. Type one or more search terms (for example milk, coffee pods), or paste Coles links to search, category, on-special or product pages.
  2. Optionally choose a specials view, add category slugs, product IDs or postcodes for the store finder.
  3. Set Max results per input (default 20, 0 means everything Coles lists).
  4. Turn on Include product details if you need ingredients, nutrition and barcodes.
  5. Click Start and download the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldWhat it does
searchQueriesSearch terms, each scraped separately
startUrlsColes links: /search/products?q=…, /browse/…, /on-special…, /product/…
categoriesCategory slugs such as dairy-eggs-fridge/milk
specialsallspecials, halfprice, multibuy or onlineonly
productIdsColes product numbers, e.g. 8150288
storePostcodesPostcodes or suburbs for the store finder
maxItemsResults per input (default 20, 0 = no limit). Each search term, link, category, specials view and postcode gets its own limit, so searchQueries: ["milk"] plus specials: "allspecials" with maxItems: 10 saves up to 20 rows
sortByColes default, closest match, best seller, price low/high, lowest unit price, biggest saving
onlySpecials, onlyAvailable, minPrice, maxPriceFilters applied to each product
includeDetailsOpen each product page for ingredients, nutrition, GTIN and more
{
  "searchQueries": ["milk", "coffee pods"],
  "specials": "halfprice",
  "categories": ["pantry/coffee"],
  "maxItems": 50,
  "sortBy": "unitPriceAscending",
  "includeDetails": false
}

📤 Output

FieldDescription
id, name, brand, sizeColes product ID, name, brand and pack size
current_priceShelf price now (AUD)
price, discount_priceRegular price and the special price when discounted
was_price, save_amount, save_percentPrice before the special and the saving
promotion_label, promotion_type, on_specialOffer text (e.g. "1/2 Price"), offer type, special flag
unit_price, unit, unit_quantity, comparable_price_textComparable unit price, e.g. $1.65/ 1L
availability, is_availableWhere it is sold and whether it can be bought
category, subcategory, aisle, breadcrumbsColes category path
images, image, source_urlImage links and the product page
retail_limit, promotional_limitPurchase limits
ingredients, allergens, nutrition_per_100, gtin, country_of_originWith Include product details or product links
typeproduct or store

Store rows (type: "store") have name, address, suburb, state, postcode, phone, latitude, longitude, distance_km, today_hours, is_open, trading_hours and next_door_stores.

{
  "type": "product",
  "id": "7848420",
  "name": "Slow Cooked Pork Belly Bites In BBQ Honey",
  "brand": "Coles Made Easy",
  "size": "500g",
  "source_url": "https://www.coles.com.au/product/coles-made-easy-slow-cooked-pork-belly-bites-in-bbq-honey-500g-7848420",
  "category": "Meat & Seafood",
  "breadcrumbs": ["Meat & Seafood", "Coles Made Easy Range", "Easy Meals"],
  "price": 15,
  "discount_price": 7.5,
  "current_price": 7.5,
  "was_price": 15,
  "save_amount": 7.5,
  "save_percent": 50,
  "on_special": true,
  "promotion_type": "PERCENT_OFF",
  "promotion_label": "1/2 Price",
  "currency": "AUD",
  "unit_price": 15,
  "unit": "kg",
  "comparable_price_text": "$15.00/ 1kg",
  "availability": "InStoreAndOnline",
  "is_available": true,
  "image": "https://productimages.coles.com.au/productimages/7/7848420.jpg",
  "position": 1,
  "source_input": "specials:halfprice"
}

💰 Pricing

You pay $0.70 per 1,000 results ($0.0007 per product or store saved), plus the small platform usage of the run (compute and proxy traffic). Example: 1,000 products from a category cost about $0.70 in results plus well under one cent of usage on the default datacenter proxy. Runs that find nothing cost only the usage, and the run stops cleanly when your maximum charge is reached.

❓ FAQ

Is it legal to scrape Coles? The actor only reads public product, price and store information that anyone can see without logging in. Check the Coles terms and your local laws for how you use the data.

Do I need a Coles account or my own proxy? No. It uses Australian proxies from the platform. Datacenter is the default and the cheapest. If Coles starts blocking those exits during a run, the actor switches to residential proxies by itself.

How many results can I get? Everything Coles lets a visitor page through. Coles stops paging a single listing at about 5,000 products, so for bigger listings (like all specials) the actor walks each sub-category as well. In our test that gave about 6,900 unique specials out of the 7,958 Coles reported. When fewer results exist than you asked for, the run summary says so.

Why are some fields empty? Coles does not fill every field for every product. For example, was_price only appears on specials, and the nutrition fields only come with Include product details.

Are prices store-specific? Prices come from the national online catalogue, which matches what coles.com.au shows to a visitor who has not picked a store.

Can I schedule it or use the API? Yes. Schedule daily runs for price tracking and fetch the dataset as JSON, CSV or Excel through the API or integrations.

⚠️ Limits

  • Prices are the default online prices, not tied to a chosen store, and there is no click-and-collect slot data.
  • Customer reviews and trolley or checkout features are not covered.
  • Barcode and GTIN reverse lookup is not supported. Use product IDs or links.
  • Very large listings (over about 5,000 products) may come back slightly short of the total Coles reports, because Coles limits paging.
  • The store finder returns Coles Supermarkets (with next-door Liquorland stores), up to about 10 per postcode.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.