Skip to main content
PricingOffers & Rewards
Open workspace
ArticlesHow-To Guides (sign in to open)
ArticlesIndustries

The right loyalty program for a grocery or convenience store

What you will take away

  • A half-sen give-back rate
  • Break-even in extra baskets
  • Members' price on three lines
On this page
  1. What a basket leaves
  2. What the chains give
  3. The break-even sum
  4. Higher rate, same loyalty
  5. Points or members' price
  6. Work at the counter
  7. Mark your lines first

Give back about half a sen for every ringgit, in one plain rule, and add as little work at the counter as you can. A grocery margin allows no more. At 99 Speed Mart, a chain of more than 3,000 mini-markets, about RM1.12 of the average basket is left after every cost and tax. Giving back 1% would take nearly a fifth of that. The evidence agrees. In the one supermarket study we read in full, a richer rate signed up more households and did not make them any more loyal once they had joined.

What a basket leaves

By our sum a RM21 basket at 99 Speed Mart leaves about RM1.12 of profit, and 1% back takes about 19% of it.

RM in the average basket

The basket
RM21.00
Gross profit
RM4.13
Profit after every other cost and tax
RM1.12
99 Speed Mart, three months to 30 June 2026. Our arithmetic from the totals it reported: yours will differ.

99 Speed Mart reported 146.4 million sales transactions for the three months to 30 June 2026, "with an average basket size of RM21.00". It had 3,151 outlets at the end of that quarter. Its interim report for the quarter shows gross profit (sales less the cost of the goods) of RM605.3 million and profit after tax of RM163.9 million.

Divide each by the transactions. This is our arithmetic: the company publishes only the totals. The average basket carried RM4.13 of gross profit, and RM1.12 of profit after every other cost and tax. A quarter earlier the same sum gave RM1.34 (RM188.6 million ÷ 141.1 million). Yours will differ again.

Against that RM1.12:

Give back On a RM21.00 basket Share of the RM1.12
0.5% 10.5 sen about 9%
1% 21 sen about 19%
2% 42 sen about 38%
9.1%: buy ten, get one free RM1.91 about 170%

A café can consider the last row, because a free coffee costs it little more than the ingredients. A grocer cannot. That quarter the goods cost the chain RM2,470.7 million of the RM3,075.9 million it took, about 80 sen in every ringgit. So a free item off the shelf costs, on average, four-fifths of its price.

What the chains give

My Lotus's converts 200 points to RM1, half a sen in the ringgit, and leaves tobacco and reloads out.

My Lotus's sits on the first row of that table. Its FAQ, read on 10 October 2026, says "You will earn 1 point for every RM 1 spent" and "You can convert every 200 points to RM1". Its terms put a point at RM0.005, and points lapse after a year.

FamilyMart's terms, read the same day, set "RM 1.00 = 1 point", before tax, with two years to spend the points on rewards in its app. The page gives no reward a price in points, so its rate cannot be worked out.

Both exclude some lines. My Lotus's lists "gift vouchers, tobacco or tobacco related products, mobile reload" and other reloads. FamilyMart lists tobacco, prepaid reloads and bill payments. Copy the rate first, then decide which of your lines should not earn.

The break-even sum

At a 19.7% gross margin, giving back 0.5% pays only if members spend about 2.6% more.

A program pays for itself only through extra baskets: the ones members would not have bought without it. Each brings in its gross profit, since rent and wages are already paid. Out of that it must cover the give-back on every basket the member would have bought anyway.

Divide the give-back rate by your gross margin less the give-back rate. Gross margin is gross profit as a share of sales. The chain's was 19.7% (RM605.3 million ÷ RM3,075.9 million). So 0.5% needs 0.5 ÷ 19.2: members must spend 2.6% more.

Give back Members must spend For a member who shops ten times a month
0.5% about 2.6% more one extra basket every four months
1% a little over 5% more one extra basket every two months
2% about 11% more more than one extra basket a month

Run it with your own margin. The sum is kind to the program. It assumes extra baskets carry your average margin, and it leaves out staff time and running costs. It is strict in one way only: it assumes every Point is spent. Budget that way, because in native.cards Points do not expire.

A gain that small is hard to see among a shop's ordinary ups and downs, so you will be judging the program partly on trust. If the sum asks for more extra baskets than you believe a card can bring, do not start with Points.

Higher rate, same loyalty

In one Dutch study from 1998 to 2000, a richer rate signed up more households but made members no more loyal.

