Every specialty café we work with can quote its rent and its wages bill to the dollar. Ask about pour cost or milk stretch and the answer gets vague. That's a shame, because those two numbers decide whether the shop pays its owner at the end of the month.
Pour cost, defined
Pour cost is the direct cost of the liquid in the cup, expressed as a percentage of the net sale (GST-exclusive). The classic specialty-café target is 25–30% pour cost on milk drinks, and closer to 18–22% on batch brew and single-origin filter.
Here's a worked flat white on a $6.00 menu price:
| Component | Amount | Cost |
|---|---|---|
| Espresso (double, 19 g dose) | 19 g | $0.83 |
| Full-cream barista milk | 160 ml | $0.24 |
| 8 oz cup + lid | 1 | $0.26 |
| Card fees (Square 1.9%) | on $6.00 | $0.11 |
| Waste allowance (milk + shot) | 6% | $0.18 |
| Total pour cost | — | $1.62 |
Net sale is $5.4545 (GST-inclusive $6 ÷ 1.1). Pour cost = 1.62 ÷ 5.4545 = 29.7%. That's on the upper edge of the healthy band — one supplier price rise on beans and you're over 30%.
Milk stretch, defined
Milk stretch is the ratio of drinks poured to litres of milk used. A well-trained team on a busy bar will hit around 28–32 milk drinks per 2 litres. A team that over-pours, pours before the order is called, or lets the jug rinser take the last 30 ml every time will land at 22–24. That's a 25% gap in your biggest variable cost after coffee.
Where milk quietly disappears
We've spent enough mornings behind bars in Newtown, Enmore and Petersham to know the leaks are always the same four:
- Pouring the jug too full "just in case". A barista who steams 400 ml for a single 160 ml flat white sends 240 ml down the drain when the next order isn't the same. Over a day, that's 3–4 litres.
- The jug rinser habit. Emptying the jug at the rinser between orders instead of pouring the excess into the next matching drink. Individually it's nothing. Across a 200-drink day it's the difference between a good pour cost and a bad one.
- Steaming before the order is fully called. A drink returned or changed means the milk is warm and slightly re-textured — it'll get dumped, not re-used.
- Oat and alt-milk over-pour. Baristas often steam alt-milks like dairy despite the very different foam behaviour, leading to more waste per drink.
Specialist Espresso in the UK measured this precisely on one bar: their team was tipping roughly 6.3 litres of milk per day down the rinser drain, which at their wholesale rate came to about £110 per week. Translate to Sydney wholesale milk pricing and you're looking at ~$140/week, or ~$7,300/year, on one venue. That's a full week of wages, gone quietly.
Measuring it without a stopwatch
You don't need a lab. Every Sunday night, do this:
- Pull the week's milk drink count from Square, Lightspeed or Kounta (usually one line under "category = coffee + milk").
- Pull the week's milk invoices from Norco or your local distributor. Total the litres delivered.
- Subtract closing fridge stock (roughly).
- Divide drinks by litres. That's your stretch.
Do that four Sundays in a row and you have a baseline. Show it to the team. Nothing changes behaviour behind the bar like a number on the wall.
What good looks like
| Metric | Concerning | OK | Great |
|---|---|---|---|
| Pour cost (milk drink) | > 32% | 28–30% | 25–28% |
| Milk stretch (drinks per 2 L) | < 24 | 26–28 | 30+ |
| Milk wastage | > 8% | 4–6% | < 3% |
| Coffee usage per week | unknown | tracked | tracked + variance-flagged |
How COG handles this
The calculator takes dose in grams, milk in millilitres, cup and lid, oat/almond surcharge, and card fees, and shows you pour cost — GST-adjusted — on every drink. The menu pour-cost workbook does the same across a whole 60-PLU menu and highlights any drink pushing above your target band, so you can raise it, reformulate it, or accept it.
The team habit we recommend is one 15-minute Monday review with the head barista. Numbers on the wall. That's the whole intervention.

