Cohort analysis for Vietnamese cafés: the only chart that matters
Written by PEKO Research Team.Last updated: 05/18/2026.
Most Vietnamese venue owners we work with don't have a marketing team. They have a phone, a Zalo OA, and 60 minutes a day. The playbook below is built around that reality, not a Silicon Valley stack.
Why retention curves beat revenue charts
The honest answer on why retention curves beat revenue charts is that no software replaces the relationship a good stylist or barista builds with a regular. Software makes sure the right prompt reaches the guest at the right moment, so the relationship gets a chance to compound instead of fading after one missed visit.
Operators we work with usually run why retention curves beat revenue charts as a 30-day pilot before scaling. The pilot looks like: pick one cohort (e.g. guests who haven't rebooked within their personal 75th-percentile cycle), trigger a Zalo OA template with a 10–15% relevant offer, measure rebook within 14 days. If it beats baseline by 20%+ you scale; otherwise iterate the offer, not the channel.
For multi-outlet brands, why retention curves beat revenue charts needs a guardrail layer: per-venue caps on offer depth, frequency caps per guest, and a manager-approval step for any campaign over a budget threshold. AI is great at picking the right guest; humans are still better at vetoing a tone-deaf message during a sensitive week.
Building a weekly cohort from POS
A common trap with building a weekly cohort from pos is treating "didn't come back" as "churned". A guest may simply be on their natural cycle. A model that tells the two apart saves you tens of millions of VND in mis-sent vouchers each month, and (more importantly) protects the trust of your loyal regulars.
When building a weekly cohort from pos fails, the cause is almost always one of three things: the audience is too broad, the channel is wrong (SMS to a Gen-Z guest who lives on Zalo), or the offer is generic (10% off everything reads as "we're desperate"). Fixing any one usually lifts conversion by a third.
Building a weekly cohort from POS starts with one question: what behavioural signal in your POS or booking system tells you a guest is drifting away? In Vietnamese venues that signal is rarely "didn't visit for 60 days". It's usually a missed natural cycle (haircut at week 5, facial at week 4) combined with a drop in spend on visit N-1. Once you can spot that pair of signals, the rest of the work is choosing the right channel and the right offer.
Reading the drop in week 2 vs. week 6
Reading the drop in week 2 vs. week 6 starts with one question: what behavioural signal in your POS or booking system tells you a guest is drifting away? In Vietnamese venues that signal is rarely "didn't visit for 60 days". It's usually a missed natural cycle (haircut at week 5, facial at week 4) combined with a drop in spend on visit N-1. Once you can spot that pair of signals, the rest of the work is choosing the right channel and the right offer.
The tooling required for reading the drop in week 2 vs. week 6 is lighter than people assume. You need transaction data from your POS or appointments from your booking tool, a Zalo OA in good standing, and an AI layer that can model individual rebook windows. PEKO ships all three; if you build in-house, expect 4–6 engineering weeks plus content review cycles with Zalo.
Measurement for reading the drop in week 2 vs. week 6 should land on one chart: the 14-day rolling rebook rate, segmented by cohort. Revenue charts hide too much; cohort retention curves expose whether the lever actually works. If your dashboard doesn't show this, it's not a retention dashboard. It's an accounting dashboard.
Comparing cohorts before and after a campaign
A common trap with comparing cohorts before and after a campaign is treating "didn't come back" as "churned". A guest may simply be on their natural cycle. A model that tells the two apart saves you tens of millions of VND in mis-sent vouchers each month, and (more importantly) protects the trust of your loyal regulars.
When comparing cohorts before and after a campaign fails, the cause is almost always one of three things: the audience is too broad, the channel is wrong (SMS to a Gen-Z guest who lives on Zalo), or the offer is generic (10% off everything reads as "we're desperate"). Fixing any one usually lifts conversion by a third.
Comparing cohorts before and after a campaign starts with one question: what behavioural signal in your POS or booking system tells you a guest is drifting away? In Vietnamese venues that signal is rarely "didn't visit for 60 days". It's usually a missed natural cycle (haircut at week 5, facial at week 4) combined with a drop in spend on visit N-1. Once you can spot that pair of signals, the rest of the work is choosing the right channel and the right offer.
Where AI fits in the analysis loop
Operators we work with usually run where ai fits in the analysis loop as a 30-day pilot before scaling. The pilot looks like: pick one cohort (e.g. guests who haven't rebooked within their personal 75th-percentile cycle), trigger a Zalo OA template with a 10–15% relevant offer, measure rebook within 14 days. If it beats baseline by 20%+ you scale; otherwise iterate the offer, not the channel.
For multi-outlet brands, where ai fits in the analysis loop needs a guardrail layer: per-venue caps on offer depth, frequency caps per guest, and a manager-approval step for any campaign over a budget threshold. AI is great at picking the right guest; humans are still better at vetoing a tone-deaf message during a sensitive week.
On the ground, where ai fits in the analysis loop looks different in District 1 (premium walk-ins, tourist mix), Cau Giay (white-collar regulars who book in bulk), and Hai Chau (tourism plus a growing local middle class). The mechanic stays the same; the offer, channel and language shift. We tag every venue by district in PEKO so the AI can model these differences instead of averaging them away.
Free template inside PEKO
When free template inside peko fails, the cause is almost always one of three things: the audience is too broad, the channel is wrong (SMS to a Gen-Z guest who lives on Zalo), or the offer is generic (10% off everything reads as "we're desperate"). Fixing any one usually lifts conversion by a third.
Free template inside PEKO starts with one question: what behavioural signal in your POS or booking system tells you a guest is drifting away? In Vietnamese venues that signal is rarely "didn't visit for 60 days". It's usually a missed natural cycle (haircut at week 5, facial at week 4) combined with a drop in spend on visit N-1. Once you can spot that pair of signals, the rest of the work is choosing the right channel and the right offer.
The tooling required for free template inside peko is lighter than people assume. You need transaction data from your POS or appointments from your booking tool, a Zalo OA in good standing, and an AI layer that can model individual rebook windows. PEKO ships all three; if you build in-house, expect 4–6 engineering weeks plus content review cycles with Zalo.
Frequently asked questions
Does PEKO replace my POS? No. PEKO is an AI loyalty layer that sits on top of KiotViet, iPOS, Sapo, LOOP, Haravan, Booksy, Fresha, or Mindbody. You keep the system you already use.
How long until I see results? Most venues see clear retention signal in 30–60 days, measured by 14-day rolling rebook rate and returning-guest revenue.
Do I need a marketing team to run this? No. The AI drafts and schedules campaigns; the owner or shift lead approves them in 5–10 minutes a day.
Want to see this in action? PEKO is the AI loyalty layer that sits on top of your existing booking or POS, no rip-and-replace. Try it free or book a 15-minute demo.

