How to Build a Customer Loyalty Programme With AI Personalisation

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for How to Build a Customer Loyalty Programme With AI Personalisation.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for How to Build a Customer Loyalty Programme With AI Personalisation.

Design the programme yourself first: one simple reward rule your margins can carry, such as milestone rewards or every tenth visit free. Then add AI as the personalisation layer: it sorts customers into behaviour groups from your booking or sales export, suggests the right nudge for each group, and drafts messages that your booking system or email tool sends automatically.

The order matters because AI can't rescue a weak offer. A points scheme that takes a year to earn anything stays ignored however cleverly the emails are worded. And most small businesses don't need dedicated "AI loyalty software" to start: a data export, a chat assistant and the booking or email tool you already use get you most of the way, provided the personalisation is based on what customers do with you, not guesses about their lives.

Follow me on Instagram@sagnikteaches

Get the reward maths right before any AI

Every loyalty reward has a cost, and the biggest part is invisible: the rewards you give to people who would have come anyway. The programme only pays if it creates extra visits or keeps people who would otherwise have left.

Connect on LinkedInSagnik Bhattacharya

A quick sum for an illustrative yoga studio with 180 active members. Sixty of them buy 10-class packs at $150 ($15 a class) and come about five times a month; the rest are on a $120 monthly membership. The owner considers "every tenth class free" for pack holders.

Subscribe on YouTube@codingliquids
  • Pack holders attend about 300 classes a month between them.
  • One class in ten free means about 30 free classes a month, worth $450 at pack prices.
  • To break even, the programme has to produce $450 a month of revenue that wouldn't otherwise exist: roughly 30 extra paid classes, or about four people who stay on a $120 membership instead of leaving.

That is a realistic bar, but not an automatic one. The owner compared it with milestone rewards instead: a free workshop place at the 50th class and a studio tote at the 100th. Because milestones arrive less often, the monthly cost came out at around a third of the stamp-card version, and the rewards felt more personal. That became the plan. Whichever you choose, write the break-even number down; it's what you'll measure against.

Pick a structure: stamps, points, tiers or milestones

StructureHow it worksSuitsWatch-out
Stamp or visit cardEvery nth visit freeFrequent, low-price visitsMostly rewards people who'd come anyway
PointsSpend earns points towards rewardsShops with many products and pricesHarder to explain; unredeemed points pile up
TiersStatus levels by spend or visitsBusinesses where top customers spend far moreMoving someone down a tier feels like a punishment
MilestonesRewards at 25, 50, 100 visitsStudios, gyms, lessonsSlow for newcomers; add an early one
Referral creditReward for bringing a friendHigh-value, word-of-mouth servicesNeeds a rule to stop self-referrals
Member perksPriority booking, early accessServices with limited slotsOnly works if slots really are scarce

Different businesses land in different places. A tattoo studio's clients may come back once a year, so a stamp card is pointless; referral credit and first access to flash days work better. A personal trainer's clients respond to consistency rewards, such as a free session after twelve weeks without a missed booking. For referral schemes specifically, running a referral programme with automated reminders covers the mechanics.

What AI personalisation means at small-business scale

Big retailers run models that predict each customer's next purchase. With a few hundred customers you don't have the data for that, and you don't need it. Personalisation here means three steps, with AI helping in each:

  1. Group customers by behaviour. AI analyses your export and proposes groups based on how often, when and what people buy or book.
  2. Choose the next nudge for each group. You decide the reward or message for each group; AI suggests options and timing.
  3. Write the message variants. AI drafts one message per group, with merge fields for the details that make it feel individual.

The sending itself is usually plain automation: a rule in your email or booking tool that fires when someone enters a group or reaches a milestone. That's worth being honest about. The "AI" is in the analysis and the writing; the programme runs on rules, which is exactly what makes it predictable.

Segmenting customers from a booking export

Export three to six months of bookings: member number, pass or membership type, class name, date and time. Remove names and contact details before uploading. Then:

Attached: 6 months of class bookings for a yoga studio. Columns:
member_id, pass_type, class_name, class_datetime. IDs are anonymised.

1. Group members by behaviour. Suggest 5-7 groups a studio owner would
   recognise (e.g. regular weekday attenders, weekend-only). For each group,
   give the rule you used, the member count and 3 example member_ids.
2. Flag members whose attendance in the last 4 weeks is less than half
   their average over the previous 8 weeks.
3. List members within 5 classes of their 50th or 100th class.
Show counts, not just percentages. Don't guess at reasons.

An illustrative result:

