Here's the thing nobody tells you when you launch a points-based loyalty program: your points are a liability. Every point you issue is a promise to give up something of value later. Airlines book their loyalty liability as a line item on their balance sheet for a reason — when you're sitting on billions of miles, that's real money owed to real customers.
Your shop is not an airline, but the accounting principle is identical. If you don't think about points as a liability, you will accidentally design a program that hemorrhages margin.
The three numbers every program needs to track
1. Points issued
Total points awarded to customers this month. Every earn event adds to this. Pounds tracks this automatically in the Transaction ledger under types EARN, REFERRAL_BONUS, BONUS.
2. Points redeemed
Total points spent on rewards this month. Pounds tracks this under type SPEND.
3. Breakage
The percentage of issued points that will never be redeemed. Typical range for small shops: 40–70%. Customers forget, leave, or never hit the minimum threshold. The unredeemed points are — for accounting purposes — free. They were promises, but the promise is never called in.
Your effective cost per point = face value × (1 - breakage).
A worked example
Say your program gives 1 point per $1 spent, and 100 points = $5 off a future purchase. That's an effective 5% discount, max.
If your breakage is 50% (typical), your real cost is 2.5%. That's your true acquisition discount.
Now compare to: 5% off for every 10th visit. Same headline discount. But the 10th-visit structure has much higher breakage (probably 75%+), so the real cost is ~1.25%.
Conclusion: structuring a program around thresholds rather than accumulation tends to be more margin-friendly, because threshold programs have higher breakage. But they also tend to generate less engagement. It's a tradeoff.
The breakage trap
Here's the failure mode to avoid: designing a program that only works if breakage stays high. Your shop gets more popular. Customers get more engaged. Redemption rates climb. Suddenly what looked like a profitable program is losing money — because you priced it assuming customers wouldn't actually use it.
The fix is to model your program at 0% breakage. If the economics still work when every point gets redeemed, the program is safe. If it only works because customers forget, you have a ticking clock.
How Pounds thinks about it
We built the Pounds ledger and analytics system specifically so shop owners can see their points liability in real time. Call the Admin API:
GET /api/v1/analytics/summary
This returns points.issued, points.redeemed, and — by subtraction — the current outstanding liability. You can chart this month over month, set an alert if it climbs above a threshold, and make informed decisions about whether to tighten or loosen your program.
One more subtlety
When you increase reward costs or decrease point earn rates, you're effectively confiscating previously-issued value. Customers notice this. They notice it emotionally, even if the change is small. A program that gets less generous over time creates more churn than it saves margin.
The better play is to design a conservative program day one and add generosity selectively over time (for top tiers, for special events, for loyal customers). Adding is always cheaper than subtracting.
TL;DR
- Your points are a liability, not free marketing.
- Your real cost = face value × (1 − breakage).
- Design assuming 0% breakage.
- Make programs more generous over time, not less.
If you run a shop on Pounds and want a second pair of eyes on your program's numbers, email hello@pounds.network. We do informal reviews for free.