Industry guide · Booking & Scheduling

Yoga and Pilates Studio Software: When Class Packs Break Mindbody

The short answer

If you run more than two studios or push past roughly 400 active members per location, the honest answer is usually yes, but not all at once. A focused first release that owns your class-pack ledger, waitlist logic, and instructor pay typically runs $60,000 to $130,000 and ships in 12 to 16 weeks; a full platform with member app, retail, teacher-training tracking, and multi-region reporting runs $150,000 to $400,000 phased across 6 to 12 months. Below about $2M in annual revenue, Mindbody or Momence plus disciplined ops is genuinely cheaper than a build.

Why booking software makes or breaks a yoga or pilates studio group

Your booking system is not a website feature. It is the ledger of every dollar you have collected but not yet delivered. A 10-class pack sold in November is a liability sitting on your books until the tenth class is taken or the pack expires. Multiply that by 1,200 active members across four locations and you are running a deferred-revenue business with an event-booking tool as your general ledger. That is the actual job Mindbody, Momence, WellnessLiving, Arketa, Walla, ClassPass, and Glofox are being asked to do, and it is the job they do least well.

Here is the scene every multi-studio owner recognizes. It is 6:05am on a Tuesday. The 6:15 reformer class has twelve beds. Eleven are booked, one is a late cancel from a member who is on an unlimited plan, and there are four people on the waitlist. Two of those four are ClassPass. One is a founding member on a legacy $149 unlimited that you grandfathered in 2019. One bought a 10-pack that expires Friday. Who gets the bed? Your system answers "whoever was first on the list." Your business needs the answer to be "the 10-pack member, because that credit expires Friday and if it lapses she churns, and the ClassPass booking will settle at single digits against your $34 drop-in." Nobody at the front desk is doing that math at 6:05am. So you lose a member and keep the ClassPass booking, and you find out six weeks later when your retention report finally reflects it.

The leakage is not dramatic. It is a slow drip. In the studio groups we have audited before scoping a build, it looks like this: a front-desk lead spending 8 to 12 hours a week on manual pack adjustments and comps, an instructor pay run that takes a studio manager two days a month across spreadsheets exported from the booking tool, a Mindbody invoice we routinely see past $500 per location per month once the branded app, the marketing suite, and their payment processing are all on it, and a churn number nobody can explain because the data to explain it lives in four disconnected places.

Problem 1: class packs and memberships live in a system that does not understand deferred revenue

The concrete failure: a member buys a 20-class pack for $420. She uses six. She freezes for three months for a knee injury. She comes back, the pack expiry rules got extended manually by a manager who is no longer with you, and now nobody can tell you whether those 14 credits are worth $294 of liability or whether they expired in March. Multiply by 2,000 packs. Your accountant asks for a deferred-revenue schedule at year end and your answer is a CSV export and a prayer.

Why Mindbody and WellnessLiving cannot fix this: they model a pack as a counter with an expiry date, not as a revenue contract with a value per credit, a freeze history, a transfer history, and a recognition schedule. Their reporting gives you "packs sold" and "visits," not "unearned revenue by cohort by location." Momence and Arketa are cleaner products but make the same modeling choice. There is no configuration that adds a dimension the data model does not have.

What a custom build does differently: model the pack as a ledger, not a counter. Every credit is a row with an acquisition price (pack price divided by credits, adjusted for promo), a state (available, consumed, frozen, expired, transferred, refunded), and a timestamp for every transition. When a member checks in, you burn a specific credit, chosen by policy: nearest expiry first, promo credits before full-price credits, so the member never loses value she paid full price for. That one rule, credit-burn ordering, is the single highest-return thing a custom build gives a studio group, and no off-the-shelf tool exposes it. Now deferred revenue is a query, freeze policy is a state machine with an audit trail, and your accountant gets a schedule instead of a CSV.

Problem 2: the waitlist has no idea what a member is worth

The scene from the intro, formalized. Your waitlist is FIFO because that is the only fair-looking rule a generic tool can ship. But the studio economics are not FIFO. A bed released at 5:58am for a 6:15 reformer class should go to the person most likely to show, most at risk of churning, and worth the most per visit, and it should go to them via a channel they will actually see in the next four minutes.

