Restaurant loyalty program: rewards that protect your margin
· 8 min read
Most guests are happy to join a restaurant's loyalty program. In a 2024 survey for the US National Restaurant Association, 52% of consumers said they already use loyalty programs at restaurants, coffee shops or delis, and 81% of those who don't said they would join one at a favourite restaurant (National Restaurant Association, Restaurant Technology Landscape Report 2024).
So getting people to sign up is rarely the hard part for a small restaurant or bakery. The hard part is choosing a reward that brings regulars back without quietly handing away the margin you work so hard for. Food margins are thin, the bill changes with every table, and a bakery's regulars can fill a card in a few weeks. The calculator below compares up to three rewards with your own prices. Underneath, we suggest restaurant and bakery numbers to try, and the choices that keep a loyalty card affordable.
Free calculator
Punch card reward cost calculator
Compare up to three punch card rewards side by side: what each one gives back to customers, what it really costs you, and how long it takes to earn. Change any number; the results update as you type.
A regular every 6 weeks ≈ 8
People on the card
Products, time and materials, as a share of the reward's value
- Customer gets back
- 10.0%
- Costs you per visit
- €1.20 (4.0%)
- Cost per reward
- €12.00
- Time to earn it
- 15 months
- Yearly cost for all members
- €2,880 (240 rewards)
Takes over a year to earn. Many members will forget before they finish; try fewer stamps.
Products, time and materials, as a share of the reward's value
- Customer gets back
- 6.3%
- Costs you per visit
- €0.75 (2.5%)
- Cost per reward
- €6.00
- Time to earn it
- 12 months
- Yearly cost for all members
- €1,800 (300 rewards)
Products, time and materials, as a share of the reward's value
- Customer gets back
- 5.3%
- Costs you per visit
- €0.40 (1.3%)
- Cost per reward
- €2.00
- Time to earn it
- 7.5 months
- Yearly cost for all members
- €960 (480 rewards)
Cheapest for you per visit
Free add-on after 5
Costs you €0.40 per stamped visit (1.3% of the average spend) and gives customers back 5.3%. Cheapest isn't automatically best: a reward people want, and can earn within a few months, is what brings them back.
Estimates only, based on the numbers you enter. It doesn't count the extra visits a card brings in. Try Zilo free to test a reward with real customers.
Restaurant numbers to try in the calculator
Pick Restaurant or bakery at the top, then try these inputs for a small neighbourhood restaurant and replace each one with your own:
| Input | Example for a restaurant | Why |
|---|---|---|
| Average spend per visit | €40 | The card holder's bill, often for two people |
| Visits per member per year | 10 | Regulars who come for lunch or dinner most months |
| Card members | 300 | Guests who have joined the card |
And three rewards to compare:
| Reward | Type | Value | Stamps | Your cost |
|---|---|---|---|---|
| Free dessert after 5 | Free item | €7 | 5 | 30% |
| Free main after 8 | Free item | €18 | 8 | 32% |
| 50% off the 10th bill | % off one visit | 50% | 10 | 32% |
These are example assumptions. "Your cost" is what the reward costs you to serve: ingredients, plus a little for packaging or a side. For reference, US restaurants spent a median of about 32% of sales on food and non-alcoholic drinks in 2024 (National Restaurant Association, 2025 Restaurant Operations Data Abstract). Your own menu costing is the number to use.
With these inputs:
- The free dessert costs you about €2.10 to give, or €0.42 per stamped visit. A regular earns it in about six months.
- The free main costs about €5.76, or €0.72 per visit, and takes nearly ten months to earn.
- 50% off the tenth bill costs about €6.40 on a €40 bill, or €0.64 per visit, and takes a full year.
The yearly cost the calculator shows assumes every member fills every card, so treat it as the most you'd spend, not what you'll actually spend.
Why a percentage off the bill is risky for restaurants
A percentage discount looks fair: everyone gets the same 50%. But a restaurant bill isn't a fixed price. The same regular who comes for a €40 dinner for two might save the reward for a birthday dinner with six friends.
Change the average spend in the calculator to €120 and watch the third reward. Its cost jumps from €6.40 to about €19 a reward, three times as much, while the free dessert and the free main stay exactly where they were. A free item has a known cost. A percentage of the bill doesn't.
If you do want a discount, put a cap on it ("50% off your bill, up to €20") or tie it to one person's meal. Then you know the worst case before you print a single card.
Bakery numbers to try
A bakery is the opposite of a restaurant: a small spend, but regulars who come in once or twice a week. Try these inputs:
| Input | Example for a bakery | Why |
|---|---|---|
| Average spend per visit | €7 | A loaf and a pastry, or a coffee and a bun |
| Visits per member per year | 40 | Most weeks, with some holidays |
| Card members | 400 | Customers who have joined the card |
With a free pastry (€3.50) after 8 stamps, a free coffee (€3.20) after 6 and a free loaf (€6) after 10, all three rewards cost you less than €0.20 per visit (assuming about 30% ingredient cost for baked goods and 25% for coffee). But they give back 6% to 9% of what a customer spends, more than the restaurant rewards above, and a weekly regular fills an 8-stamp card in under three months.
That's the bakery trap: a reward that looks cheap on its own adds up because the card fills so fast. Two things help:
- Use more stamps. A 10- or 12-stamp card still fills in about three months for a weekly customer.
- Reward with something you make anyway. A pastry or a loaf from today's bake costs you ingredients. If it would otherwise go unsold at closing time, it costs you even less.
When to count rewards at full price
The calculator counts only what a reward costs you to make. That's right for most food rewards: a free dessert doesn't take a table away from a paying guest.
There's one exception. If your regulars would have bought the reward anyway, say they order dessert most visits, then a free dessert replaces a sale. Switch on Count rewards at full price to see that case. The free dessert then costs about €1.40 per visit in the restaurant example instead of €0.42. A reward that adds something new, like a dessert for someone who never orders one or a drink with a lunch that usually comes without, avoids that problem.
Reward ideas for restaurants and bakeries
These all fit a simple stamp card: one stamp per visit, one reward when the card is full.
- A free dessert, starter or side. Low cost, easy to serve, and it often comes with a paid meal.
- A free drink with a meal. Soft drinks and coffee usually cost little to make. Check your local rules before offering alcohol as a reward.
- A free lunch or a free main. A bigger reward for restaurants with strong weekday regulars. Keep the stamps low enough that people can finish the card.
- A free pastry or loaf. The obvious bakery reward. A "baker's choice" pastry lets you use what's plentiful that day.
- A cake discount. For bakeries that sell celebration cakes: a fixed amount off a whole cake brings in a bigger order.
- Something on the house for a birthday or a new dish. A small extra rather than a discount, so you control the cost.
For a deeper look at choosing between a free item, a discount and an add-on, read our guide to punch card reward ideas. If your bakery also sells a lot of coffee, our post on coffee shop loyalty cards covers the drinks side.
How many stamps for a restaurant or bakery card?
Aim for a card a regular can fill in about three to six months. In a study at a university café, customers came back faster the closer they got to a free coffee (Kivetz, Urminsky and Zheng, Journal of Marketing Research, 2006). The flip side: a reward that's a year away feels too far off to chase.
- Restaurants: 5 to 8 stamps. A guest who comes once a month fills a 6-stamp card in six months.
- Bakeries: 10 to 12 stamps. A weekly customer fills a 10-stamp card in about three months.
- One stamp per visit, not per person. It's simple to explain at the till. If big groups are common, a house rule like "one stamp per visit with a main course" is easy for staff to apply.
- Stamp the first visit when someone joins, so nobody starts at zero.
A simple setup for a restaurant or bakery
- Pick one reward with a fixed cost, like a dessert, a drink or a pastry.
- Set the stamps so a typical regular finishes in three to six months.
- Check the cost in the calculator above with your own menu costing.
- Ask every guest at the till for the first month. Whether staff mention the card makes the biggest difference to how many people join.
- Review after three months. Are people finishing their cards? If not, cut the stamps or change the reward.
You'll find more ideas for bakeries on our page for bakeries.
Try it in your restaurant or bakery
With Zilo, guests add your loyalty card to Apple Wallet or Google Wallet by scanning a QR code at the till and entering an email address. No app and no paper card to lose. Staff stamp with one tap from the dashboard, the card in the guest's wallet updates straight away, and you can see who is close to a reward and email reminders and offers to guests who opted in. It's free during the beta. Create your free restaurant loyalty card.