Now in open beta — close the books in 2 days, not 2 weeks.Read the case study →
Retail & POS · April 30, 2026 · 9 min read

POS loyalty program: 25-40% redemption rates

You launched a loyalty program last year. 12,000 customers signed up. Less than 600 have ever redeemed anything. The program is not converting because the math does not work for the customer. Here is the loyalty structure that earns visible value, redeems easily, and changes repeat behavior.

Why most loyalty programs fail.

A 1% earn rate (€1 for every €100 spent) means a customer needs to spend €1,000 to earn €10 of value. Most customers never see the reward. They sign up, never redeem, and forget. Your program looks active by signups but is dead by behavior.

The math has to be visible. A first-time customer should see they earned a reward — even a small one — within their first or second visit. If their first reward is six visits away, they will not remember they were enrolled. The structure has to surface value early.

Earn rates that work.

Standard earn rate of 2-3% is the floor. Below that, customers do not feel the reward. Above 5% and the program becomes a margin disaster. The 2-3% range is where it changes behavior without breaking the P&L.

Layer with bonus categories. A grocery retailer can run 2% base earn plus 5% on the high-margin private-label SKUs they want to promote. The customer sees a higher reward, the retailer steers behavior to better margin items. Both win.

Multi-layer earn done right.

Three layers: program-wide base rate, product-specific bonus, time-bound campaign multiplier. A customer buys a bonus-eligible SKU during a 2x weekend campaign and earns base + product bonus + multiplier. The receipt shows the breakdown so they understand why they got more.

In Nonari this is built in. Every loyalty program can have product-level overrides and date-bound campaigns. The system computes the layered earn at point of sale and prints the breakdown on the receipt. Customers see the value visibly, which drives the next visit.

Base earn2-3% all SKUsProduct bonus+5% featured SKUCampaign 2xWeekend multiplierTier bonus+1-2% Gold memberReceipt totalAll four printed
Four stacking layers on one transaction. Print the breakdown — invisible earn is forgotten earn.
  • Base earn: program-wide rate (2-3%)
  • Product bonus: per-SKU multiplier on featured items
  • Campaign multiplier: time-bound 2x or 3x events
  • Tier bonus: for VIP segments, additional 1-2%

Redemption that does not require math.

Customers cannot do mental math at the counter. "1,250 points equals €18.75" loses them. Round redemption to clean amounts: 100 points = €1, or every 500 points = €5 reward. The customer either has enough or they do not. No calculator needed.

Even better, push redemption suggestions. "You have €20 in rewards available — apply now?" at checkout. Most customers say yes if they did not even remember they had rewards. The visibility at the counter is the conversion moment.

Expiry and FIFO done right.

Points must expire. An unexpiring point is a permanent liability on your books that grows forever. Standard expiry: 12 months from the earn date, with FIFO redemption — the oldest points get used first.

Communicate the expiry. A customer with 800 points expiring in 30 days should get a reminder. They will visit and redeem to avoid losing the points. That visit is the whole point of the program. Without the expiry-driven visit, the program is decoration.

The tier system that motivates.

Three tiers: Member (€0-€500 spent in 12 months), Silver (€500-€2,000), Gold (€2,000+). Each tier earns at a higher rate and unlocks small perks (early access, free wrapping, birthday reward). Movement between tiers happens annually based on rolling 12-month spend.

Tier movement is psychologically powerful. A customer at €480 in their 12-month window who sees they are €20 from Silver will make a small extra purchase to cross the line. The mechanic costs you nothing and changes behavior measurably.

Member€0-500 / 2% earnSilver€500-2k / 3% earnGold€2k+ / 4% earn + perks
Three tiers, three earn rates, three perk levels. The €20-to-Silver psychology drives extra spend that costs you nothing.

Customer-facing portal.

Customers should be able to check their balance, redemption history, and tier status from their phone. A simple URL or app link. Without visibility, customers forget they have points. With visibility, they engage.

Nonari has a customer-facing loyalty portal at /portal/loyalty/<token> — a per-customer link the customer can bookmark. They see balance, history, expiry warnings, and current tier progress. No app to install, no password to remember. The friction is zero, which is the whole point.

Measuring program ROI.

Track three metrics monthly: enrollment rate (new signups as % of new customers), redemption rate (active redemptions per active member), and incremental revenue (estimated extra spend driven by the program). All three should be growing.

A healthy retail loyalty program: 60%+ enrollment of new customers, 25-40% redemption rate of active members, and 10-15% incremental revenue per enrolled customer versus non-enrolled. Below those numbers, the program needs structural changes — usually earn rate, tier mechanics, or visibility issues.

Frequently asked

Common questions.

Can I run a loyalty program without a customer database?

You can run a punch-card style program (10th coffee free) without a database. Anything more sophisticated requires customer enrollment. The friction of enrollment is real but the data value is high — once you have customer purchase history, segmentation and targeted marketing open up.

How do I handle loyalty across multiple branches?

Single program, branch-aware redemption. A customer earns at any branch, redeems at any branch. The points balance is global. Some retailers run branch-specific bonuses (2x at the new branch for the first month) which works well for steering visits without fragmenting the balance.

What about expired points — should I notify before expiry?

Yes, three notifications: 60 days before expiry, 30 days before, and 7 days before. Each is a marketing touchpoint that drives a visit. Customers who get the 7-day "your €3.50 expires next week" message convert at very high rates, often the same day.

Should I exclude tax and discounted items from earn?

Standard global practice: earn on net sales (post-discount, pre-tax). The customer earns on the actual amount you receive, not on the inflated pre-discount or post-tax number. Document the rule clearly in the program terms so customers do not feel cheated when they see fewer points than expected.

Try nonari

Put your books on autopilot.

Free to start. No credit card. Bring your books, kick the tires, export everything if you decide to leave.