Steady regulars (2+ classes a week, 8+ weeks running)     46
Weekend-only (80%+ of classes on Sat/Sun)                  27
New starters (first class in the last 60 days)             22
Workshop fans (attended 2+ workshops)                      11
Slipping (last 4 weeks under half their usual rate)        19
Dormant (no class in 30+ days, pass still active)          35
Near a milestone: 7 members within 5 classes of 50; 2 of 100

Check the groups against what you know before acting. In this case the owner recognised four of the 19 "slipping" members as people who'd mentioned holidays, so they came out of that group. The workshop fans group was too small to deserve its own message; it merged into steady regulars with a line about the next workshop. Spot-check three member numbers per group in the raw export, too; assistants occasionally put a member in two groups.

Choosing the next nudge for each group

Here is the studio's filled-in plan. Each row is one automation or one monthly manual send.

GroupTriggerNudge or rewardChannel
New startersThird class in first month"You're three classes in" message plus a free mat hire on the fifthEmail
Near a milestoneWithin 3 classes of 50 or 100Heads-up that the reward is close, then the reward itselfEmail, then in person
SlippingAttendance halves over 4 weeksPersonal note from their most-booked teacher, no offerEmail from the teacher's name
Dormant with active pass30 days without a classReminder that classes remain on their pass, with the three classes they booked mostEmail or text
Weekend-onlyMonthlyFirst look at weekend workshops before general releaseEmail
Steady regularsMonthlyNo offer; a thank-you and priority booking for the next workshopEmail

Notice that the slipping group gets no discount. A discount to someone drifting away teaches them that drifting pays. A note from a teacher they know tends to work better and costs nothing. Discounts, if any, go to the dormant group after other nudges have failed; winning back lapsed customers with personalised emails covers that stage in detail.

Writing personalised messages that don't feel creepy

The line between thoughtful and unsettling is simple: mention what customers would expect you to know, which is their bookings and purchases with you, and never infer anything about their lives. "We've missed you in Tuesday's slow flow" is fine. "Hope everything's OK at home" after a drop in attendance is not.

Draft a short email from {teacher_name}, a yoga teacher, to a member whose
attendance has dropped. Use these merge fields: {first_name},
{most_booked_class}, {classes_left_on_pass}.
Rules: under 70 words. No discount. No guesses about why they've been away.
No guilt. One gentle question they can reply to. Sign off with the
teacher's first name only. Warm, plain tone.

Before the brief was tightened, the first draft (illustrative) read: "We've noticed you haven't been coming as often lately and we hope everything is alright! Life can get busy and stressful. Why not treat yourself to 20% off your next pack?" It guesses at the reason, adds an unrequested discount and sounds like a system. After the rules above, the draft became:

Hi {first_name},
It's been a little while since I saw you in {most_booked_class}, and the
room's not quite the same. No pressure at all. You've still got
{classes_left_on_pass} classes on your pass whenever you're ready.
Is there a time or class that would suit you better at the moment?
{teacher_first_name}

One realistic check before sending: make sure every merge field has a value. A member with no classes left would receive "You've still got 0 classes on your pass", which reads oddly; set the automation so only members with classes remaining get this version.

Tools you can run it on

  • Your booking system or till first. Many studio, salon and gym booking platforms include referral credits, milestone tracking or rewards. Check before buying anything else; it's usually the least effort because visit data is already there.
  • Square Loyalty. For businesses taking payment on Square, it's priced per location according to monthly loyalty visits, in bands of 0-500, 501-1,500 and 1,501-10,000, and shows an estimated price when you set it up.
  • Smile.io, for online shops. Free up to 200 orders a month with points and referrals; Essential $15 a month up to 500 orders; Standard $79 up to 1,000 orders, which adds VIP tiers; Growth $199 up to 2,500 orders (list prices, checked September 2026).
  • Spreadsheet plus email tool. For a few hundred customers, a monthly export, the AI grouping above and tagged sends from your email tool is a perfectly workable programme. It is also the cheapest way to learn what your customers respond to before committing to software.

Launching the programme without a fuss

A loyalty programme needs three pieces of writing before it goes live, and AI can draft all three in one sitting: the announcement, the short rules, and a line for staff to say at the desk.

The announcement should say what people get and when, in two sentences. An illustrative draft for the studio, after editing: "From 1 November, every class you take counts towards a reward. Your 50th class earns a free workshop place, your 100th a studio tote, and we'll email you when you're getting close." Resist the AI's tendency to add "exclusive", "VIP" or "journey"; members only need to know what happens.

The rules should fit on a card. Ask the assistant for five lines covering what counts, when rewards expire, whether they can be transferred, and what happens if the programme changes, then check each against what you actually intend. A typical draft line such as "rewards never expire" may not be what you want once you've thought about it; twelve months is a common, fair choice. If you run the programme across different payment systems, also say whether classes bought on an older pass count.