Why the incumbents cannot fix it: Mindbody's waitlist auto-promote is a queue with a cutoff window. It cannot weigh a member's remaining credits against expiry, cannot rank ClassPass bookings below direct members (ClassPass integration is deliberately opaque about your net rate), and cannot suppress a promote for the member who has no-showed three times in four weeks. You can turn the waitlist on or off. That is the extent of the control.

What a custom build does differently: a scoring function you own. Score each waitlisted member on credit-expiry urgency, historical show rate at this time slot, lifetime value, churn risk, and channel responsiveness, then promote in score order with a 90-second SMS response window before cascading to the next. One model does real work here: a show-probability model trained on your own check-in history (time of day, day of week, weather, days since last visit, instructor, distance from home address) is small, boring, and genuinely accurate after about 18 months of your data. It tells you the 6:15 waitlist person number three shows 91 percent of the time and person number one shows 38 percent. Promote number three. In the studio builds we have shipped, that is worth roughly 4 to 7 recovered bookings per studio per week, which at a $34 drop-in is not nothing across four locations and 52 weeks.

Problem 3: instructor pay is a spreadsheet, and your best teachers know it is wrong

Pilates and yoga instructor comp is genuinely complicated: a base rate per class, a per-head bonus above a threshold (say $32 base plus $2 per head over 8), different rates for reformer versus mat versus private, a sub rate, a teacher-training hourly, a workshop revenue share, a retail commission, and a rule that says a cancelled class under three attendees pays half. Some are W-2, some are 1099, some teach at two of your locations in the same week.

Why the tools cannot fix it: Mindbody's payroll module handles base plus commission and falls over on anything conditional. So your studio manager exports attendance to Excel, joins it against a rate sheet, applies rules by hand, and pastes the result into Gusto. Two days a month, every month, with errors that instructors catch and trust that erodes when they do.

What a custom build does differently: pay rules as data, not code. A rules engine where each instructor has a versioned contract (effective dates matter, because you will backdate a raise), and every completed class produces a pay event computed from the attendance record at class close. Instructors see their earnings in their own app the moment the class ends, not 30 days later. Push the approved run to Gusto or ADP via API. The build cost here is real, comp rules are where scope creeps, but the four-location groups we have built this for reclaim roughly 20 to 24 manager-hours a month and stop losing senior teachers over pay disputes.

Problem 4: ClassPass and third-party inventory eat your margin invisibly

You put spare capacity on ClassPass to fill off-peak. Reasonable. Six months later, your 9:30am Wednesday reformer is 60 percent ClassPass, your direct members cannot get in, and your revenue per bed dropped without your revenue per class looking any different in the Mindbody dashboard.

Why the tools cannot fix it: your booking system treats a ClassPass booking and a direct booking as the same event. Same bed, same check-in, same attendance count. The net rate difference lives in a ClassPass settlement statement, in a different system, in a different format, reconciled quarterly if at all.

What a custom build does differently: ingest the ClassPass settlement data, attribute the actual net dollars to the specific booking, and now every class has a true revenue-per-bed number. Then enforce inventory rules that off-the-shelf cannot: cap third-party at 25 percent of beds per class, release third-party inventory only 14 hours before start, never expose the 6:15 or the 5:30pm to third parties at all, and auto-adjust the cap by class based on the last eight weeks of direct fill rate. Forecasting demand per slot from your own history is the unglamorous companion to that: it tells you which slots have enough direct demand to pull off third-party entirely and which need the fill.

Problem 5: after-hours intake and the front-desk hours nobody counts

Most of your inbound questions arrive between 8pm and 7am and on Sundays: can I freeze, does my pack roll over, is the 7am prenatal-safe, my card declined, I need to cancel my membership. Your front desk answers them the next morning, one by one, from a phone.

