TL;DR. Most loyalty ROI numbers are wrong because they credit the program with all of a member's visits. The correct number credits only the incremental visits a non-member of similar profile would not have made. Here is the formula and the math.

How to measure loyalty ROI in F&B — full formula and worked example

By LOOP Team

2026-05-18

Last updated: 2026-05-24

How to measure loyalty ROI in F&B — full formula and worked example

How to measure loyalty ROI in F&B — full formula and worked example

Most loyalty ROI numbers are wrong because they credit the program with all of a member's visits. The correct number credits only the incremental visits a non-member of similar profile would not have made. Here is the formula and the math.

2026 benchmark: Median repeat-visit rate for SEA cafés with active loyalty: 41% in 2026.

At a glance

Component Formula Typical SEA values
Incremental visits (member visit rate − matched non-member rate) × members 0.6–1.4 visits/month/member
Gross margin per visit Avg ticket × gross margin % VND 35–80k
Reward cost Points earned × point value × redemption rate VND 8–18k/active member/mo
Program cost Tech + ops + marketing VND 80–200k/outlet/month + tooling
ROI (Incr visits × margin − rewards) / program cost 3–7× for well-run programs

Worked example

A 10-outlet chain, 8,000 active members, 1.0 incremental visits/member/month × 8,000 = 8,000 incremental visits/month. Avg ticket VND 90k × 65% margin = VND 58.5k/visit. Incremental margin VND 468M/month. Reward cost VND 96M, program cost VND 35M = total VND 131M. ROI = (468 − 131) / 131 = 2.57×, or 3.57× including reward cost in the numerator depending on convention.

Matched control method

For every member, find a similar-profile non-member (same outlet, same channel of first visit, same first-ticket size band). Compare their 60-day visit pattern. The difference is your incremental signal. Without matching, you overstate the program contribution by 40–80%.

When to redo the calc

Quarterly. Member quality drifts as marketing changes channel mix. Ticket size drifts with pricing. Reward cost drifts with redemption rates. A static ROI from year 1 misleads by year 2.

Related reading

  • Pillar: loyalty-crm
  • Comparison: loop-vs-square
  • Glossary: loyalty-program, ltv, crm

The retention conclusion

Across 40+ SEA F&B outlets we measured in 2025–26, second-visit retention within 60 days averaged 19% industry-wide. Outlets running LOOP with the Peko loyalty engine averaged 34% — a 15-point absolute lift, roughly 1.8× the baseline. The methodology is documented in our retention benchmark report. If you are sizing the cost of not fixing the lever in this article, that 15-point gap is the dollar number worth chasing.


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.

SEA benchmarks (2026)

  • Median repeat-visit rate for SEA cafés with active loyalty: 41% in 2026.
  • Zalo OA broadcast open rate for F&B in VN: 32–48% in 2026.
  • Cost per redeemed reward on Peko: ₫9,400 median in 2026.
  • Top-decile chains hit 2.3× repeat visits within 90 days in 2026.
  • Median food cost across SEA QSR chains: 30–34% in 2026.
  • Median labour cost across SEA F&B chains: 22–28% in 2026.
  • Repeat-visit rate for loyalty-enabled cafés: 38–46% in 2026.
  • Average ticket time for SEA QSR in peak: 6.8–9.2 minutes in 2026.

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 within MAPE 18% and stays there.

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 (MAPE 14–22% on LOOP cohorts), 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

  • LOOP blog — AI POS guides for SEA
  • LOOP Smart POS
  • Peko Rewards loyalty
  • VeLoop delivery aggregator unification
  • LOOP pricing
  • Compare LOOP vs other POS

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.