“Woolies is cheaper.” “No, Coles is.” Everyone has a confident answer and none of them have the receipts. I wanted the receipts.
So I built a scraper that priced the same basket of 1,000 staples at both chains, every single day, for six months. The goal: stop arguing from vibes and actually watch how the two giants price against each other over time.
Roughly 2,000 price points a day — every product at both stores — landing in PostgreSQL, cleaned and modelled with dbt into a tidy daily basket. Matching products across two different catalogues was the hard part; pack sizes and naming never line up.
Once the baskets were comparable, the analysis wrote itself: plot both stores' basket cost over time, count who won each week, and break the gap down by category to find where the real differences hide. Spoiler — it's not where loyalty cards point you.
Insight one: the lines cross constantly. There is no permanently cheaper store — only a cheaper week.
“Loyalty to one chain is the most expensive habit in the trolley. The savings live in the specials, not the sign.”
Insight two: the discounts aren't spread evenly. Pantry and snacks swing hard; fresh food barely moves.
- 01Add Aldi to the comparison — the wildcard that could break the two-horse race entirely.
- 02Build a basket-builder that tells you which store is cheaper for your specific shopping list this week.
- 03Detect “fake” specials — items marked down from an inflated shelf price they never really held.