A health-food chain kept discovering expired stock only when a customer did. We built batch-level expiry tracking across five branches, with tiered markdown tasks and automatic donation pickups. Tracking at this level typically cuts expired write-offs by about 58%.
Typical results
92%
Markdowns done on time
1 hr/wk
Date checks, down from 10
21 days
Advance markdown warning
Figures reflect typical results for this kind of automation.
The challenge
Five branches, hundreds of perishable SKUs, and expiry dates living on handwritten stickers. Staff walked the shelves with clipboards when they had time, which was rarely, so items expired at full price and roughly 12% of perishable stock was written off monthly. Date checks consumed ten staff-hours a week and still missed entire shelves.
Before and after
Perishable stock written off monthly
−58%Weekly date-check hours
−90%Markdowns done on time
3.1×The automation
We built an intake flow where every inbound lot is scanned and logged with its batch number and expiry date. A daily Make scenario sweeps all five branches and fires tiered tasks: markdown labels at 21 days out, deeper cuts at 10 and 3. Anything still on the shelf near its final date joins a donation pickup list sent automatically to a food-rescue partner, and weekly write-off reports roll up to management.
How it works
- 01
Lot intake
Every inbound delivery is scanned at the door; each lot's batch number and expiry date land in the database.
- 02
Daily sweep
Each morning the engine scans stock across all five branches for lots approaching their expiry thresholds.
- 03
Tiered markdowns
At 21, 10 and 3 days out, branch staff receive markdown tasks with ready-to-print price labels.
- 04
Donation list
Whatever remains near its final date joins a pickup list sent automatically to a food-rescue partner.
- 05
Weekly rollup
Write-off and donation totals per branch roll up into a report management actually reads.
Starts from
- Inbound lot scans
- Supplier delivery notes
Delivers
- Markdown tasks per branch
- Tiered expiry alerts
- Donation pickup list
The impact
Expired write-offs fell from 12% to 5% of perishable stock — a 58% drop. On-time markdowns jumped from 30% to 92% of flagged items, weekly date checks shrank from ten hours to one, and the chain now donates instead of dumps what's left.
Questions about this automation
How do expiry dates get into the system?
Each inbound delivery is scanned at receiving. Staff scan the product barcode and enter or scan the batch number and expiry date, and supplier delivery notes can be read to pre-fill them. Every lot is stored with its branch, quantity and dates, so the system knows what sits on which shelf.
What do branch staff receive when a lot nears expiry?
A daily sweep checks every branch. At each threshold, such as 21, 10 and 3 days before expiry, the branch gets a task listing the products and shelves, the new price and a ready-to-print label. Staff mark the task done, and anything left unmarked is flagged on the next morning's list.
Can the thresholds differ by product type?
Yes. Thresholds and discount levels can be set per category, so dairy, baked goods and dry goods each follow their own schedule. Items that reach the final threshold join a donation pickup list sent to the food-rescue partner. This is a multi-step build, usually rolled out in stages, one branch at a time.