The closest study of whether a card brings those baskets is Dutch, and we read it in the authors' manuscript. From July 1998 to July 2000, 1,909 households scanned every supermarket receipt at home, across 20 chains and all seven of their loyalty programs. The programs paid in two ways: "price discounts on certain items of the assortment for loyalty program members only", and saving points worth 0.5% to 4% of spend.

Members looked far more loyal than the program had made them. A chain's members gave it 36% of their supermarket spending on average, and non-members gave it 7%. But loyal shoppers are the ones who join. Once the authors allowed for that, membership itself was worth 4.1 percentage points. It was worth less in a household that carried rival cards: 2.4 points with four or more. How to test whether your program makes a difference explains the trap.

A higher rate brought people in and did nothing more. Richer points and deeper discounts each signed up more households, points more than discounts. After that, the authors write, "higher reward rates mainly stimulate customers to participate in the loyalty program, but do not affect the behavioral loyalty of customers once they are enrolled as members."

That is one country, over 25 years ago, and seven programs are few for comparing rates.

Two other studies, read only in their abstracts, add two points. Across 358 grocery banners (chain names) in 27 European countries, the program that helped was "the more basic LP variant that offers direct and immediate rewards", and it helped less "when operated by discounters". LP means loyalty program, and the abstract does not say which kinds counted as basic. At a convenience store franchise, heavy buyers were likeliest to claim their rewards and did not change their buying, while light and moderate buyers "gradually purchased more".

So pay the low rate, expect your daily customers to collect most of it, and look for the gain among the people you see once a week.

Points or members' price

Keep 1 Point for every RM1 and price RM1 off at 200 Points, or put a members' price on a few lines as an Offer.

Points on the whole basket. In native.cards, Points per unit of spend accepts anything from 0.01 to 1,000 for every RM1. On a thin margin it is tempting to lower it. Leave it at 1. "Part points are rounded down" on each purchase, so at half a point for every RM1 a RM1.90 purchase earns nothing, and at 0.01 nothing under RM100 does.

Set the give-back through the reward's price, under It costs: RM1 off for 200 Points is 0.5%. Switch on Can be earned more than once. It starts off, and while it is off each member can claim the reward only once. The cashier takes the ringgit off in your POS. native.cards records the claim and does not touch your prices.

At 21 Points a basket, 200 Points is ten baskets: five weeks for someone who shops twice a week, ten for the weekly shopper you have most to gain from. Once the program is live, its Overview flags any reward that a typical returning member takes more than eight weeks to earn: "Rewards that take longer than 8 weeks mostly go unfinished." Fifty sen off for 100 Points is the same rate at half the wait. See How soon should customers earn their first reward?

A members' price on a few lines. The saving is immediate. A customer who has not joined can read it on the shelf. It costs you only the units sold at that price. The price itself is your shelf label and your cashier's work. What native.cards adds is the card that shows who is a member, a place to list the deal and a way to announce it.

List the deal under Rewards And Benefits as an Offer, choosing It comes with membership, with a last day under Claim and use by. How to use perks, offers and events, not just points has the mechanics. Each new offer is checked by native.cards before members see it, so submit next week's deal early. A notification about it goes out as An offer or promotion, which "Only reaches members who agreed to offers". Zero notification fees.

Work at the counter

Points make the cashier enter each member's sale twice; counting Visits, or a POS connection, spares the amount.

Points need the amount of every member's purchase. Unless a POS connection is switched on for your business, the cashier enters the sale twice. They ring it up. Then, on the device that runs the Scanner, they scan the member's Wallet Card, type the amount again, enter their own Staff PIN and press Record purchase. That is a scan and about ten taps for every member, every visit.

An example with made-up numbers. A mini-market serves 120 customers between 6 and 7 pm, and a third are members: 40 purchases to record. At 15 seconds each that is ten minutes of a cashier's hour.

Time your own, and count the rest. An amount typed twice is sometimes typed wrong, and only a manager or admin can correct a staff error. If tobacco and reloads are not to earn, the cashier must leave them out of the amount. The Counter needs a connection. And for 10 sen, some members may leave their phone in a pocket. Typing a phone number or member ID and reading the name back is slower than a scan.

A members' price without Points asks less. Count Visits and no amount is asked: the cashier scans, enters the PIN and presses once. You still see who comes back and how often, though not what they spend. Qualifying spend, "a running total of what they have spent with you", brings the amount back without giving Points for it. Choose before you submit the program, because a live program's earning rules cannot be changed. See Points, stamps or visits: which should you use?