Where AI actually helps, specifically: an assistant wired directly into the member's own record, not a generic FAQ bot. It can read her pack balance and expiry, execute a freeze inside the policy your rules engine already enforces, retry a declined card, book her into the 7am, and escalate to a human when it hits anything about injury, refund over a threshold, or cancellation intent, because a cancellation should always reach a person. The reason this is a custom-build story and not a chatbot bolt-on is that it needs write access to the credit ledger and the freeze state machine. A generic bot on top of Mindbody can answer questions. It cannot safely act. Two other applications that survive contact with a real studio: document extraction on intake, pulling health history, injury notes, and physio referrals off the PDFs and photos members send so instructors see relevant contraindications on the class roster; and churn follow-up, where a member who has dropped from three visits a week to one gets a message from her actual instructor with a real slot suggestion, not a bulk campaign.

What this costs and how long it takes

These are Digital Heroes delivery bands across 2,000-plus projects, not market estimates. A focused first release runs $60,000 to $130,000 and ships in 12 to 16 weeks. For a studio group, "focused" means: the credit ledger with burn ordering and freeze state machine, scored waitlist with SMS promote, class scheduling with instructor assignment, check-in, Stripe payments, and the instructor pay engine. You keep running Mindbody or Momence for anything not in that list during the transition. A full platform, member iOS and Android app, retail and inventory, teacher-training program tracking, third-party settlement reconciliation, multi-location and multi-currency reporting, marketing automation, runs $150,000 to $400,000 phased across 6 to 12 months.

The variables that actually move the number: instructor comp complexity is the biggest single one, and a group with eight pay rule types costs meaningfully more than one with two. Historical data migration is second, because your Mindbody pack data does not contain the per-credit value or the freeze history you need, so it has to be reconstructed from transaction records and that is careful, slow work. Native mobile adds $40,000 to $70,000 over a good progressive web app, and for a studio the honest question is whether members will install it. Hardware integrations, door access, ClassPass Live displays, reformer bed maps, add scope. Payments are cheaper than they look if you go straight to Stripe Connect rather than inheriting a legacy processor. Health data means HIPAA questions if you take physio referrals or store injury history: usually you are outside HIPAA as a fitness studio, but if you bill any insurance or partner with a clinic, you are not, and that changes the infrastructure and the number.

Build or buy: our actual position

Buy, genuinely, if you are under three locations, under roughly $2M in annual revenue, running fewer than three membership types, and your pack rules fit on an index card. Momence and Arketa are good products at $150 to $400 a month, and Punchpass is fine for a single studio. Building against that is vanity. Mindbody at one or two locations is survivable. Fix your ops before you fix your software.

Build when these signals show up together, and they do show up together. You are past four locations or 1,500 active members. Someone on your team spends more than 15 hours a week reconciling what the software says against what is true. You cannot produce a deferred-revenue number your accountant accepts without manual work. You are paying more than $2,500 a month across Mindbody, a branded app add-on, an email tool, and a spreadsheet-and-VA habit. You have been told "that's not how the platform works" about a rule that is central to how you make money. And the tell that decides it: you have changed your business rules to fit the software. When you stop selling a pack structure that works because Mindbody cannot track it, the software is running the company. At that scale a $95,000 first release against $30,000 a year of SaaS and 60 manager-hours a month is a two-year payback with an appreciating asset at the end of it, and you own the member data outright.

How to choose a developer for studio booking software

Ask them to model a class pack on a whiteboard before you sign anything. If they draw a counter with an expiry date, they have never built this. You want to hear the words credit, state, ledger, and burn order in the first five minutes. Anyone who treats a pack as an integer is going to hand you the exact problem you are paying to escape.

Make them explain the migration before the build. Specifically: how they will reconstruct per-credit value and freeze history out of a Mindbody or WellnessLiving export that does not contain it, how they will run both systems in parallel for the cutover weeks, and what happens to a member mid-pack on cutover day. A firm that has done this will have an opinion about running the old system read-only for 90 days. A firm that has not will say "we'll import the CSV."

