Milk Tea Recipes with True COGS 2026 — Vietnam Operator's Working Manual

By LOOP Research

Last updated:

Milk Tea Recipes with True COGS 2026 — Vietnam Operator's Working Manual

Most milk-tea recipe articles list ingredients without amounts, prices, or yield. That is fine for a hobbyist. For an operator about to sell 200+ cups a day, you need the opposite: every recipe sized to a 500 ml cup, every ingredient priced at Q1 2026 Vietnamese wholesale, every yield calculated, and an explicit note on how to deduct it from inventory at the point of sale.

All twelve recipes below assume a standard 500 ml clear PET cup with sealed dome lid, ice fill 220 g, leaving 280 ml for liquid + toppings. Prices are HCMC/Hà Nội Q1 2026 wholesale, before VAT, to a buyer ordering at minimum-truck quantities. Substitute your supplier prices freely — the workings are the value.

Table of contents

Reference unit costs (HCMC/HN wholesale, Q1 2026, pre-VAT)

Ingredient Unit Price Notes
Black tea leaves (Bảo Lộc CTC grade) VND/kg 95,000 brews ~180 cups @ 5 g
Oolong tea leaves (Lâm Đồng) VND/kg 280,000 brews ~150 cups @ 6 g
Jasmine green tea VND/kg 145,000 brews ~180 cups @ 5 g
Earl grey blend VND/kg 220,000 brews ~165 cups @ 5.5 g
Whole milk (Vinamilk/TH) VND/L 33,500 80–120 ml per cup
Non-dairy creamer (Rich's/Indomilk) VND/kg 78,000 hydrate 1:6
Condensed milk (Ông Thọ) VND/L 52,000 15–25 ml per cup
Fresh cream (Anchor 35%) VND/L 138,000 30 ml per topping
Cane sugar VND/kg 22,000 25 g per cup avg
Fructose syrup VND/L 38,000 18 ml per cup avg
Tapioca pearls (raw, large) VND/kg 35,000 yields 2.6× cooked weight
Brown sugar pearls (premium) VND/kg 56,000 yields 2.4× cooked weight
Crystal boba (clear) VND/kg 62,000 ready-to-use
Cheese foam powder mix VND/kg 285,000 25 g per topping
Sea salt VND/kg 14,000 1 g per cheese foam
Aiyu jelly VND/kg 48,000 40 g per topping
Grass jelly (sương sáo) VND/kg 32,000 50 g per topping
Pudding mix VND/kg 165,000 yields 8× set weight
Coffee jelly VND/kg 58,000 40 g per topping
Taro paste (real taro 60%) VND/kg 95,000 60 g per cup
Strawberry purée 50% VND/kg 88,000 40 g per cup
Mango purée 50% VND/kg 92,000 40 g per cup
Matcha powder (culinary) VND/kg 1,250,000 4 g per cup
500 ml cup + dome lid + straw VND/set 1,950 bulk pack
Sealing film (per cup) VND/cup 280 machine seal
Paper bag + napkin VND/set 420 per take-away order

The 12 recipes

For each recipe: gram-accurate build, ingredient cost, packaging cost, total COGS, suggested menu price, drink gross margin. "Suggested price" anchors at the median chain-modern milk-tea ticket VND 45–65k.

1. Classic black milk tea with tapioca (Trà sữa truyền thống trân châu)

2. Oolong milk tea with brown sugar pearls

3. Matcha latte with red bean (substitute aiyu)

4. Cheese foam jasmine tea

5. Taro milk tea with crystal boba

6. Brown sugar fresh milk (Hổ Đường Đen)

7. Strawberry oolong fruit tea

8. Mango passion green tea

9. Coffee jelly milk tea

10. Pudding milk tea

11. Earl grey cheese mousse

12. Grass jelly herbal milk tea

COGS summary table

# Recipe COGS Suggested price Drink GM Notes
1 Classic black + tapioca 6,650 35,000 81% Entry SKU
2 Oolong + brown sugar pearls 10,838 49,000 78% Margin anchor
3 Matcha latte + aiyu 15,864 59,000 73% Matcha price sensitive
4 Cheese foam jasmine 15,112 55,000 73% Foam complexity
5 Taro + crystal boba 16,360 59,000 72% Watch taro shrinkage
6 Brown sugar fresh milk 14,038 52,000 73% Photo SKU
7 Strawberry oolong 12,240 49,000 75% Seasonality
8 Mango passion green 10,965 49,000 78% Year-round
9 Coffee jelly 8,978 45,000 80% Cross-day appeal
10 Pudding milk tea 8,927 49,000 82% Highest margin
11 Earl grey cheese mousse 14,530 55,000 74% Evening seller
12 Grass jelly herbal 7,754 39,000 80% Traditional bridge

Blended drink GM at a balanced menu mix: 77.1% — which is the number to defend at category-mix reviews.

POS deduction notes per recipe

A milk-tea POS that does not deduct ingredients by recipe at the point of sale is invisible to the actual margin leak. Here is what every recipe needs declared:

For more on how a POS does recipe-level deduction at sale, see recipe costing in Vietnam.

Daily blind-count list (top 8 SKUs)

Daily blind counts on the top 8 SKUs (the manager counts without seeing the POS-expected number) typically cuts food-cost shrinkage from 5–6% to 1.5–2%. For a milk-tea outlet, count daily:

  1. Tapioca pearls (raw)
  2. Brown sugar pearls (raw)
  3. Taro paste
  4. Cheese foam mix
  5. Cups (500 ml set)
  6. Sealing film roll length
  7. Whole milk (litres on hand)
  8. Matcha powder (g on hand)

Flash variance >2% on items 1–4, >0.5% on items 5–6, >1% on items 7–8.

Sources

Related

Frequently asked questions

Q: What blended drink gross margin should a Vietnamese milk-tea shop target in 2026? A: 74–80% blended. The 12-recipe menu above lands at 77.1%. Below 72% means either supplier prices are above market or recipes are over-portioned.

Q: Why are these COGS higher than the "VND 4,000 per cup" stories online? A: Those stories exclude cup, lid, seal, straw, sugar, ice spill, and recipe shrinkage. Add them and you land at VND 7–16k. The numbers above are operating reality.

Q: How do I cost a recipe my supplier just changed price on? A: Run the recipe with the new unit cost, then rerun the menu blend. Anything that drops a recipe below 70% drink GM either needs a price increase, a portion change, or a substitution.

Q: What does cooked:raw ratio for pearls mean in practice? A: 1 kg raw tapioca yields ~2.6 kg cooked at correct hydration. Your POS should deduct the raw weight when a drink is sold; the bar weighs cooked but the inventory tracks raw.

Q: How often should recipes be re-costed? A: Monthly. Dairy and sugar move ±5% in a quarter; specialty toppings move ±10%. A POS that auto-recosts on supplier price upload removes this as a chore.

Q: What is the right cup-vs-drink reconciliation tolerance? A: 0.5%. Above that, either spill is excessive (training issue), cups walk off (theft), or POS deduction is mis-keyed (recipe issue). Investigate inside 24 hours.

Q: How many SKUs should the menu have? A: 12–18 active SKUs covers 92% of typical milk-tea ticket variety. Beyond 24, prep loss and inventory holding dominate the gross-margin gain.

Q: Do I really need to track sealing film? A: Yes. It is the single highest-shrinkage line in milk-tea and the easiest to under-track. Roll length per case, divided by film width per cup, gives expected cups; reconcile weekly.


Why this matters in 2026

Multi-outlet F&B operators across Vietnam and Southeast Asia are running into the same wall in 2026: aggregator commissions compress margins, food-cost drift compounds across outlets, labour cost climbs faster than ticket size, and a traditional POS only surfaces the damage at month-end when the only response left is firefighting. Operators who win in 2026 close the loop in hours, not weeks — variance flags before the next shift, demand forecasts before purchasing, daypart promos drafted automatically for slow slots, and a single morning brief instead of five dashboards. That is the bar this guide is written against, and the reason LOOP exists. The cost of a missed signal is no longer a single bad week — it is the difference between a chain that compounds outlet-level profitability and a chain that opens new outlets to mask the leaks at the old ones.

The SEA F&B operator landscape in 2026 also looks materially different from 2023. Aggregator commissions in Vietnam have settled in the 22–28% band; Thailand and the Philippines run higher, Singapore lower. Labour minimums have moved twice in eighteen months in Vietnam. E-invoice (TT78) is now non-negotiable and enforced. Loyalty has shifted from punch cards to messaging-native (Zalo OA, LINE, WhatsApp, Messenger) — and the chains that ride that shift are seeing repeat visits double inside ninety days. None of that lands as an upgrade on a legacy POS; it lands as a different operating model.

Operator playbook — first 30 days on LOOP

Week 1 — Foundations. Import menu, recipes, modifiers, customers, loyalty balances and 24 months of sales via CSV. Connect aggregators (GrabFood, ShopeeFood, Be, foodpanda, Gojek). Configure e-invoice provider (MISA / Viettel / VNPT). Confirm payment rails (VietQR for VN; PromptPay / QRIS / DuitNow / PayNow / QR Ph for the rest of SEA). Train two staff per outlet on voice and text commands; the rest pick it up by observation in days 4–7.

Week 2 — Variance and forecast online. Switch demand forecasting on at daypart level. Set variance alert thresholds (default: food-cost ±3pp, labour ±2pp, void rate ±0.5pp). Let the system run a full week without intervention so the baseline calibrates. Review the morning brief each day; ignore the urge to override — by day 10 the forecast typically holds steady.

Week 3 — Promo and loyalty loop. Turn on daypart promo drafting for the two slowest hours per outlet. Connect Zalo OA / LINE / WhatsApp for delivery; start with a single segment (e.g. lapsed-30-day) and a single offer. Measure incremental visits, not coupon redemptions.

Week 4 — Compound. Roll the same flow to a second outlet, then a third. The operating model is the same at outlet 2 as outlet 20 — that is the point of LOOP.

KPI table — what to watch

KPI Target band 2026 LOOP signal
Food cost % 30–34% (QSR), 27–32% (café) Variance alert within 6 hours of shift close
Labour cost % 22–28% Daypart staffing recommendation in morning brief
Repeat-visit rate (90d) 38–46% (café), 28–36% (QSR) Loyalty segment drafted weekly
Aggregator share of revenue 18–32% One queue across 5 aggregators; per-aggregator margin in dashboard
AI forecast MAPE per outlet 14–22% Recalibrates weekly per outlet
Ticket time (peak) 6.8–9.2 min KDS routing recommendation when over band
Void rate <0.8% Pattern-detection on staff/outlet/daypart

Common pitfalls SEA operators hit in 2026

Treating aggregator orders as a separate business. Operators who keep five aggregator tablets running in parallel lose roughly 4–7 minutes per peak hour to context-switching alone, and miss the per-aggregator margin picture entirely. Unifying the queue (one tablet, one KDS, one accounting line per aggregator) is usually the single highest-leverage move in the first 60 days.

Letting variance live in spreadsheets. A weekly food-cost review is a 7-day reaction time on a 24-hour problem. Variance has to live in the operating layer — flagged, attributed and routed to the responsible manager within hours, not aggregated to a Friday email.

Loyalty as a punch card. A 2026 loyalty programme is a messaging channel with attribution. If the only metric is "points issued", the programme is a cost centre. If the metric is "incremental repeat visits per segment per month", it compounds.

Forecasting at the wrong resolution. Chain-level forecasts are wallpaper. Daypart-and-outlet is the smallest unit that pays back — coarser is too vague to act on, finer is noise.

How LOOP solves this

LOOP is an AI-native restaurant operating system built for SEA F&B chains. Operators run their venues by voice or text command instead of clicking through dashboards. AI forecasts demand per outlet at daypart resolution (modelled accuracy published in our methodology), flags food-cost and labour variance within hours of the shift closing, drafts promos for slow daypart slots and pushes them to Zalo OA / LINE / WhatsApp, and delivers a three-item morning brief at 06:30 local time so the operator's first action of the day is informed. LOOP unifies GrabFood, ShopeeFood, Be, foodpanda and Gojek into one queue, supports VietQR / PromptPay / QRIS / DuitNow / PayNow / QR Ph, and ships VAT e-invoice (TT78) via MISA, Viettel and VNPT. Pairs with Peko loyalty (50% lifetime discount on LOOP for Peko customers).

Under the hood, LOOP is offline-first with a 90-second resync window so orders, payments and KDS keep firing through ISP drops; recipe-level COGS is computed at order time so every plate's contribution margin is visible before the shift ends; and the morning brief is generated from the previous day's variance, the current day's forecast and the next 14 days of bookings, weather and local events — not a static template. The result is fewer dashboards, faster decisions, and a noticeably calmer week for the operator.

Related guides

FAQ

How fast can a SEA F&B chain switch to LOOP?

Typical cutover for 2–10 outlets is 5–10 business days: CSV import of menu, recipes, customers, loyalty and 24 months of sales, parallel run over a weekend, then cut over Monday open. Larger chains (20+ outlets) usually phase by region over 4–6 weeks.

Does LOOP work without stable internet?

Yes — LOOP runs offline-first with a 90-second resync window. Orders, payments and KDS keep firing during ISP drops; the cloud reconciles automatically on reconnect. Aggregator orders queue locally and dispatch when the link returns.

What does LOOP cost?

Per-outlet monthly pricing with no per-device upcharge. Peko loyalty customers get 50% lifetime discount on LOOP — see /pricing for the current band.

Does LOOP support VAT e-invoice (TT78)?

Yes — LOOP integrates with MISA, Viettel and VNPT as e-invoice providers. Issuance is automatic at order close and reconciles end-of-day.

Which payment rails does LOOP support?

Native: VietQR, MoMo, ZaloPay, VNPay for Vietnam; PromptPay (TH), QRIS (ID), DuitNow (MY), PayNow (SG), QR Ph (PH). Card acquirers are wired through local PSPs per country.