The desk line is the one people forget. Something short, said when a member checks in close to a milestone: "Three more and your workshop's free." It turns a database rule into a moment someone notices, which is where loyalty actually comes from.

Worked example: a 180-member yoga studio's first quarter

Pulling the pieces together for the illustrative studio. Setup took about seven hours: the reward maths and structure (two hours), the first export and grouping (one hour), the nudge plan (one hour), drafting and editing six message templates with AI (two hours), and building the automations and milestone tracking (one hour). After that, the owner spent about 45 minutes a month re-running the grouping on a fresh export and sending the manual messages.

To measure it properly, one member in ten was held back from all nudges for the quarter (but still got milestone rewards, since those were promised publicly). At the end of the quarter, in this illustration:

MeasureNudged membersHeld-back members
Average classes per member per month6.15.4
Dormant members who came back within 30 days13 of 311 of 4
Members who cancelled during the quarter9 of 162 (6%)2 of 18 (11%)

The held-back group is small, so treat the difference as a direction rather than a precise figure. The useful comparison is against the break-even number written down at the start: if the extra classes and avoided cancellations are worth more than the reward cost each month, the programme is paying. If they aren't, change one thing, such as the reward or the slipping-member message, and run another quarter.

A tattoo studio and a personal trainer need different rewards

A tattoo studio: rewards for introductions, not visits

A tattoo studio's regulars might book once or twice a year, so personalisation is about timing, not frequency. The AI grouping here uses the booking history: clients whose last piece was over a year ago, clients who've asked about a larger piece, and clients who've referred someone before. The programme gives referral credit off the next session and first access to the flash day list. The personal touch is in the message: "Your last piece was the botanical sleeve start; {artist_name} has an opening in March if you want to continue it." That line comes from the booking notes, which the artist checks before anything is sent, because AI summarising booking notes can mix up two clients' plans.

A personal trainer: consistency over spend

A personal trainer with 25 clients rewards streaks: twelve consecutive weeks without a missed session earns a free session. The AI's job is small but useful: each Friday, the trainer pastes the week's session log into a chat assistant and asks which clients are two weeks from a streak reward and which have missed two sessions in a row. The first group gets an encouraging text; the second gets a check-in call. At this size, the value isn't clever prediction. It's that the trainer never forgets to notice.

Signs the programme is costing more than it earns

  • Redemptions rise but visits don't. You're rewarding existing behaviour. Move rewards to milestones or to things that bring people in at quieter times.
  • The same people get every message. Your groups overlap. Give each customer a single primary group each month, in priority order.
  • Replies suggest the messages feel automated. The drafts have drifted back into generic wording. Re-read them against the rules and cut anything that could have been sent by any business.
  • Nobody remembers the programme exists. Staff should mention it at the desk, and the milestone reward should be handed over in person where possible. Loyalty is partly a feeling, and that part is not automated.

Before you start, it is worth running your export through a data clean-up checklist, because duplicate member records break the grouping. If you later want to predict who is likely to leave, rather than spotting it after the fact, predictive marketing for small businesses explains how much data that needs, and what gym retention software costs shows what the dedicated tools charge for it.

Loyalty programme questions from small businesses

Do I need dedicated loyalty software?

Not to start. A booking or shop export, a spreadsheet and your email tool can run milestone rewards and personalised nudges for a few hundred customers. Dedicated loyalty apps earn their cost when you need points balances customers can see, rewards redeemed automatically at the till or checkout, or more than one location sharing a programme.

How big should a loyalty reward be?

Big enough to notice, small enough that you'd happily give it to someone who was coming anyway. A sensible starting point is 5 to 10 percent of what a regular spends over the reward period. Work out the monthly cost of rewards at your current visit rates, then ask how many extra visits or retained customers would cover it.

Is it safe to upload customer data to an AI tool for this?

Remove names, emails and phone numbers first and replace them with a customer number; the analysis only needs behaviour. Use a business plan that doesn't train on your data by default, or switch off model training in a consumer account's privacy settings. Never include health notes or anything customers told you in confidence.

How soon will a loyalty programme show results?

Give it a full quarter. Visit habits change slowly, and a single month can be distorted by holidays or weather. Compare the members who got the programme's nudges with a small held-back group who didn't, over the same period, rather than comparing this quarter with last.

Further reads

Sources: Square Loyalty pricing information (per-location visit tiers); Smile.io pricing page (checked September 2026).

Want a loyalty programme that pays for itself?

On a 1:1 call we'll work out a reward your margins can carry, look at what your booking or shop data can tell you about each customer, and set up nudges your existing tools can send.

Book a 1:1 call with me