Guide

How to segment Mindbody clients for email

To segment Mindbody clients for email, put each client in one lifecycle stage based on attended visits, membership status and last visit date, then keep those fields current in your email tool. The five stages are New, Active members, Pack or intro, Lapsing and Lapsed. A one-time export is accurate for a few days, and then the segments drift.

Updated

Which five segments should every studio have?

A single newsletter to everyone gets ignored, because a client who visited twice last week and a client who has not come in since spring need different messages. Split your list into lifecycle stages. Each client belongs to exactly one stage, and each stage gets one campaign.

Segment Rule (starting point) Mindbody data needed Campaign
New First attended visit in the last 30 days First visit date, attended visits Welcome and book the second class
Active members Active membership and a visit in the last 30 days Membership status, last visit date Schedule news, referrals, retail
Pack / intro Sessions remaining or pack/offer expiring soon, no membership Pricing option, sessions remaining, expiry Expiry reminder and membership offer
Lapsing Regular or member, no visit in 30–60 days Last visit date, visits in the last 90 days, membership status Personal check-in, then a soft offer
Lapsed No visit in 90+ days Last visit date Reactivation offer, then sunset

These thresholds are starting points, not industry standards. A weekly-class yoga studio and a monthly facial salon have very different normal gaps between visits. Look at your own data first. If most of your regulars come every 10 days, 30 days of silence is a warning sign. If they come every five weeks, it is not.

Give every client one stage and a priority order: New, then Active member, then Pack or intro, then Lapsing, then Lapsed. Without a priority order, a client who is both a new member and a recent intro-offer buyer can land in two campaigns on the same day.

How do you build them from Mindbody reports?

The manual way takes three exports and a spreadsheet. Names of reports and menu paths vary by Mindbody version and subscription, so look for these categories in your account:

  1. A client contact list, with client ID, email and email opt-in status.
  2. An attendance or visit history report, with one row per visit.
  3. A membership or contract report, with status and start and end dates. Pack balances usually sit with pricing options or sales data.

Join the three on client ID, not on email. Then work through these columns:

  • Visits in the last 30, 60 and 90 days. Count only the statuses you have decided to count.
  • Last visit date. The latest attended date per client.
  • Membership status. Active, frozen, ended, or a pack with sessions left.
  • Opt-in. Remove anyone who has not agreed to marketing email.

Once the columns are in place, apply the five rules from the table, then import the result to Mailchimp (as fields or tags), Klaviyo (as profile properties) or HubSpot (as contact properties). Build the segments on those fields.

Mindbody publishes its own help article on setting up a Mailchimp integration. At the time of writing, we could not verify its current scope and limits, so read it before you build anything by hand. It may cover some of this, and it may not cover the visit-based rules you need.

If you use Booker, the logic is the same. Use its client and appointment reports, and confirm the names in your own account.

Why do exported Mindbody lists go stale?

An export is a snapshot, and it starts aging the moment you download it. Some of the common failures:

  • A new member gets a win-back email. Someone bought a membership yesterday, but the list still shows them as lapsed.
  • A regular never moves to Lapsing. Someone stopped coming three weeks ago, and the list was not rebuilt, so they still look active.
  • Attendance is counted as bookings. A client with five bookings and two attended visits looks active. Booked classes are not the same as attended ones.
  • Profile edits look like visits. Last-updated dates change when someone edits a note, changes a card, or buys retail. Use attendance dates for last visit, not profile dates.
  • Frozen members get win-back offers. A frozen membership is not a lapse. A simple filter on “no visit in 30 days” catches them anyway.
  • Joins break. Duplicate clients, mismatched emails between Mindbody and the email tool, and shared family addresses all cause a client to land in the wrong place or twice.
  • A re-import re-subscribes people. If you re-upload a CSV, you can overwrite fields and, in some setups, bring back contacts who unsubscribed in the email tool. Those people should never receive email again unless they opt in.
  • Multi-location visits look like lapses. A client who visits your second studio every week looks lapsed at the first one unless you decide which location counts.

