Coles Australia Scraper - Prices, Specials, Barcodes $1/1K avatar

Coles Australia Scraper - Prices, Specials, Barcodes $1/1K

Pricing

Pay per event

Go to Apify Store
Coles Australia Scraper - Prices, Specials, Barcodes $1/1K

Coles Australia Scraper - Prices, Specials, Barcodes $1/1K

Scrape Coles supermarket (Australia): shelf price, was-price, specials, unit price, availability, aisle. Search, aisles, specials page, links, per-store prices, barcode, ingredients, nutrition. No login. $1 per 1,000 products, no start fee.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Khandji Omar

Khandji Omar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Coles Australia Scraper — Prices, Specials, Barcodes

Scrape Coles supermarket (Australia): shelf price, was-price, specials, unit price, availability and aisle for any search, aisle, link or the whole specials page — with per-store prices and, on request, barcode (EAN), ingredients, allergens and nutrition. No login, no browser. $1 per 1,000 products, no start fee.

What does this Coles scraper do?

Type search words (milk), paste aisle paths (dairy-eggs-fridge/milk), any coles.com.au link, product numbers, or ask for the specials page. For each product it returns the price Coles shows right now, the previous price and the saving when it is on special, the unit price ($1.65 / 1L), stock, purchase limits and the aisle it sits in. Switch on includeDetails to add the barcode, ingredients, allergens and the nutrition table.

Why use it

  1. No start fee. You pay $0.001 per product and nothing else. The first 10 products of every run are free.
  2. Fast and light: it reads Coles' own data, not a browser. Measured on the platform: 300 half-price specials in 40 seconds.
  3. Filters nobody else offers: brand, dietary (Vegan, Halal...), free-from (Gluten Free...), price range, minimum discount %, in stock only.
  4. Sort by price or by unit price — the cheapest per litre or per kilo first.
  5. Per-store prices and specials with a Coles store number.
  6. Whole catalogue (about 30,000 products) or the whole specials page (about 7,000) in one run, split by aisle for you.
  7. Barcode, ingredients, allergens, nutrition on request ($0.003 per product with its full page).
  8. Free aisle tree: about 1,500 aisles with their paths and product counts.

How to use it in 3 steps

  1. Click Try for free — two searches are prefilled.
  2. Add search words, aisles or links, and how many products you want.
  3. Click Start and download JSON, CSV or Excel.

Input

FieldWhat it does
searchTermsWhat you would type in the Coles search box, one per line.
categoriesAisle paths or links (pantry, dairy-eggs-fridge/milk).
urlsAny coles.com.au link: product, search, aisle, specials.
productIdsColes product numbers; each returns the full product page.
specialsall, halfprice, multibuy or onlineonly. Alone, it reads the specials page.
wholeCatalogueReads every main aisle (about 30,000 products).
listCategoriesAlso returns the aisle tree. These rows are free.
maxProductsPerInput1 to 100,000. Default 100.
storeIdColes store number for that store's prices (the number at the end of the store page link).
sortByrelevance, priceAscending, priceDescending, unitPriceAscending.
brands, dietary, allergensKeep only these (for example Heinz, Vegan, Gluten Free).
minPrice, maxPrice, minDiscountPercentPrice and discount filters.
inStockOnly, includeSponsoredSkip unavailable products or paid placements.
includeDetailsAdds barcode, ingredients, allergens, storage, dimensions, nutrition ($0.003 per product).
maxTotalChargeUsdOptional hard cost cap for the run.
{
"specials": "halfprice",
"categories": ["pantry"],
"sortBy": "unitPriceAscending",
"maxProductsPerInput": 500
}

Output

Real example (search milk, shortened):

{
"productId": "8150288",
"name": "Full Cream Milk",
"brand": "Coles",
"size": "3L",
"url": "https://www.coles.com.au/product/coles-full-cream-milk-3l-8150288",
"imageUrl": "https://cdn.productimages.coles.com.au/productimages/8/8150288.jpg",
"price": 4.95,
"wasPrice": null,
"savingsPercent": null,
"unitPrice": 1.65,
"unitPriceText": "$1.65/ 1L",
"isOnSpecial": false,
"isAvailable": true,
"availableQuantity": 2907,
"purchaseLimit": 20,
"isSponsored": false,
"department": "Dairy, Eggs & Fridge",
"category": "Milk",
"aisle": "Full Cream Milk",
"position": 1,
"storeId": null,
"scrapedAt": "2026-10-09T01:07:09Z",
"status": "ok"
}

With includeDetails (real values for Vegemite 380g):

{
"barcode": "9352042000328",
"ingredients": "Yeast Extract (from Yeast Grown on Barley and Wheat), Salt, Mineral Salt (508), Malt Extract (from Barley), Colour (150c), Flavours, Niacin, Thiamine, Riboflavin, Folate.",
"allergens": "Contains Barley, Gluten, Wheat",
"storage": "Store in a cool, dry place.",
"dimensions": "98.00 x 79.00 x 79.00 mm",
"nutrition": {"Per Serving": {"Energy": "37 kJ", "Protein": "1.2 g"}}
}

How much does it cost?

EventPrice
Product$0.001 ($1 per 1,000)
Product with details (includeDetails)$0.003 ($3 per 1,000)
Start feenone
Aisle tree rowsfree

The first 10 products of every run are free. A search with no result or a wrong link is reported and never charged. Paid Apify plans get lower tier prices.

Use cases

  • Price monitoring — schedule a daily run on your aisles or your own products.
  • Specials tracking — every half-price and multi-buy offer, per store.
  • Grocery comparison apps — unit prices ready to compare with other supermarkets.
  • Nutrition and allergen databases — barcode, ingredients and nutrition table.
  • Brand and category analysis — share of shelf, price positioning, sponsored spots.

Use it from code (API)

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("om_kh/coles-australia-scraper").call(run_input={
"searchTerms": ["milk", "vegemite"],
"maxProductsPerInput": 100,
})
for product in client.dataset(run["defaultDatasetId"]).iterate_items():
print(product["name"], product["price"], product["unitPriceText"])
curl -X POST "https://api.apify.com/v2/acts/om_kh~coles-australia-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"specials": "halfprice", "maxProductsPerInput": 200}'

Integrations and MCP

Schedule it daily and push price changes to Google Sheets, Slack or a database with n8n, Make or Zapier. AI agents can call it through https://mcp.apify.com as om_kh/coles-australia-scraper.

Tips and limits

  • Coles shows at most 4,800 products per search or aisle. For more, use sub-aisles, filters, or wholeCatalogue, which splits the job by aisle for you.
  • Coles' bot check comes and goes. The Actor keeps the addresses Coles accepts, switches address pool when it is refused, and retries each page up to eight times. A page that still fails is reported and never charged.
  • A store is chosen by its number, not by suburb or postcode.
  • There is no search by barcode: Coles does not index barcodes. The barcode is returned on each product when includeDetails is on.
  • A brand or filter Coles does not offer for that list is reported with the list of the ones it does offer.

FAQ

Do I need a Coles account? No.

Are prices the same in every store? Not always. Leave storeId empty for Coles' default prices, or set a store number for that store.

Is it legal? It reads prices Coles publishes publicly. Use the data in line with the laws and terms that apply to you.