ALDI Australia Grocery Category Products & Prices avatar

ALDI Australia Grocery Category Products & Prices

Pricing

from $0.91 / 1,000 item extracteds

Go to Apify Store
ALDI Australia Grocery Category Products & Prices

ALDI Australia Grocery Category Products & Prices

Export public ALDI Australia grocery category product cards with brand, pack size, displayed AUD price, unit price, and source URL for assortment snapshots. Category URLs only; no keyword search.

Pricing

from $0.91 / 1,000 item extracteds

Rating

0.0

(0)

Developer

Automation Lab

Automation Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Export public ALDI products from Australian grocery category pages into a structured price snapshot. Supply ALDI Australia category URLs and receive one row per unique product card with its name, brand, pack size, displayed price in AUD, comparison/unit price, product URL, source category and collection time. This is a category URL exporter, not keyword search, a checkout-price quote or a historical price database.

Who is it for?

  • Grocery analysts comparing the visible milk or cheese assortment with another retailer's public catalogue.
  • Budget and basket researchers who need the price and unit-price text shown on a category page.
  • Data teams scheduling repeat snapshots and comparing exports in their own database or spreadsheet.

Why use this category exporter?

The Actor accepts one or more category URLs, walks category pagination, deduplicates the same product URL across input categories and stops at maxItems. It reads public category cards directly; no account, store postcode, paid ALDI API, image download or browser session is required for the tested categories. Each row retains the originating category and timestamp so a later export can be compared outside the Actor.

What data is returned?

FieldMeaning
productIdIdentifier on the category card.
name, brandProduct name and brand; brand can be null.
packSizeDisplayed package size; can be null.
price, displayedPriceNumeric AUD price and original displayed price string.
unitPriceOriginal comparison-price text, for example ($1.70 per 1 L); can be null.
productUrl, categoryUrlPublic source URLs.
scrapedAtUTC collection timestamp.

For example, the public milk category returned Farmdale Full Cream Milk 2L with price: 3.39, displayedPrice: "$3.39", packSize: "2 L" and unitPrice: "($1.70 per 1 L)" during development. Prices can change; the example is not a current-price guarantee.

Getting started

  1. Open an ALDI Australia grocery category, such as Milk, and copy its /products/.../k/<id> URL.
  2. Add that URL under startUrls. Add more category URLs to combine their results.
  3. Choose a maxItems limit and run. Download the default dataset in JSON, CSV or Excel from Apify.
  4. Schedule runs in Apify if you need fresh snapshots, then compare datasets externally by productId or productUrl. The Actor does not compute changes or send alerts.

Input

{
"startUrls": [
{"url": "https://www.aldi.com.au/products/dairy-eggs-fridge/milk/k/1111111160"}
],
"maxItems": 10
}

startUrls is required and accepts only HTTPS URLs on aldi.com.au or www.aldi.com.au following /products/.../k/<number>. Individual product URLs, keyword search and URL query strings are rejected. maxItems defaults to 10 and must be an integer from 1 to 10,000; it limits unique records across all categories. Input order is preserved. Pagination is limited to 100 pages per category.

Output example

The default dataset contains rows like this (captured during a local milk-category run):

{
"productId": "000000000000398689",
"name": "Full Cream Milk 2L",
"brand": "FARMDALE",
"packSize": "2 L",
"price": 3.39,
"displayedPrice": "$3.39",
"unitPrice": "($1.70 per 1 L)",
"productUrl": "https://www.aldi.com.au/product/farmdale-full-cream-milk-2l-000000000000398689",
"categoryUrl": "https://www.aldi.com.au/products/dairy-eggs-fridge/milk/k/1111111160",
"scrapedAt": "2026-09-26T06:10:37.009Z"
}

This row was captured in a local run on 2026-09-26; inspect the live dataset for current prices.

How much does it cost to export ALDI Australia category products?

This Actor bills one start event per execution and one item event per output row under Apify pay-per-event pricing. The tier applicable to your account determines your price. Check the live Pricing tab before starting; runtime/proxy charges and platform pricing can change. No chargeable item is emitted for a rejected or duplicate row. At the BRONZE spend tier, the current price is $0.005 per start plus $0.001516 per delivered row: a 10-row milk export is approximately $0.02016 and a 64-row cheese export approximately $0.102024. At the GOLD, PLATINUM and DIAMOND tiers, the per-row price is $0.0009096; the same 64-row export is approximately $0.0632144 including the start. Spend tiers depend on your qualifying aggregate monthly Apify Store spend, not on the number of results in this Actor. These are billing estimates, not guaranteed invoices; check the live Pricing tab and account-specific fees. Revenue/payout estimates for the publisher can later change due to adjustments, refunds, fraud, disputes, taxes, corrections and contractual clawbacks. Promotional User payouts follow Apify's highest discount tier, not the base tier. The Actor has no separate charge for categories or page requests.