Rebuilding the list by hand every week also costs an hour or more, and it stops working as soon as someone skips a week. Static lists do not recalculate at all. Dynamic segments in Klaviyo and HubSpot only update if the properties feeding them update. In every tool, the segment is only as fresh as the data that feeds it.

How do you keep segments updated automatically with Pandaflow?

Pandaflow connects Mindbody (or Booker) to your email tool and keeps the stage fields current. You do not export or import anything. The steps are:

  1. Start free.
  2. Connect your apps. Connect Mindbody or Booker, and Mailchimp, Klaviyo or HubSpot.
  3. Describe what you want in plain English. For example: Tag each client as new, active member, pack or intro, lapsing or lapsed, based on their attended visits and membership, and update it daily. Never re-subscribe anyone who has unsubscribed.
  4. Review a few records. Check a handful of real clients: a new member, a frozen member, a client who visits another location, and someone who has unsubscribed. Confirm each one sits in the right stage.
  5. Go live.

After go-live, the owner sees segments in the email tool that change as clients visit, buy or stop coming. Nobody exports a CSV. If something changes in Mindbody or in the email tool, Pandaflow repairs the sync.

If your business uses HubSpot for client records, see the Mindbody integrations and HubSpot integrations pages, or read how Mindbody and HubSpot work together.

This is an illustrative setup, not a customer story. A two-location pilates studio defines lapsing as no attended visit in 35 days, because its members come about once a week. It sets the multi-location rule to “any location counts,” so a client who switches studios is not treated as lapsed. Its Lapsing segment gets a short personal note from the front desk manager, with no discount.

Pricing is free to start. Paid plans are Lite $79, Silver $299 and Gold $499 a month, and you can deploy in Pandaflow’s cloud or in your own. See pricing for the current details.

What campaign should each segment get?

One message per segment, one call to action.

  • New: a welcome, plus a nudge to book a second class. The second visit is the habit step that matters most.
  • Active members: schedule news, referral or guest-pass offers, and retail or gift card offers if you sell them.
  • Pack or intro: a reminder of sessions left or the expiry date, and a short comparison with a membership.
  • Lapsing: a short, personal note first, with no discount. Add a soft offer only if the note gets no reply.
  • Lapsed: a single reactivation offer, then a sunset rule that stops mailing after no response.

Suppress clients from other campaigns while they are in a win-back series, so one person does not get two emails on the same day. Never send win-back offers to frozen members. They have paused, not left.

What can go wrong?

  • Counting bookings instead of attended visits. Late cancels and no-shows inflate the active count.
  • A client in two segments. Use the priority order, and check that each client has exactly one stage.
  • Overwriting unsubscribes. Any sync or import must respect opt-outs in the email tool.
  • Time zone and location mismatches. Set one time zone for “days since last visit,” and decide whether a visit at any location counts.
  • Thresholds that do not fit your business. Check your normal visit gap before you copy the starting numbers.
  • Win-back emails to frozen members. Exclude frozen status from the Lapsing and Lapsed rules.

For more practical guides, go to all how-tos.

FAQ

Frequently asked questions

Can I segment Mindbody clients by number of visits?

Yes. Count attended visits per client over a set period from your attendance or visit history data, then store that count in your email tool as a field or property. Decide before you start whether late cancels and no-shows count, because the number changes depending on that choice.

Which email tool works best with Mindbody?

It depends on how your team works. Klaviyo and HubSpot build dynamic segments from properties, and Mailchimp works well for simpler audiences built on fields and tags. What matters most is that visit, membership and last-visit data stay current in whichever tool you choose.

How often should segments update?

Daily is enough for most studios, because stages like lapsing change over days, not hours. A weekly export is usually too slow, since a new member can still receive a win-back email after they have started coming.

Can I make a Mindbody email list by membership?

Yes. Use membership status (active, frozen, ended) and pack balances, sync them as a field or tag in your email tool, and pair them with last visit date so you can spot members who have stopped attending.

Do I need to leave Mindbody to do this?

No. You keep Mindbody as it is and connect your email tool to it. Pandaflow handles the sync.

Get started

Hand the busywork
to your agents.

Spin up your first AI-run integration in minutes. Free to start, scales with you.