A POS connection takes the amount from the sale itself. Connections exist for Loyverse, Shopify, WooCommerce and Wix, where that connection is switched on for your business. The last two are online stores. The POS page in Settings says: "Connecting only records sales. Members earn after the owner turns on member credit for that system." Even then, "A sale is never credited on a guess". The customer on a Loyverse receipt must have the member's number as their customer code, or the email the member verified. Failing that, staff scan the card and enter the receipt number. Somebody still has to say who is buying.

Do this next

Before you write the rule, mark which lines should earn

Print last month's sales by line and walk round the shop with a pen. Strike out the lines that should not earn. Start with the ones My Lotus's and FamilyMart exclude, then anything that makes you only a few sen. Circle three lines people come in for every week that have enough margin to carry a members' price.

If what you struck out is a large part of your takings, a cashier will struggle to apply a Points rule by hand in the evening queue. Begin with the three circled lines, and count Visits.

Next in IndustriesThe right loyalty program for a fashion shop9 min read Previous: The right loyalty program for a tea or beverage chain

Related Articles

  • How much does a loyalty program cost you?Basics · 9 min
  • Points, stamps or visits: which should you use?Rewards · 10 min
  • How to use perks, offers and events, not just pointsRewards · 10 min
Sources 9
  1. 99 Speed Mart Retail Holdings Berhad, press release on its results for the second quarter ended 30 June 2026 (17 August 2026) 99speedmart.com.my
  2. 99 Speed Mart Retail Holdings Berhad, unaudited interim financial report for the second quarter ended 30 June 2026 99speedmart.com.my
  3. 99 Speed Mart Retail Holdings Berhad, press release on its results for the first quarter ended 31 March 2026 (18 May 2026) 99speedmart.com.my
  4. My Lotus's, Frequently Asked Questions (read 10 October 2026) corp.lotuss.com.my
  5. My Lotus's Rewards, terms and conditions (read 10 October 2026) corp.lotuss.com.my
  6. FamilyMart Malaysia, MYFamilyMart mobile app and its loyalty program terms (read 10 October 2026) familymart.com.my
  7. Leenheer, van Heerde, Bijmolt and Smidts (2007), “Do loyalty programs really enhance behavioral loyalty? An empirical analysis accounting for self-selecting members”, International Journal of Research in Marketing 24(1), 31–47 (read in the authors' manuscript, ERIM Report Series ERS-2006-076-MKT, November 2006) repub.eur.nl
  8. Bombaij and Dekimpe (2020), “When do loyalty programs work? The moderating role of design, retailer-strategy, and country characteristics”, International Journal of Research in Marketing 37(1), 175–195 (abstract) ideas.repec.org
  9. Liu (2007), “The Long-Term Impact of Loyalty Programs on Consumer Purchase Behavior and Loyalty”, Journal of Marketing 71(4), 19–35 (abstract) doi.org

Written by native.cards, 15 October 2026. Found a mistake? The publishing policy says how to tell us.

On this page

  1. What a basket leaves
  2. What the chains give
  3. The break-even sum
  4. Higher rate, same loyalty
  5. Points or members' price
  6. Work at the counter
  7. Mark your lines first
Back to top
More in this topicIndustries

On this page

  1. What a basket leaves
  2. What the chains give
  3. The break-even sum
  4. Higher rate, same loyalty
  5. Points or members' price
  6. Work at the counter
  7. Mark your lines first

native.cards is the Wallet‑first customer engagement platform (CRM), powering modern brand experiences in Apple and Google Wallet.

ImmuniWeb SSL Security Test

Explore

  • Features
  • Pricing
  • Offers & Rewards
  • How it works
  • About native.cards
  • Merchant workspace

Essentials

  • Education
  • How-To Guides
  • Legal
  • Terms of Use
  • Privacy Notice
  • Privacy & storage
  • Sign in

Company

PLATEHAUS SDN. BHD.

Owner and operator of native.cards

Business Registration No. [SSM]:
1646457-T
Business address
CT-06-21 Subang Square Corporate Tower
Jalan SS15/4G, SS15
47500 Subang Jaya
Selangor Darul Ehsan, Malaysia

A reason to return.

Get started
Support
support@native.cards
Operating hours
Monday–Friday · 8:00 AM–11:00 PMSaturday–Sunday · 10:00 AM–10:00 PMMalaysia time
native.cardsnative.cards© 2026 native.cards