Integration recipes

For a spreadsheet, schedule a bounded category run and download the default dataset as CSV. For a data pipeline, fetch the dataset JSON with your Apify token, store each row with scrapedAt, and compare source IDs and prices from successive runs. To build a dairy basket, include both milk and cheese categories in one input. Comparisons and notifications are downstream tasks, not Actor output.

Apify API: cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~aldi-australia-grocery-products-prices/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"startUrls":[{"url":"https://www.aldi.com.au/products/dairy-eggs-fridge/milk/k/1111111160"}],"maxItems":10}'

Keep your token in an environment variable or secret store rather than committed source.

Apify API: JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/aldi-australia-grocery-products-prices').call({
startUrls: [{ url: 'https://www.aldi.com.au/products/dairy-eggs-fridge/milk/k/1111111160' }],
maxItems: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Apify API: Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/aldi-australia-grocery-products-prices').call(run_input={
'startUrls': [{'url': 'https://www.aldi.com.au/products/dairy-eggs-fridge/milk/k/1111111160'}],
'maxItems': 10,
})
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item['name'], item['price'])

MCP access

When the Actor is available in your Apify account, register its MCP tool in Claude Code:

claude mcp add --transport http apify \
'https://mcp.apify.com?tools=automation-lab/aldi-australia-grocery-products-prices'

For Claude Desktop, Cursor, or VS Code, configure the same MCP server in that client's MCP settings:

{"mcpServers":{"apify":{"url":"https://mcp.apify.com?tools=automation-lab/aldi-australia-grocery-products-prices"}}}

Example prompt: “Export up to ten products from the ALDI Australia milk category and show their displayed AUD prices and pack sizes.” Authenticate the MCP client according to Apify's instructions.

Limitations and reliability

Only publicly rendered category product cards are exported. The Actor does not visit product details, collect product stock, promotions, branch-specific pricing or past prices. Categories with no matching priced cards return no product rows. If ALDI changes its page markup, an unrecognized category response fails rather than silently reporting success. Temporary network, HTTP 429 and server failures are retried twice, then the run fails. A category may naturally contain fewer than maxItems products. Different product cards may show no brand, size or unit price.

Data handling, AI and dependencies

The Actor sends category-page requests to the public ALDI Australia website and processes product-card text in memory. It writes product rows to the run's default Apify dataset and writes request status/diagnostics to the Apify run log. It does not request customer identities, accept login credentials, persist cookies, use an AI model, call a paid third-party data API, or send input/product records to an AI provider. ALDI receives the normal HTTP request (including the request IP and headers). Apify hosts the run and its dataset/logs; storage retention and deletion follow the user's Apify account and platform settings. Delete runs and datasets in Apify when they are no longer needed. Do not place personal or secret information in category URLs. Support questions can be raised through the Actor's Apify Store issue interface after publication.

Legality and responsible use

Use publicly accessible data in accordance with applicable law and ALDI's site terms. Choose reasonable limits and schedules, avoid excessive requests, and do not republish product imagery or imply an ALDI endorsement. Verify critical pricing on the source page before making purchasing decisions.

Troubleshooting

Why was my URL rejected? Use a public category URL ending in /k/<id>, not a product URL, search URL or URL containing ?page=. The Actor controls pagination itself.

Why are there fewer records than my limit? maxItems is a ceiling, not a target. The category may have fewer priced cards or overlap another category. Open the source category to check the current visible cards.

Why did a run fail after a request? Review the run log for HTTP status and URL; retry later for a temporary source outage. A persistent unrecognized-response error means the page structure needs maintenance.

FAQ

Does it search ALDI by keyword? No. Supply category URLs only.

Does it calculate price changes? No. It supplies timestamped snapshots; compare successive datasets outside the Actor.

Can I request several categories? Yes. The dataset is deduplicated by product URL and respects one global maxItems.

For another Australian retailer's catalogue, see Woolworths Australia Grocery Products & Prices. It is a separate source; this Actor does not combine retailers or normalize cross-store baskets.