Skip to main content
NeoLoyal home
Menu

Loyalty programs for cafes, coffee shops and restaurants

How to run a loyalty card during a morning rush, what to do about delivery orders, and the targets that suit food service.

Updated

In brief

Food service is the best fit there is for a visit-based loyalty card: transactions are similar in value, customers return often, and staff already speak to everyone. The two decisions that matter are the target, which should be reachable in under two months, and whether delivery-app orders count — they usually cannot.

Why food service is the easy case

Almost everything that makes retail loyalty awkward is absent here. Transactions are similar in value, so a visit-based stamp is fair. Customers return frequently, so a card gets finished. Staff already speak to every customer, so there is a natural moment to offer it.

If you run a café, coffee shop, bakery, or casual restaurant, the mechanic is not really in question. The design decisions are.

Setting the target

Match it to how often that kind of customer already comes in, so the reward lands inside roughly two months.

Setting Typical frequency Target Reward
Coffee shop Most weekdays 9–10 Any hot drink
Bakery Weekly 6 Any single pastry
Lunch trade 2–3 times a week 8 A main from the regular menu
Casual restaurant Every two weeks 5–6 A main, or a course
Takeaway Weekly 8 A main, with a minimum order

A ten-stamp card for a customer who visits fortnightly is five months away. They will stop at three.

The rules worth setting

One stamp per day. Without it, a customer buying four coffees for the office fills half a card in one transaction, and your reward maths stops working.

Count the category, not the product. “Any hot drink” avoids a staff member deciding whether a hot chocolate counts. The margin difference is small; the argument avoided is not.

A minimum order for food. If your menu runs from a side to a family meal, set a floor so a portion of chips does not earn the same credit as a main.

Direct orders only. More on this below.

Delivery platforms

Say the rule on the card, because this is the question you will be asked most.

Orders placed through a delivery platform generally cannot earn a stamp for two reasons. Practically, nobody on your team is present to validate the order, so the count would have to be taken on trust. Commercially, the platform already takes a substantial commission, and a loyalty reward stacked on top of that erodes what is left.

“Stamps are for orders placed with us directly” is a clear, defensible sentence, and it also gives customers a small reason to order direct.

Running it during a rush

The morning rush is where the program either works or quietly stops. Two rules:

Joining is something the customer does, not something you do. A poster they scan while waiting costs your team nothing. Anything requiring a staff member to collect an email address will be abandoned by the third person in the queue.

Stamping is one action, taken during dead time. While the drink is being made, not while the customer is paying. If it takes more than a couple of seconds or needs a second screen, it will not happen at 8:30am — which is precisely when most of your visits are.

Where to put the poster

Beside the card reader, at the height of somebody standing and paying. Not on the door behind them, not on a noticeboard, not on the table.

The customer’s phone is already in their hand at the payment moment. That is the only moment worth designing for.

What to skip

Points on spend. A coffee shop’s transactions are too similar for spend-based earning to describe anything useful, and it introduces a conversion rate to a queue.

Happy-hour multipliers. They need explaining, and the explanation happens at the counter.

Tiers. Your heaviest customer visits daily, your lightest weekly. That is not a wide enough spread to justify telling most people they are on the bottom tier.

Multiple outlets

Decide before launch whether a card earned at one site can be redeemed at another. Almost always it should — a customer who collects stamps at the branch near their office and tries to redeem near home will not accept a distinction they were never told about.

Then make sure the same target, the same limit, and the same reward apply everywhere, and that you know which staff at which sites can confirm a redemption.

The NeoLoyal approach

NeoLoyal is designed for the counter this page describes. Customers scan the QR poster and the card opens in their phone browser — nothing to install, no account to create before the first stamp. Authorized staff issue each stamp, so the count reflects visits your team actually saw.

Targets run from 2 to 50 stamps, and daily limits, cooldowns, and expiry are available for programs that need them. Multiple outlets share the same program rules, so the branch near the office and the branch near home behave the same way.

Related questions

What is a good loyalty program for a coffee shop?

Nine drinks, the tenth free, one stamp per day. A daily customer reaches the reward in about two weeks, which is close enough to feel worth starting, and the daily limit stops one transaction filling half a card. Count any hot drink rather than coffee alone, so staff never have to adjudicate.

Should delivery orders earn loyalty stamps?

Usually not, and you should say so on the card. Orders placed through a delivery platform cannot be validated by your team at the counter, and the platform already takes a commission that a loyalty reward would stack on top of. Restrict the card to orders placed with you directly.

How do you run a loyalty card during a rush?

By making it one action. Joining should be a scan the customer does themselves while waiting, and stamping should be a single staff action taken while the drink is being made. Anything that needs a second screen or a customer's details typed in will be skipped exactly when your volume is highest.

Ready to run a program instead of reading about one?

Set the target, choose the reward, print the join poster, and let your team stamp eligible visits from the first day.