ALDI Australia Scraper - Prices & Special Buys avatar

ALDI Australia Scraper - Prices & Special Buys

Pricing

from $2.50 / 1,000 products

Go to Apify Store
ALDI Australia Scraper - Prices & Special Buys

ALDI Australia Scraper - Prices & Special Buys

ALDI Australia scraper and API: every product with AUD price, unit price per kg or litre, brand and aisle, upcoming Special Buys with on-sale dates, New Low Price tags, and a price watch with price history. Search, aisles, links or the whole catalogue.

Pricing

from $2.50 / 1,000 products

Rating

0.0

(0)

Developer

Ace

Ace

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Security

Limited permissions

Share

ALDI Australia Scraper — Prices, Unit Prices & Special Buys

Get every ALDI Australia product with its AUD shelf price, comparable unit price, pack size, brand and aisle, plus the thing nobody else gives you cleanly: upcoming Special Buys with their on-sale date, days before they hit the shelves. Add a price watch and scheduled runs return only what changed.

No login, no API key, no browser. Pay only for products delivered.

What you can do

  • 🔎 Search by keyword (milk, coffee, tim tam) — several terms in one run
  • 📂 Browse aisles by name (Pantry, Dairy, Eggs & Fridge > Milk), key or aldi.com.au link — or collections like New Low Price, Super Savers, Limited Time Only
  • 🔗 Look up products by link or SKU (label data included free)
  • 🛒 Whole catalogue in one click (~3,300 products, including Special Buys general merchandise that has no aisle)
  • 🏷️ Special Buys calendar — only upcoming drops, only one date (e.g. next Wednesday), or leave Special Buys out
  • 📉 New Low Price tag on every row, so you see ALDI's own price-drop list
  • 🔔 Price watch — name a watch, schedule it, get priceDown / priceUp / new / removed rows with the previous price and the change in $ and %
  • ⚖️ Comparable price — ALDI quotes unit prices per 10 g, 100 g, 1 kg, 100 ml, 1 L and more. comparablePrice puts them on one scale ($/kg, $/L, each) so you can rank products by real value
  • 📈 Price history — every watched product keeps its past prices, lowest and highest seen, and when the price last moved
  • 🗓️ Special Buys calendar — daysUntilOnSale on each row, and the run's OUTPUT record lists every drop date with its product count per aisle
  • 🥫 Label add-on — description, ingredients, "Contains" / "May contain" allergens, storage instructions

Why this one

This Actor
Whole catalogueReads the listing in several sort orders plus every department and de-duplicates. ALDI's paging shifts between pages: one pass misses products, and aisle browsing alone misses Special Buys that have no aisle.
Special BuysspecialBuyStatus = upcoming or onSale, onSaleDate as a real date (YYYY-MM-DD), ALDI's label verbatim
Price changesBuilt-in watch: unchanged products are skipped and not charged
Value rankingcomparablePrice as a number on one scale, instead of a text unit price you have to parse and convert
Liquor and other gapsALDI publishes no size or unit price for many wines, spirits and beers. Where the name states the size unambiguously, it is filled in and marked as derived
BudgetMax products is one limit for the whole run, shared evenly across your searches and aisles, with anything unused going to the next
ImagesFull 1500 px

Input examples

Upcoming Special Buys (whole catalogue sweep):

{ "specialBuys": "upcoming", "maxResults": 0 }

Next Wednesday's drop only:

{ "onSaleDate": "2026-11-18", "maxResults": 0 }

Weekly price watch on the whole store (schedule weekly; first run is the baseline):

{ "fullCatalogue": true, "maxResults": 0, "watchName": "aldi-weekly" }

Searches and aisles, with label data:

{ "searchTerms": ["milk", "coffee"], "categories": ["Freezer"], "maxResults": 300, "includeDetails": true }

Output

One row per product. Example (trimmed):

{
"sku": "000000000000107053",
"fullName": "Kinder 1/2m Chocolate Tube 300g",
"brand": "KINDER",
"packSize": "300 g",
"price": 13.99,
"currency": "AUD",
"unitPrice": 4.66,
"unitPriceUnit": "100 g",
"unitPriceText": "$4.66 per 100 g",
"isSpecialBuy": true,
"specialBuyStatus": "onSale",
"onSaleDate": "2026-11-04",
"onSaleLabel": "While Stocks Last",
"collections": ["Christmas"],
"isNewLowPrice": false,
"category": "Pantry",
"subCategory": "Confectionery",
"categoryPath": "Pantry > Confectionery",
"ageRestricted": false,
"imageUrl": "https://dm.apac.cms.aldi.cx/is/image/aldiprodapac/product/jpg/scaleWidth/1500/…",
"productUrl": "https://www.aldi.com.au/product/kinder-1-2m-chocolate-tube-300g-000000000000107053",
"query": "catalogue",
"scrapedAt": "2026-11-04T19:00:00.000Z"
}

Every row also has comparablePrice, comparableUnit and comparableSource, plus packSizeSource and daysUntilOnSale.

Price-watch runs add changeType, previousPrice, priceChange, priceChangePercent, firstSeenAt, priceHistory, lowestPriceSeen, highestPriceSeen, lastPriceChangeAt, isLowestSeen and daysTracked. The label add-on adds description, ingredients, contains, mayContain, labelClaims, storageInstructions, usageInstructions and variantSkus.

Dataset views: Overview, Special Buys, Price watch, Label. The OUTPUT record explains every run: products per search/aisle, duplicates removed, rows filtered or unchanged, and request stats.

Good to know

  • Prices were identical across the ALDI stores we tested; the product range differs by a handful of items. Pick a store with storeId only if you need one store's range.
  • ALDI does not publish was-prices or savings. Use the price watch to see a price move, and isNewLowPrice for ALDI's own price-drop list.
  • Derived values are marked. unitPrice is always ALDI's own figure. comparableSource: "calculated" and packSizeSource: "name" mean the size came from the product name, which ALDI can leave out of date after a pack change. Names like "Baked Beans 4 Pack 220g" outside Liquor are not used, because ALDI writes them as both a total and a per-item weight.
  • comparablePrice rescales ALDI's published figure, including its rare slips (we found a 1 L shower gel listed at $699 per 100 ml). Sense-check any extreme value at the top of a ranking.
  • Price history starts with your first watch run. ALDI publishes no past prices, so isLowestSeen only becomes meaningful once a price has moved during your watch.
  • Label data is ALDI's: descriptions are on nearly every product, ingredients and allergens only where ALDI publishes them (mostly food). Missing values are left empty, never guessed.
  • Search matching is ALDI's: each word is matched on its own, so frozen pizza also returns every frozen product. Use one specific word, or an aisle.
  • A product found by two searches is saved and charged once.

Pricing

Each run has a small start fee. After that you pay per product delivered, and the label add-on is charged per product it was fetched for. Unchanged products in a price watch are free. You can cap any run with Apify's maximum cost per run.

Disclaimer

Unofficial; not affiliated with or endorsed by ALDI. Collects publicly available product information only. Use the data in line with ALDI's terms and applicable law.