Platform comparisons

Discounts or loyalty rewards: which costs less?

A loyalty reward almost always costs less than a discount, because a 10% discount reduces margin on every single transaction while a free tenth item costs roughly the food cost of one item spread across ten full-price sales: typically under 2% of what that customer spent.

Most small businesses reach for a discount first, because it is immediate and needs no system. It is also the most expensive way to buy a repeat visit, and the cost is invisible because it never appears as a line item: it appears as a slightly thinner margin on everything.

Which is cheaper, a discount or a loyalty reward?

A loyalty reward is cheaper in almost every case, because it is paid once after several full-price purchases while a discount is paid on every purchase including the ones that would have happened anyway.

10% off everythingFree 10th item
Cost per €4 sale€0.40, every timeNothing
Cost across 10 sales€4.00~€1.00 (cost of one item)
As a share of €40 spent10%~2.5%
Paid on customers who would have come anywayYes, all of themOnly after 10 visits
Encourages a return visitNoYes, progress is visible
Easy to stopHard; it becomes the expected priceYes; the card simply ends
Cost of a 10% blanket discount vs a free 10th item, per 10 sales€ per 10 sales
  • 10% off everything (10 sales)4
  • Free 10th item (10 sales)1

From the comparison above, for an item costing about €1 to make.

The row that decides it is the last but one. A discount given for long enough stops being a discount and becomes your price, and taking it away reads to customers as a price rise. A reward can be retired without anyone feeling they lost something they were owed.

Why does a discount cost more than it looks?

Because it applies to demand you already had. If eight of every ten customers were coming regardless, a blanket discount pays eight of them to do what they were going to do and only changes the behaviour of the other two.

The margin effect is also larger than the headline. On a product with a 60% gross margin, a 10% discount removes about a sixth of the gross profit on that sale, so you need roughly a fifth more volume just to stand still.

Gross margin10% discount removesExtra volume needed to break even
30%a third of gross profit~50%
50%a fifth of gross profit~25%
60%a sixth of gross profit~20%
70%about a seventh~17%

Those figures are arithmetic rather than a claim about any particular business, and they are worth running on your own numbers before any discount is advertised. A 20% off promotion on a 30% margin is close to giving the product away.

When is a discount the right choice?

When the goal is to shift specific stock or fill a specific empty hour, and the offer has an end date attached. A discount is a good tool for a problem with a deadline and a bad tool for an ongoing relationship.

  • Perishable stock that will otherwise be thrown away: the alternative is 100% loss, so any recovery wins.
  • A dead hour where the marginal cost of serving is near zero and the staff are already paid.
  • A first visit from someone who has never bought from you, where the discount buys a trial rather than a habit.
  • Clearing seasonal stock to make room, where holding cost is the real problem.

In each of those the discount is doing something a loyalty card cannot: acting now, on a specific problem, for a defined period. What it should not do is run permanently in the hope of building loyalty, because a customer attracted by price leaves for the next price.

Can you run both at once?

You can, and the clean way is to keep the loyalty card as the standing mechanism and use discounts as occasional, dated exceptions announced through the card. The base scheme stays legible and the promotion carries its own explanation each time.

What to avoid is stacking them without thinking: a discounted item that also earns full loyalty credit is being paid for twice. Decide in advance whether discounted purchases earn, state it in one sentence, and keep it consistent.

What about a discount as the loyalty reward itself?

Money off works well as a points reward and badly as a stamp reward. A points scheme is already denominated in currency, so "€10 off at 200 points" is legible; a stamp card promising 10% off after a set number of visits is both less generous and harder to picture than a free item.

The free item wins on perception for a specific reason: its perceived value is the menu price while its cost to you is the cost of goods. A €4 coffee that costs under a euro reads as a €4 gift. A €4 discount costs you €4.

How do you compare them on your own numbers?

Work out the cost of goods on the item you would give away, multiply by how many rewards you expect to hand out in a year, and compare that with your annual revenue multiplied by the discount you were considering.

  1. Take the reward item's cost of goods, not its menu price.
  2. Estimate how many customers will complete a card in a year, and multiply.
  3. Take your annual revenue and multiply by the discount percentage you were considering.
  4. Compare the two. In most small businesses the second number is several times the first.

For a café with 300 regulars completing two cards a year, a €1 cost of goods gives €600. A 10% discount on €150,000 of revenue is €15,000. The loyalty programme is not marginally cheaper; it is a different order of magnitude, and Loonine's calculator runs the same comparison on your figures.

Does a loyalty reward attract the same customers as a discount?

No, and that is most of the argument. A discount is visible to everyone including people who have never bought from you, so it recruits price-sensitive customers who leave for the next offer. A reward is invisible until someone has already chosen you once, so it only ever reaches people who have demonstrated they will pay full price.

That selection effect compounds. A year of discounting leaves a business with a customer base trained to wait for the next promotion; a year of loyalty rewards leaves it with a list of people who buy at full price and come back. The second base is worth more even if both produce the same revenue this quarter.

What about a discount for joining the programme?

Give progress instead. Two free stamps on a ten-stamp card at sign-up costs nothing today and exploits a well-documented effect: people pursue a goal harder when it has already been started for them than when they begin at zero.

A joining discount attracts precisely the wrong outcome, which is someone who joins for the discount and never returns. You have then paid to acquire a customer record that will never be used.

How do you stop discounting once you have started?

Replace it rather than withdraw it, and give the replacement a reason to exist. Announcing that the standing discount ends produces a price rise in the customer's mind; announcing that it is becoming a loyalty card with a free tenth item gives them something to collect instead.

Time it to a natural boundary: a new year, a refit, a menu change, so the change has a story attached. And run the arithmetic first: if the discount was 10% and the card is worth 2.5%, that is a real margin recovery, which is worth knowing before anyone asks you to justify it.