The short answer
A standing 10% discount reaches every customer on every visit, including the ones who were already walking in. An earned reward reaches only the customer who came back enough times to earn it. Both cost you money. Only one of them asks the customer to do something first.
That condition is the whole product. A price cut recruits people for whom 2 SAR changes a decision, and it stops working the day you withdraw it. A reward that arrives on the seventh visit gives someone a reason to make the fourth, and it costs you nothing until they get there.
Below is the arithmetic, run on a coffee shop with a 20 SAR ticket and 6 SAR of ingredients in the cup. Swap in your own ticket and your own cost of goods. The conclusion moves with those two numbers, so do the substitution before you decide anything.
The margin table: 10% off against a buy-6 card
Assumptions, written out so you can argue with them: 1,000 paid sales a month, an average ticket of 20 SAR, and 6 SAR of cost of goods per sale. That is 20,000 SAR of revenue and 14,000 SAR of gross contribution before any offer. A 70% gross margin is normal for espresso drinks and nowhere near normal for phone accessories, so check your own figure first.
The reward column is calibrated on purpose to hand back the same retail value as the discount. One hundred free drinks a month at 20 SAR each is 2,000 SAR, and so is 10% of 20,000 SAR. Those 100 completed cards account for 600 of the month's paid sales.
Same retail value given away, 2,000 SAR against 2,000 SAR. Very different cash. The discount comes out of revenue and the reward comes out of the storeroom. That is the most useful thing to understand about the two mechanics, and it holds in any business where the item you give away costs less than you sell it for.
Both columns assume the same 1,000 sales, and that assumption is doing most of the work. If the discount lifts volume and the card does nothing, the discount wins on this sheet. There is also a case where the 6 SAR figure is wrong: if your 8am is already at capacity with a queue at the counter, the free cup displaces a paid one, and its honest cost climbs toward the full 20 SAR.
| Line | Standing 10% off | Buy 6, 7th free |
|---|---|---|
| Paid sales | 1,000 | 1,000 |
| Revenue collected | 18,000 SAR | 20,000 SAR |
| Cost of goods sold | 6,000 SAR | 6,600 SAR (includes 100 free drinks) |
| Gross contribution | 12,000 SAR | 13,400 SAR |
| Change vs no offer at all | -2,000 SAR (-14.3%) | -600 SAR (-4.3%) |
| Retail value handed back | 2,000 SAR | 2,000 SAR |
| Sales that receive the offer | 1,000 of 1,000 | 100 of 1,000 |
| Visits required to receive it | 0 | 6 |
Your stamp count is a discount rate
One free item after n paid items hands back 1/n of the retail value you collected. There is no way around it. The stamp count you picked because it looked friendly on the card is a discount rate, and most owners have never converted it.
Ten paid and the eleventh free is arithmetically identical to a 10% discount. Five paid and the sixth free is a 20% discount. Owners who tell me a permanent 10% is too expensive are often running a 5-stamp card, which gives back twice as much retail value. It does not feel that way, because the money leaves in one visible cup instead of hundreds of invisible slices.
Then subtract breakage. If 40 of every 100 enrolled customers reach the sixth stamp, your real payout is 40% of the table above. Read that in both directions: cheaper for you, and 60 people who were promised something and never received it.
The practical rule is to set the stamp count so a normal customer of yours finishes in four to eight weeks. Count your regulars' real visit frequency before you choose. At two visits a month, a 6-stamp card is a three-month wait, and it will feel like one.
| Card design | Retail value handed back | Cash cost as % of revenue |
|---|---|---|
| 5 paid, 6th free | 20.0% | 6.0% |
| 6 paid, 7th free | 16.7% | 5.0% |
| 8 paid, 9th free | 12.5% | 3.8% |
| 10 paid, 11th free | 10.0% | 3.0% |
| 12 paid, 13th free | 8.3% | 2.5% |
What each offer selects for
A price cut is a filter, and it selects for the customers you would least like to build a business on. They compare, they move when the shop next door goes to 15%, and they rarely return at full price. A conditional reward filters the other way. Nobody starts a 6-visit card unless they already expect to be back, so customers sort themselves into your regulars list before you have spent anything.
There is also the problem of taking it back. A price you hold for ten weeks becomes the price in the customer's head. Work on reference dependence and loss aversion, going back to Kahneman and Tversky, says the return to 20 SAR registers as a 2 SAR loss rather than the end of a promotion. Losses weigh more than gains of the same size. An earned reward never creates that problem, because the shelf price never moved.
Two published findings are worth borrowing. Kivetz, Urminsky, and Zheng studied coffee-card holders in 2006 and found purchases sped up as the card filled: the closer the reward, the shorter the gap between visits. Nunes and Drèze, also in 2006, found car-wash cards printed with 10 slots and 2 already stamped completed more often than 8-slot cards with identical work left. If you run a stamp card, stamp one at enrollment.
A half-filled card is something the customer owns, and going elsewhere forfeits it. A discount builds no such cost. The day someone else is cheaper, nothing is holding anybody. It is also why a card living in Apple Wallet or Google Wallet does more work than a paper one, since it sits beside the boarding passes instead of a drawer and is still there in six weeks.
Sort your customers into three groups before choosing. The regular who visits eight times a month: a standing discount pays them to do what they were doing anyway, which is straight margin leakage. The near-regular who visits twice a month and could visit four times: this is who the reward is built for, and where the return comes from. The passer-by who will never return: neither offer reaches them, so do not design for them.
When a discount is the right answer
Discounts are not the villain here. Undated, unconditional discounts are. There are three situations where a price cut is clearly the better instrument and a loyalty card is the wrong tool.
First, perishable stock with a deadline. Thirty percent off pastries after 9pm beats putting them in the bin, and no reward program clears tonight's tray. Second, categories where the decision genuinely is price, such as groceries, phone accessories, or a laundry with a competitor 200 meters away. Third, launch week. You need the first 100 cards in wallets before a reward program has anything to work with, and a one-week offer that gets people to scan the QR is money well spent.
In all three the offer has a stated end date, and that is the difference that matters. Waya ships a discount card type alongside stamp, points, and balance cards, so none of this is an argument against discounts. It is an argument against ones with no expiry and no condition.
One honest limitation while we are on the subject: Waya has no POS integration. A discount card does not apply itself at the till. Your cashier reads the card on a phone and applies the discount by hand.
Running the reward side without an app or a new till
The mechanics are deliberately thin. The customer scans a QR code at your counter, types a first name and a mobile number on one screen, and taps once to add the card to Apple Wallet or Google Wallet. Any other device or browser gets a web card. No account, no password, nothing to install.
On your side there is no POS integration and no hardware. Staff add a stamp by scanning the customer's card on an ordinary phone, using the web dashboard or the Waya merchant iOS app. Waya sits next to whatever terminal you already use. One card can cover several branches, and every scan rolls into one dashboard. More than 100 shops across Saudi Arabia run this setup, with 5,000+ customer cards currently in wallets and an average rating of 4.9 out of 5 from 90 merchants.
The dashboard is what settles this argument for your specific shop. It shows visits, redemptions, new against returning customers, and which regulars have gone quiet, with win-back messages sent from the same screen. Passes update themselves and messages land on the lock screen, including passive reminders when someone is near a branch, configured on the Branches screen. No SMS is involved, so no customer number is handed to a third-party messaging app.
The free plan is 0 SAR forever: up to 100 customers, 100 wallet messages a month, 1 stamp card, 1 branch, your own card design, and the full dashboard, with no credit card. It stops hard at 100 customers, and everyone already enrolled keeps collecting. Growth is 85 SAR a month (867 SAR a year) and Premium is 149 SAR a month (1,520 SAR a year), with no commission on sales and no per-card fee.
For comparison, and worth verifying yourself: Btaqa publishes tiers at 108, 250, and 380 SAR a month, OneCup is around 150 SAR a month, Watily is 149 SAR a month with loyalty bundled into a wider plan, and Niqati, the best-known name in the Saudi market, quotes per shop. Those are vendor-published figures as of August 2026. The structural difference is the starting point, since every one of them begins with a paid subscription. Run a 6-stamp card on the free plan for eight weeks and you will have the one number this article cannot give you, which is your own completion rate.
Frequently asked questions
Is a 10% discount cheaper than a buy-6-get-1-free card?
No, not once you count cost of goods, because a discount comes out of revenue while a free item only costs what it costs you to make. On a 20 SAR ticket with 6 SAR of ingredients and 1,000 sales a month, a permanent 10% discount gives up 2,000 SAR of revenue. Handing one free item to every customer who buys six gives back the same 2,000 SAR of retail value for about 600 SAR of goods. The discount also lands on all 1,000 sales, including the customers who would have paid full price.
How many stamps should a loyalty card have?
Pick the number a normal customer of yours can finish in four to eight weeks. Count how often your regulars actually visit first: at two visits a month a 6-stamp card is a three-month promise and most people quit, while at eight visits a month 10 stamps finishes comfortably. The arithmetic to respect is that one free item after n paid items hands back 1/n of retail value, so 5 paid is a 20% discount and 10 paid is a 10% discount.
Do my customers need to download an app to use a stamp card?
No. With Waya the customer scans your QR code, types a first name and a mobile number on one screen, and taps once to add the card to Apple Wallet or Google Wallet. Any other device or browser gets a web card instead. There is no account, no password, and nothing to install on the customer's phone.
Can I stop a discount once I have started it?
You can, but expect it to be read as a price increase rather than the end of a promotion. A price you hold for a couple of months becomes the customer's reference price, and going back to the old one registers as a loss, which research on loss aversion says people weigh more heavily than an equal-sized gain. That is the main practical reason to put an end date on any discount from day one, or to use an earned reward instead, where the shelf price never moves.
What happens after 100 customers on the free plan?
The free plan stops enrolling new customers at 100 and stops sending at 100 wallet messages a month, and everyone already enrolled keeps their card and keeps collecting stamps. To go past that, Growth is 85 SAR a month (867 SAR a year) with unlimited customers, up to 10 cards, 3 branches, and 5,000 messages a month. Premium is 149 SAR a month (1,520 SAR a year). There is no commission on sales, no per-card fee, and no setup fee.