How to build a restaurant loyalty program people actually use
Most loyalty programs fail for the same three reasons. A practical guide to designing rewards, setting the earn rate, and avoiding the discount trap.

Photo from Pexels
Loyalty programs fail quietly. Nobody cancels one — it just stops being mentioned at the till, and six months later you notice nobody has redeemed anything.
There are three reasons, and they are almost always the same three.
Reason one: it takes effort at the till
If your staff have to ask for a phone number, look up an account, and explain the scheme while four people wait, they will stop doing it by the second week. Not out of laziness — because the queue is real and the loyalty program is abstract.
The fix is structural: enrolment has to be a phone number typed once, and earning has to be automatic afterwards. No card, no separate app, no explanation required. If your program needs a staff member to actively sell it, it will die.
Reason two: the reward is too far away
A reward that takes eleven visits to reach is invisible. Customers cannot picture it, so it does not influence behaviour.
A useful rule of thumb: the first reward should be reachable in about three to four visits. It can be small — a free coffee, a free side — but it needs to arrive while the customer still remembers signing up.
The second reward can be further out. The first one exists to prove the program is real.
Reason three: it is just a discount in a costume
This is the expensive failure. If everyone gets 10% off, you have not built loyalty — you have cut your prices and added admin.
The difference is targeting. A discount goes to everyone including the people who were going to buy anyway. Loyalty should go disproportionately to behaviour you want more of: the fourth visit, the win-back after three quiet weeks, the larger order.
Setting the earn rate
Work backwards from what you can afford to give away.
If your average order is 900 and your contribution margin is roughly 40%, each order produces about 360. Giving away a 300 item every fourth visit costs you roughly 21% of the margin on that group of orders.
That is only worth it if the program actually increases visit frequency. Which is why the number to watch is not redemptions — it is visits per customer per month, before and after.
If that number does not move, the program is a discount. Change it or stop it.
What to actually measure
Most restaurants track the wrong thing. Redemption count feels like success but only tells you people accepted free things.
Track these instead:
- Enrolment rate — what share of transactions attach to a customer record
- Repeat rate — share of customers who order more than once in 90 days
- Visit frequency — average orders per enrolled customer per month
- Win-back response — what share of lapsed customers order after a campaign
The last one is where the money usually is, and it is the one almost nobody runs.
The win-back campaign nobody runs
Here is the highest-return campaign in food service, and it takes about ten minutes to set up:
- Find customers who ordered at least twice, and whose last order was 30–60 days ago
- Send them one message with a small, time-limited offer
- Measure how many order within a week
These people already like your food. They have not left for a reason — they just fell out of the habit. Re-acquiring them costs a notification, versus paying full acquisition cost for a stranger.
The reason most restaurants never run it is that they do not have the customer list. On a marketplace, they never did.
A workable starting design
If you want something simple that tends to work:
- Earn: 1 point per 100 spent
- First reward: 300 points for a free item worth roughly 300
- Enrolment: phone number at the till, nothing else
- Win-back: automatic offer at 45 days of silence
- Review: check visit frequency at 90 days and adjust the earn rate
Start there, watch the frequency number, and change one variable at a time.
Want to see this working on your own menu?
Book a free demo and we will set Berryin up with a slice of your real menu — ordering, POS, kitchen and reports, end to end.