Test them on the integration surface, by name. Stripe Connect for payments and instructor payouts, Gusto or ADP for payroll push, Twilio for the SMS waitlist promote where latency matters, ClassPass settlement ingestion, and Google and Apple Wallet passes for check-in. Ask which of these they have shipped, not which they have read about. The ClassPass one is the giveaway: most have not touched it.

Settle ownership and data on day one, in the contract. Your repository, your Stripe account, your cloud tenancy, your member database, full source with no license-back. And ask directly about health data: whether they store injury history and physio notes, where, encrypted how, and what their position is on HIPAA if you ever partner with a clinic. A developer who has not thought about waivers, minors, and health intake in a fitness context has not built for this industry.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. SMS reminders that stated the specific cost of the appointment to the health system reduced missed appointments in Trial One, with the DNA (did-not-attend) rate falling from 11.1% (control) to 8.4% (specific-costs message) - an odds ratio of 0.74 (95% CI 0.61-0.89), i.e. roughly a 24-26% relative reduction - at no additional cost. (Trial Two replicated this at an 8.2% DNA rate.). Source: PLOS ONE (Hallsworth et al.) (2015) →
  2. Across ten outpatient clinics the mean no-show rate was 18.8%, and the marginal cost of no-shows reached $14.58 million per year for those clinics, at roughly $196 per missed appointment (2008 figures). Source: BMC Health Services Research / PubMed Central (Kheirkhah et al.) (2015) →
  3. 48% of private companies cite integration with legacy systems or technical debt as a top obstacle to realizing the full value of their digital and AI investments (behind data quality/availability at 72% and gaps in AI fluency or technology talent/leadership at 53%). Source: Deloitte (2026) →
  4. Acquiring a new customer is five to 25 times more expensive than retaining an existing one, and research by Frederick Reichheld of Bain & Company found that increasing customer retention rates by 5% increases profits by 25% to 95% - underscoring the ROI of support that keeps customers. Source: Harvard Business Review / Bain & Company (2014) →
Rohan Malhotra · Enterprise Software Consultant

