Answers / Loyalty programs

    Why loyalty programs fail — the death spiral no one talks about

    Written by Alvin Nguyen.Last updated: 07/28/2026.

    Most loyalty programs don't fail because the rewards are weak — they fail because two structural gaps interlock into a death spiral: customers have no way to see their own points, so they have no reason to join; and enrolment depends entirely on the cashier remembering to ask — which can't hold at a busy till.

    The TL;DR
    • Very few members ever redeem — not because rewards are bad, but because they don't know how many points they have.
    • New staff don't pitch the program, because it lives in the manager's head, not on the receipt or the table.
    • The member list grows slowly even when the shop is packed — the clearest sign of the cashier bottleneck.
    • Members never ask about their points, because there's no self-serve way to check and asking a stranger feels awkward.
    • Nobody knows whether the program actually works — because nobody measures it, and there isn't clean data to measure with.

    Published: 07/28/2026

    Tóm tắt nhanh

    Là gì
    A vendor-neutral diagnosis of why most restaurant loyalty programs fail — two interlocking gaps ('blind points' and the 'cashier bottleneck') that form a closed 6-step loop.
    Dành cho ai
    Café, restaurant, bubble-tea and salon operators who already tried a loyalty program and stopped seeing repeat lift.
    Lợi ích chính
    Recognise the spiral before concluding 'loyalty doesn't work for us' — both gaps can be patched without replacing the POS.
    Giá
    Free to read — no paid tool required to patch either gap.
    Cách bắt đầu
    See how AI receipt scanning replaces the cashier ask →

    Most café, restaurant and bubble-tea loyalty programs don't fail because the rewards are weak — they fail because two structural gaps interlock into a closed loop. The first gap is **blind points**: customers earn points but have no self-serve way to check their balance without asking a human, so they see no reason to keep playing. The second gap is **the cashier bottleneck**: enrolment and point-attachment depend entirely on the cashier remembering to ask 'do you want to earn points?', which cannot hold at a busy till. This piece argues both gaps can be patched without replacing the POS — and that once a shop is inside the loop, no reward on its own can pull it out. Before the fix, recognise the spiral through five familiar symptoms.

    Before explaining the loop, recognise it through five familiar symptoms.

    ## The warning bells

    If your shop has three of the five symptoms below, you're almost certainly inside the spiral: (1) very few members actually redeem — the voucher pool sits untouched; (2) new staff still can't pitch the program after two weeks on the floor; (3) the member list barely grows even though the shop serves hundreds of guests a day; (4) members never ask 'how many points do I have?'; (5) the owner cannot answer 'is the program working, and by how much?'. These aren't separate problems. They're all surface expressions of the same loop.

    ## The spiral — picture a circle

    Imagine a six-node circle. Each node is the consequence of the one before it, and the final node feeds the first. There isn't really a 'starting point' — you can fall in at any node, but once you're in, the loop keeps itself running. The six nodes, detailed in the tactics list below:

    Customers can't see their points → Customers decline to join → Cashiers get rejected repeatedly and stop asking → Member count stagnates → There isn't enough data to run campaigns → The owner concludes 'loyalty doesn't work here' → (back to the top: the program stops getting invested in, so members see even less)

    This is not a checklist. It's a circle. Patching one node isn't enough, because the other five keep the wheel spinning.

    ## Two names for two gaps

    Of the six nodes, the first two are the root causes — everything else is downstream. They deserve names.

    **Blind points.** A customer earns points but has no way to check their balance without asking a human. On paper stamps, losing the card loses the points. On a POS module, the balance only shows on the cashier's screen — there's no customer account to look up. The customer lives in the dark, and darkness kills the intrinsic motivation to play.

    **The cashier bottleneck.** Enrolment and point-attachment depend entirely on the cashier remembering to ask 'do you want to earn points?'. During the peak — 8am coffee, noon office lunch, 6pm milk tea — cashiers are counting change, printing receipts, calling the kitchen. One extra sentence is the first thing that drops. After it's been declined 3–5 times a shift, not asking becomes the default.

    ## This is not the staff's fault

    Worth stating clearly: the cashier bottleneck is not a cashier problem. Widely accepted retail-loyalty guidance is that enrolment must happen at the register in the moment, and that every cashier must be trained to explain the program in fifteen seconds and to answer when a customer asks how many points they have. That is the standard, and it isn't controversial.

    But look at what the standard assumes: it assumes a human will remember, every shift, every customer, while a queue is forming. And it assumes customers will ask another human to learn their own balance. Both assumptions are fragile. Public documentation from major POS vendors — the same pattern is visible across Toast, Square, and regional systems like KiotViet and iPOS — describes the loyalty module as a register-side enrolment flow: the customer hands a phone number to the cashier, who types it in. That description is accurate; it is not wrong. It is also an exact description of the bottleneck.

    The spiral isn't an execution failure. It's the natural consequence of a design that loads the two heaviest tasks — enrolment and balance-lookup — onto the most fragile points: the cashier's memory during a rush, and the customer's willingness to ask.

    ## How to break the spiral — vendor-neutral first

    There are two patches, one for each gap, and both are needed. Patching only one is not enough.

    **Patch blind points.** Give every customer a way to check their balance any time, without asking anyone. Three common methods in order of friction: (a) a QR code on the table or menu — the customer scans and sees their balance in two seconds, no app install; (b) a QR code printed on the receipt — the customer takes the bill home and checks later, which also lets shops that never captured a phone number at the till still issue points; (c) a mini-app or channel inside a platform the customer already has (Zalo in Vietnam, WhatsApp elsewhere, LINE in Thailand) — one tap and the balance is visible, no new app. None of these require replacing the POS.

    **Patch the cashier bottleneck.** Give customers a way to enrol themselves without the cashier having to ask. The strongest method today is post-payment receipt scanning — the customer photographs the bill, AI OCR reads the amount, timestamp, and items, and points are credited without any keystroke from staff. This moves the load off the cashier (peak hours) and onto the customer (relaxed, after the meal). It also works with any POS, including ones with no loyalty API.

    When both gaps are patched, the spiral reverses: customers see their points → they see a reason to redeem → they enrol on their own → member count grows steadily without the cashier asking → there's enough data to run real campaigns → the program starts proving lift → the owner invests further.

    ## Where PEKO fits (briefly)

    PEKO is one of the platforms that patches both gaps at once: AI OCR reads receipts on the customer's own phone (no POS swap — KiotViet, iPOS, Sapo, MISA, Toast, Square all keep running), and members see their balance and redeem inside the messaging channel they already use daily. The principle isn't PEKO-exclusive: any solution that combines the two layers can break the spiral. The mechanics of the OCR step are covered in /answers/how-ai-receipt-scanning-works-loyalty.

    ## Self-audit — 10 yes/no items

    Score each item. Six or more 'yes' answers means you're inside the spiral and need to patch soon.

    (1) Is there no way for customers to see their balance without asking staff? (2) Can customers self-enrol, or do they have to wait for the cashier to ask? (3) In the last 30 days, have fewer than 5% of regulars asked 'how many points do I have?'? (4) After 14 days on the floor, have new staff still not been trained to pitch the program? (5) Did member count grow less than 10% month-over-month while customer traffic held? (6) Is more than 70% of the voucher pool still unredeemed from the start of the quarter? (7) Can the owner not state the exact percentage of bills linked to a member? (8) During peak (60+ customers/hour), do cashiers skip the loyalty ask so entire weeks pass with almost no new enrolments from the till? (9) Have you not run a single win-back campaign to at-risk customers in the last 6 months? (10) Has the program been running longer than 6 months without a single measured revenue lift attributable to it?

    6+ yes = inside the spiral. 4–5 yes = at risk. 0–3 yes = the program is working.

    1. Customers can't see their points

    Points get earned but there's no self-serve way to check the balance. On paper stamps, losing the card loses the points. On POS modules, the balance only shows on the cashier's screen. The customer plays a game they can't see the score of — and no one keeps playing that for long. This is 'blind points', the root of the spiral.

    2. Customers decline to join

    When the cashier asks 'want to earn points?', the customer runs a quick internal calc: can I actually check the balance? can I redeem something clear? will I get spammed? None of those questions get answered at the till, so the default answer is 'no thanks'. After 5–10 rejections, both staff and customers learn the question isn't worth asking.

    3. Cashiers stop asking

    During peak, the cashier is counting change, printing bills, calling the kitchen, handling delivery pickups. A question that keeps getting declined is the first thing cut. Two or three weeks in, 'don't ask' becomes the default. The program still exists in the POS, but has stopped acquiring members — only the owner doesn't know yet.

    4. Member count stagnates

    The shop serves hundreds of guests a day but the member list this week matches last week. On the POS dashboard, cumulative members keeps ticking up so the owner sees no problem. The gap only appears when you compare enrolment rate to actual traffic — and few operators track it that way.

    5. Not enough data to run campaigns

    With 200–300 members scattered over 12 months, no churn model produces confident enough output to act on. A win-back list is 30–50 phone numbers — too small to A/B test, too noisy to measure lift. The owner tries a campaign or two, sees no clear lift, and stops.

    6. Conclusion: 'loyalty doesn't work here'

    This closes the loop. The owner sees an untouched voucher pool, slow member growth, campaigns with no clear lift — and draws a wrong but reasonable conclusion: 'our customers just aren't loyalty people'. From here the program stops getting invested in — no one patches the two root gaps — and the wheel keeps turning: less visibility, less asking, less enrolment.

    FAQ

    Does the spiral apply to small independent shops too?

    Yes — arguably more, because small shops usually have one cashier during peak, so the bottleneck hits sooner. They also can't easily hire someone to retrain staff. The patch is the same: give customers a self-serve balance view and a self-serve enrolment path.

    Do I have to replace my POS to fix this?

    No. Any POS that prints a legible receipt supports the receipt-scan patch, and any messaging channel with a customer identity (Zalo, WhatsApp, LINE, email) supports the balance-view patch. You keep the POS for operations and pricing; the loyalty layer runs at the customer tier.

    Are paper stamps a form of blind points?

    Yes — the most severe form. Paper stamps hand the entire storage burden to the customer (keep the card) with no lookup mechanism. Lose the card, lose the points. This is why paper-stamp redemption rates in F&B typically sit under 5%.

    Does a mini-app or messaging-channel program break the spiral?

    It breaks the blind-points gap (balance is visible in-app). But most such programs still require the cashier to type in a phone number at the till, which leaves the bottleneck intact. You need to add a self-enrolment path (table QR, receipt QR, or receipt scan) to break both.

    How long does it take to fully break the loop?

    The technical patch is usually 2–4 weeks: stand up the balance page, print QR on receipts/tables, enable receipt scan. But reversing customer and staff behaviour takes 60–90 days — the owner has to hold the reward structure steady during that window so customers come to believe the points are real, visible, and redeemable.

    How do I know I'm out of the spiral?

    Three numbers: (1) percentage of monthly bills linked to a member (target: 40%+), (2) percentage of enrolments coming from self-serve rather than cashier ask (target: 50%+), (3) redemption rate among active members (target: 15%+). When all three clear their thresholds over 60 days, the spiral is broken.

    Calculate your PEKO ROI

    Sources

    Related

    People also read