Coles Australia Scraper - Prices, Specials, Barcodes $1/1K
Pricing
Pay per event
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
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
- No start fee. You pay $0.001 per product and nothing else. The first 10 products of every run are free.
- Fast and light: it reads Coles' own data, not a browser. Measured on the platform: 300 half-price specials in 40 seconds.
- Filters nobody else offers: brand, dietary (Vegan, Halal...), free-from (Gluten Free...), price range, minimum discount %, in stock only.
- Sort by price or by unit price — the cheapest per litre or per kilo first.
- Per-store prices and specials with a Coles store number.
- Whole catalogue (about 30,000 products) or the whole specials page (about 7,000) in one run, split by aisle for you.
- Barcode, ingredients, allergens, nutrition on request ($0.003 per product with its full page).
- Free aisle tree: about 1,500 aisles with their paths and product counts.
How to use it in 3 steps
- Click Try for free — two searches are prefilled.
- Add search words, aisles or links, and how many products you want.
- Click Start and download JSON, CSV or Excel.
Input
| Field | What it does |
|---|---|
searchTerms | What you would type in the Coles search box, one per line. |
categories | Aisle paths or links (pantry, dairy-eggs-fridge/milk). |
urls | Any coles.com.au link: product, search, aisle, specials. |
productIds | Coles product numbers; each returns the full product page. |
specials | all, halfprice, multibuy or onlineonly. Alone, it reads the specials page. |
wholeCatalogue | Reads every main aisle (about 30,000 products). |
listCategories | Also returns the aisle tree. These rows are free. |
maxProductsPerInput | 1 to 100,000. Default 100. |
storeId | Coles store number for that store's prices (the number at the end of the store page link). |
sortBy | relevance, priceAscending, priceDescending, unitPriceAscending. |
brands, dietary, allergens | Keep only these (for example Heinz, Vegan, Gluten Free). |
minPrice, maxPrice, minDiscountPercent | Price and discount filters. |
inStockOnly, includeSponsored | Skip unavailable products or paid placements. |
includeDetails | Adds barcode, ingredients, allergens, storage, dimensions, nutrition ($0.003 per product). |
maxTotalChargeUsd | Optional 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?
| Event | Price |
|---|---|
| Product | $0.001 ($1 per 1,000) |
Product with details (includeDetails) | $0.003 ($3 per 1,000) |
| Start fee | none |
| Aisle tree rows | free |
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 ApifyClientclient = 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
includeDetailsis 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.
Related Actors
- Amazon Price & Stock Scraper - Price, Stock, Buy Box — the same watch on Amazon.
- SEEK & JobStreet Jobs Scraper - Salary, Company, AU NZ Asia — more Australian data.
- Google Trends Scraper - Interest, Regions, Queries, $2/1K — what Australians search for.