Rohan advises mid-market and enterprise teams on ERP, CRM and custom software, and has led delivery on dozens of business-software builds.

Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does custom yoga or pilates studio software cost for a 4-location group?
A focused first release covering the class-pack ledger, waitlists, scheduling, check-in, payments, and instructor pay runs $60,000 to $130,000 and ships in 12 to 16 weeks in Digital Heroes delivery experience. A full platform with a member app, retail, teacher-training tracking, and multi-location reporting runs $150,000 to $400,000 phased over 6 to 12 months. For a four-location group the realistic landing zone is $90,000 to $150,000 for a first release that replaces the parts of Mindbody that hurt most.
Is it worth building custom software instead of paying for Mindbody?
Below roughly $2M in annual revenue or three locations, no. Mindbody, Momence, or Arketa plus disciplined operations is cheaper and faster. Above four locations or 1,500 active members, where a manager is spending 15-plus hours a week reconciling the system against reality and you have changed your pack structure to fit the software, a build pays back in about two years and you own the member data outright.
Can we migrate our class packs and member history off Mindbody?
Yes, but it is the hardest part of the project and it is not a CSV import. Mindbody exports pack balances as counters, not as per-credit values with freeze and transfer history, so that has to be reconstructed from transaction records. Budget real time for it, run both systems in parallel through cutover, and keep the old one read-only for about 90 days.
How long does it take to build a booking system for a studio group?
Twelve to 16 weeks for a focused first release that owns packs, waitlists, scheduling, check-in, payments, and instructor pay. Six to 12 months for a full platform including native mobile, retail, and teacher-training tracking. The two things that stretch the timeline are instructor compensation rule complexity and historical data migration, not the booking flow itself.
Do we own the code if we hire an agency to build our studio software?
You should own all of it: the repository, the source with no license-back, your Stripe account, your cloud tenancy, and your member database. Settle this in the contract on day one, not at handover. If a developer wants to host it under their account or license the code back to you, that is a red flag in this category specifically, because your member data is the asset.
Can AI actually help a yoga or pilates studio, or is it a gimmick?
Three applications are genuinely useful and boring. A show-probability model trained on your own 18 months of check-in data lets you promote the waitlist person most likely to actually show, worth roughly 4 to 7 recovered bookings per studio per week in the builds we have shipped. An after-hours assistant with write access to the member's own credit ledger can freeze, rebook, and retry a declined card at 11pm inside your policy. Document extraction on injury and physio intake puts contraindications on the instructor's roster.
Why can't Mindbody or WellnessLiving handle our class pack rules?
Because they model a pack as a counter with an expiry date, not as a ledger of individual credits each with a value, a state, and a history. That means no burn ordering, no deferred-revenue schedule by cohort, and no auditable freeze trail. It is a data model limitation, not a settings problem, so no amount of configuration fixes it.
Do we have HIPAA obligations if we store injury history for class members?
Usually not as a standalone fitness studio, because you are not a covered entity. That changes if you bill any insurance, partner with a physical therapy clinic, or operate under a clinical referral arrangement, at which point you are handling protected health information and the infrastructure requirements and cost both go up. Get this answered before scoping, not after, and make sure your developer has an opinion on it.
How do we stop ClassPass from eating our best class times?
Off-the-shelf tools cannot help, because they treat a ClassPass booking and a direct $34 booking as the same event with the same attendance count. A custom build ingests the ClassPass settlement data, attributes the real net dollars to each booking, and gives you true revenue per bed. Then you can enforce rules the platform will not: cap third-party at 25 percent of beds, release that inventory only 14 hours out, and keep peak slots direct-only.
What questions should I ask a development agency on the first call?
Ask who exactly will build it, what happens when scope changes mid-project, what their maintenance terms are after launch, and what they will need from you every week. Then ask them to describe a project that went wrong and what they changed afterward; teams that have shipped at real volume have war stories, and teams claiming a perfect record are hiding something. The scope-change answer matters most: a disciplined shop describes a written change-order process, not a vague promise to be flexible.
What should the first version of a booking app include?
Ship four things: a public booking page, staff calendars with availability rules, card payments or deposits, and automated email and SMS reminders. Leave memberships, packages, gift cards, and reporting dashboards for phase two; they roughly double the build cost and get redesigned after real usage anyway. In Digital Heroes MVP scopes, that four-feature core covers about 80 percent of daily front-desk work from day one.
What would a custom scheduling app cost for a small business with one location?
A single-location scheduling app typically runs $8,000 to $25,000 when scoped as an MVP: a public booking page, staff calendars, Stripe payments, and SMS reminders. In Digital Heroes projects, small businesses keep the budget down by launching with a mobile-friendly web app instead of native iOS and Android apps, which cuts 30 to 40 percent off the initial build. Native apps can follow in phase two once bookings prove the demand.
What can custom booking software do that Acuity Scheduling cannot?
Custom software handles the rules Acuity cannot express: appointments that need both a staff member and a specific room, pricing tiers by client history, approval steps before confirmation, and multi-stage bookings. Acuity's top Powerhouse plan at $49 per month also caps you at 36 staff calendars, so teams past that size need custom or enterprise tooling regardless. If your workflow fits Acuity's model, stay put; at $16 to $49 a month it is very hard to beat on price.
Should I hire a freelancer or an agency to build my booking app?
A strong freelancer works for a simple booking page with payments, roughly the $5,000 to $12,000 range in our experience. Choose an agency once the project needs a designer, backend and frontend developers, and QA working at the same time, which describes nearly every system with staff schedules, payments, and reminders. The practical freelancer risk is bus factor: if one person leaves mid-project, an agency replaces them and you cannot.
Does my booking system need to be HIPAA compliant?
Only if an appointment reveals health information, which it does for therapy practices, medical clinics, physiotherapy, and wellness treatments tied to a condition. In Digital Heroes healthcare builds, HIPAA adds encryption at rest, audit logs, role-based access, and a signed business associate agreement with the hosting provider, which typically adds $5,000 to $10,000 and 2 to 3 weeks. Salons, gyms, and consultants generally do not need it, but confirm with a lawyer rather than a developer.
Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?