The six numbers
Write each formula down before the first month ends, so the definition cannot drift to fit the result.
| Number | Formula | Window | Where to read it |
|---|---|---|---|
| 1. New members | Members at the end of the period − members at the start | Each week, from launch | The member total and the weekly members chart |
| 2. Active members | Members with recorded activity in the window ÷ all members | Rolling 30 days | Members with activity in the last 30 days, shown as a share |
| 3. First-reward share | Members from one join month who reached a first reward ÷ members who joined that month | One card's span after they joined | Counted by hand from the customer list |
| 4. Redemption rate | Rewards used ÷ rewards reached, same members and period | 30 days, or the reward's validity if longer | Counted by hand for the join month in number 3: of those members, the ones whose reward shows as used |
| 5. Return within your interval | Of members who joined before the window, the share with activity inside it | Two median gaps between visits (a starting choice) | The customer list, filtered by an activity window you set |
| 6. Reward cost share | Rewards used × what one reward costs you ÷ sales to members | Calendar month | Rewards used, your cost of goods and your till |
Two definitions decide the rest. Activity is a stamp, points, credit or a reward recorded on a member's card, so a purchase never recorded against a card is invisible to every number above. A reward is reached when the card fills, used or not. Number 2 uses a fixed 30 days, generous for a café and harsh for a salon; number 5 uses your customers' own rhythm.
Where each number comes from
In Rewardfinity, the dashboard's Insights page shows the member total, the share of members with activity in the last 30 days, earning and rewards used over the same 30 days, a weekly members chart, and which days and hours members visit; the owner can download those totals as a CSV. That covers numbers 1 and 2. Its rewards-used count is shop-wide, so it cannot be divided by one join month's count from number 3.
The Customers list covers numbers 3 and 5. Its Reward ready filter lists members holding an unused reward; a member leaves it once the reward is used or expires, so add those whose profile shows the reward used. Its Active and Lapsed filters take any activity window from 1 to 730 days, so number 5 can follow your rhythm. The members CSV carries each join date, so one join month can be followed as a group; each export is capped at 2,500 rows.
Number 6 needs your till: the Insights page lists returning-customer revenue as "Not measured yet" rather than estimating it. For a spreadsheet, the REST API's /v1/insights endpoint returns the member total and 30-day counts for the original card; see the developer documentation.
The return interval: median days between visits
The return interval is the median number of days between one regular's visits: how often they come back when nothing is wrong. Use the median, not the average, because one holiday or illness stretches a single gap and drags the average with it.
Rewardfinity's dashboard does not calculate it: its visits chart shows busy days and hours across the shop, not one customer's gaps. Work it out by hand. Take a regular's visit dates from the dated entries under Recent loyalty activity on their customer profile, or from your till or booking records; subtract each from the next, sort the gaps and take the middle one, as the chart below does for one illustrative regular.
| Visit | Day | Gap since the previous visit |
|---|---|---|
| 1 | 0 | First visit |
| 2 | 3 | 3 − 0 = 3 |
| 3 | 7 | 7 − 3 = 4 |
| 4 | 12 | 12 − 7 = 5 |
| 5 | 18 | 18 − 12 = 6 |
| 6 | 24 | 24 − 18 = 6 |
| 7 | 33 | 33 − 24 = 9 |
| 8 | 54 | 54 − 33 = 21 |
| Gap length | Gaps | Which gaps |
|---|---|---|
| 1 to 7 days | 5 | 3, 4, 5, 6, 6 |
| 8 to 14 days | 1 | 9 |
| 15 to 21 days | 1 | 21 |
| Median | 6 | The fourth of the seven sorted gaps |
| Mean | 7.7 | 54 ÷ 7 = 7.7 |
Without the 21-day gap the mean would be 33 ÷ 6 = 5.5 and the median 5.5 as well, so the one long gap moves the mean by 2.2 days and the median by half a day.
Repeat it for five or six regulars and take the middle of their medians.
A worked month: following one month's new members
Read a join month as a group. Here a café with an eight-stamp card follows the 200 members who joined in one month through each member's first 60 days. "Came back" means a second recorded visit.
| Stage | Members | Share | Working |
|---|---|---|---|
| Joined in the month | 200 | All of the group | Start of the count |
| Came back at least once | 140 | 70% of joined | 140 ÷ 200 = 70% |
| Reached a first reward | 60 | 30% of joined: the first-reward share | 60 ÷ 200 = 30% |
| Used that reward | 45 | 75% of those who reached it: the redemption rate | 45 ÷ 60 = 75% |
Then the cost, on assumptions to replace with your own: a $5.50 average visit, a reward that costs $1.30 in goods, and 1,000 stamp-earning visits from these 200 members in their first 60 days. Sales were 1,000 × 5.50 = $5,500 and the 45 rewards used cost 45 × 1.30 = $58.50, so the reward cost share is 58.50 ÷ 5,500 = 1.1%.
The designed rate is the reward's cost over eight visits' spend: 1.30 ÷ (8 × 5.50) = 1.30 ÷ 44.00 = 3.0%. The measured 1.1% sits below it because most cards are still part-way. A group that stays far under the designed rate after its cards should have filled points at rewards nobody reaches or nobody wants; the break-even calculator in the cost guide shows how many extra visits pay for that cost.
Why there is no benchmark column
The six-number table has no "good" column on purpose. A published loyalty benchmark mixes businesses with different visit rhythms, reward sizes and definitions: it may count redemptions per member or per reward, and activity over 30 days or 90. A salon and a café can run equally healthy programs with very different numbers.
Compare each number with itself, in the same window: take your first full month as the baseline, read the six numbers on the same day each month, and act on a change that holds for two readings in a row.
Small counts swing. With 20 members who reached a reward, one more or one fewer using it moves the redemption rate by 1 ÷ 20 = 5 percentage points, so read every percentage next to its count.
What to change when a number moves
Each number points at one part of the program. Change one thing at a time, and read the same number again a full interval later.
| When this moves | It usually points to | Change first |
|---|---|---|
| New members flat | The ask at the counter has stopped happening | The one sentence said at the till, and whether every shift says it, as set out in how to start a loyalty program |
| Active share falling | Members drifting past their usual gap | The timing of a come-back message, set from your return interval |
| First-reward share low | A threshold too high for how often customers visit | Fewer stamps, or a smaller reward that funds a shorter card; the loyalty card template shows the discount for each card length, and the break-even calculator what a shorter card must earn back |
| Redemption rate low | A reward that is unclear, unattractive or hard to claim | Name the reward exactly, and check it can be redeemed at the counter in one step |
| Return within interval falling | Regulars coming less often than they used to | What changed for them first: opening hours, the menu, the queue |
| Reward cost share above the designed rate | A reward costed at menu price, or bonus rules stacking | The bonus rules, then the reward's cost |
The threshold also decides whether a regular can finish the card before it expires. A regular fills a card in about (stamps − 1) × median gap days, if the first stamp is earned on the visit the card is issued; if the card is issued before the first stamp-earning visit, as with an online sign-up, add one gap.
| Stamps to a reward | Gaps between first and last stamp | Days at a 6-day median | Inside 60 days? | Inside 90 days? |
|---|---|---|---|---|
| 6 | 5 | 5 × 6 = 30 | Yes | Yes |
| 8 | 7 | 7 × 6 = 42 | Yes | Yes |
| 10 | 9 | 9 × 6 = 54 | Yes, with 6 days spare | Yes |
| 12 | 11 | 11 × 6 = 66 | No | Yes |
At eight stamps and a 6-day median, a regular needs about 42 days, or 48 if the card was issued before the first stamp, so a 90-day validity leaves room for a missed week or two. A Rewardfinity digital stamp card can have no expiry, a fixed end date or a set period after issue; choose the period from this table.
For members who lapse, Rewardfinity's "We miss you" message can be set to go after 7 to 365 days without a visit, and it stops when the customer comes back. About three median gaps, 18 days for the regular above, is a starting choice, not a rule; adjust it from the active share.
Questions people ask
What KPIs should a small business track for a loyalty program?
Six cover most small programs: new members each week, the share active in the last 30 days, the share of a join month that reaches a first reward, the redemption rate, the share who return within their usual interval, and reward cost as a share of member sales. Give each a written formula and a fixed window, and compare against your own first month.
How do I calculate loyalty program redemption rate?
Divide the rewards used by the rewards members reached, counting the same members over the same period. If 60 members filled a card and 45 used the reward, the redemption rate is 45 ÷ 60 = 75%. Count a reward as reached when the card fills, whether or not it has been used, and allow time: a reward earned yesterday has had no chance to be used yet.
How do I calculate how often customers come back?
List one regular's visit dates, subtract each from the next to get the gaps, and take the median gap. Gaps of 3, 4, 5, 6, 6, 9 and 21 days give a median of 6 days, while the one long gap pulls the average up to 7.7. Repeat for several regulars and use the middle of their medians.
What counts as a good loyalty program redemption rate?
There is no honest universal figure: published numbers mix different businesses, reward sizes and definitions. Use your own baseline instead: the redemption rate for your first full month, read the same way each month. A rate that falls while members still reach rewards usually means the reward is unclear, unattractive or hard to claim at the counter.
How long before I can tell whether my loyalty program works?
Joins show from the first week. Whether members reach a reward shows after one card's span: at eight stamps and a regular who visits every 6 days, about 42 days. Return behaviour needs at least two of those spans, so a first fair reading of all six numbers comes after about three months, compared with your first full month. Before then, judge joins and first rewards, not repeat visits.
Write down this month's six numbers today.
Next month's reading only means something next to this one.