Martial Arts Studio Software: Family Billing, Belts, and the Churn You Cannot See
Build only if the math is already screaming at you. Across 2,000+ Digital Heroes projects, a focused first release for a martial arts school (household billing engine, check-in, rank eligibility, staff app, migration off your current tool) runs $60k to $130k and ships in 12 to 16 weeks. A full platform with parent app, after school custody tracking, camps, pro shop, multi-location payroll and royalty reporting lands at $150k to $400k phased over 6 to 12 months. Under roughly 250 active students at one location, keep paying Zen Planner or Kicksite and spend the money on mats and marketing instead.
Why membership software makes or breaks a martial arts school
A school with 800 active students across three locations is not a gym. Its revenue arrives in five different shapes: monthly EFT and ACH on family agreements, testing fees every eight to ten weeks, pro shop gear, after school and camp tuition, and the occasional tournament. Every one of those lines depends on the same three facts: who is enrolled in what, who is eligible for what, and whose payment method is still good. The system holding those facts is almost always Zen Planner, Kicksite, Spark Membership, Gymdesk, Martialytics, PerfectMind, Mindbody, or an inherited relationship with a third party billing company like ASF or Member Solutions that owns your agreements and takes a slice of gross before you ever see it.
Here is the scene we walk into. Tuesday, 6:40pm. Little Dragons is clearing the mat, the 7 to 12 class is loading in, 34 kids. The front desk person has an iPad open on check-in, a clipboard with Saturday's testing roster, a text from a parent asking to move her middle kid to Tuesday and Thursday and add the youngest at the sibling rate, and three intro leads on sticky notes. She writes on paper because the software cannot do any of it in ninety seconds. On Sunday the owner rebuilds the testing roster in Google Sheets, because the attendance report counted two check-ins on the same day as two classes toward rank.
In the schools we have migrated, that gap costs six to nine hours a week of owner and desk time, plus the quieter losses: students who were eligible for testing and never got invited, and families who drifted for five weeks before anyone noticed. In the schools we work with, testing cycles are the second largest revenue event on the calendar after monthly tuition. Missing names on the invite list is real money.
Problem 1: your billing system thinks a family is five separate customers
The Rodriguez household: dad on adult BJJ unlimited under a 12 month agreement, two kids in the kids program, a third in Little Dragons at the sibling rate, all under a $299 household cap. In August the oldest quits for football. Now: who inherits the sibling ladder, does the cap still apply with three members, does dad's agreement term reset, and what does the family actually get charged on the 1st?
Zen Planner, Kicksite and Mindbody all have some notion of a family, but the billing unit underneath is the individual. The family is a link, the sibling discount is a hand typed override on one person's rate, and the cap is a number someone remembers. Drop a member and nothing recalculates. Freeze a member and the cap silently breaks. We have seen schools with 700 students where the desk manager keeps a private spreadsheet of "real" family rates because the software's number and the promised number disagree.
What a build does differently: make the household a first class entity that owns payment methods, agreements and dunning. Underneath it, model enrollments as lines (student, program, schedule, base rate, term) and put a rate engine on top that evaluates the sibling ladder, household cap, paid in full credits and freeze proration on every change. The important part is the interaction: when the desk drops the oldest kid, the screen shows the invoice diff before commit, old total against new total, line by line, with a reason for each change. Every override is stamped with who did it and why. Dunning runs per household, not per card, so a failed payment produces one conversation with one parent rather than three emails to a family that thinks it already paid.
Problem 2: rank is your product, and the software treats it as a text field
Eligibility at a serious school is a rule, not a vibe. Thirty two classes since the last promotion, ninety days minimum time in grade, curriculum sign off on six techniques, no outstanding balance, and different ladders per program: a Taekwondo belt chart with stripes, a BJJ ladder where adult time in grade is the constraint and the professor's discretion is real, Little Dragons with its own tab system. Then rank has to leave the building: Kukkiwon or ATA registration numbers, certificates, board reports.
The incumbent tools give you a belt dropdown and a raw attendance count. No curriculum, no per program rules, no mat side sign off, no registry export. So the head instructor spends Sunday cross referencing attendance against a belt chart, and the testing roster gets built by memory of who is "ready."
A custom build makes the rank ladder configuration data, not code: program, rank, requirements, fee, registry mapping. An eligibility job runs nightly and produces three things the school actually uses: a testing roster with the reason each student qualified, a "two classes short" list the desk can call before the cycle closes, and a blocked list showing balance or sign off issues while there is still time to fix them. Instructors sign off techniques on a tablet at the edge of the mat in two taps. Testing invitations, fee invoices, certificates and the registry export all hang off the same event. Migration is where AI does real work here: most schools have a filing cabinet of paper rank cards and a decade of spreadsheets. Document extraction reads the cards into the ladder with a human reviewing exceptions, which turns a six month data entry project into a few weeks.
Problem 3: the after school program is a childcare business hiding inside your dojo
If you run pickup, you are running a regulated custody operation. Four elementary schools with different dismissal times, two vans, ratios to maintain, allergies and medications, authorized pickup lists, and a state licensing inspector who may want an attendance log with timestamps. Camp weeks in June sell out and then three families want to swap weeks.
No martial arts platform on the market handles this. Owners run it on Google Sheets, Remind and a laminated clipboard. The failure mode is not inefficiency, it is the day a kid gets on the wrong van and there is no record of who tapped him off.
The build: rosters generated per school per weekday, a driver manifest on the phone with tap off at the school and tap on at arrival, so you have a timestamped custody chain from bell to mat. Allergy and medication flags surface on the manifest, not buried in a profile. Authorized pickup carries a photo and the desk checks it at release. A live ratio dashboard per room. One button exports the attendance log an inspector asks for. Camp weeks become inventory with capacity, waitlist and swap rules, tied to the same household billing engine so a swap does not require a refund and a re-charge.
Problem 4: leads die between 4pm and 8pm because nobody can look at a screen
A mom searches at 9:40pm after her son's third bad week at school. She wants to know if you take six year olds, what it costs, and whether Thursday works. Your booking widget shows the class schedule, which is the wrong answer, because an intro is not a class: it is a 1:1 slot with a qualified instructor, age matched to the right program. So she fills a form, it lands in an inbox, and the desk sees it Thursday at 5pm while 30 kids are checking in.
Off the shelf tools cannot fix this because they only know classes, and their booking flow does not know your program age bands or which instructor is certified for Little Dragons. A build models the intro as its own appointment type: parent answers age and goal, the system maps to a program, offers only slots where a qualified instructor is genuinely free, collects the waiver at booking, and holds the slot. This is the clearest place AI helps a school: an assistant on the site and over SMS that answers price, age and schedule questions from your live data instead of a canned FAQ, books the intro, and drafts the no show follow up sequence in the school's actual voice for the program director to approve each morning. The measurable win is intros booked between 8pm and midnight, which today are just emails.
Problem 5: you cannot see churn until the card declines
A student goes from 2.4 classes a week to 0.6 over five weeks, then the cancellation email arrives, and by then it is a refund conversation instead of a retention conversation. Every incumbent has a "no attendance in 30 days" report. Thirty days is a eulogy, not an alert.
The build measures attendance velocity against that student's own baseline and their cohort, not a fixed threshold, and factors in proximity to a testing cycle, because in the schools we have instrumented, missing a cycle is the loudest single warning before a cancellation. The output is not a dashboard, it is a queue: Monday morning the program director opens twelve names with a reason line for each and a suggested action. The same engine forecasts the next testing cycle's fee revenue, camp capacity, and where you are short an instructor, which is the number the multi location owner actually wants on the 25th of the month.
Problem 6: three locations, one instructor, and payroll assembled by hand
Your senior instructor teaches at two locations, paid $28 per class plus $6 per student over twenty plus a cut of testing fees. A member sold at location A checks in at location B and either fails or gets counted twice. Franchise royalty is a percentage of collected revenue, reported monthly, and the collected number never matches the billed number.
Per location subscriptions on Zen Planner or ClubReady mean per location data, and the roll up is a CSV exercise. A build gives you an org, region, location, program hierarchy where a class instance records who actually taught it, not who was scheduled. A pay rules engine turns that into a payroll draft, and royalty is calculated on cash actually collected with returns and chargebacks netted out. Cross location access becomes an entitlement on the membership, so check-in at B is a permission question with a clean answer.
What this costs and how long it takes
These are Digital Heroes delivery bands across 2,000+ projects, not industry averages. A focused first release runs $60k to $130k and ships in 12 to 16 weeks. That release should cover the household agreement and rate engine, card and ACH on file through Stripe or Authorize.net, check-in, the rank eligibility engine for your programs, a staff app, and migration off your current tool. A full platform, adding parent app, after school custody and manifests, camps, pro shop inventory on Square or Clover, multi location payroll and royalty, and the AI intro assistant, runs $150k to $400k phased over 6 to 12 months.
What drives price up in this category specifically: money movement is first. ACH returns, retry ladders, proration on mid cycle changes, refunds and chargebacks, and keeping PCI scope small through tokenization are all real engineering, and if you are exiting a third party billing company there is usually a contract with teeth and an export that omits your agreement terms. Second is migration debt: a decade of Zen Planner history plus paper rank cards plus a legacy spreadsheet of family rates. Third is the after school program, because licensing reporting and custody records are not optional. Fourth is hardware: kiosks, scanners, receipt printers, and tablets that live on a mat. Fifth is the number of distinct programs with genuinely different rank ladders, since each one is a rule set someone has to sit down and describe correctly.
Build or buy: take the honest answer
If you are one location with under about 250 active students, one main program, and no after school, do not build. Zen Planner, Kicksite or Gymdesk at a few hundred dollars a month does most of what you need, and what it misses costs you less than the interest on a custom build. We have talked schools out of this exact project and been right to.
Build when the signals stack up. Five hundred plus actives or three plus locations. A staff member whose real job has become rebuilding reports, because that salary is your build budget sitting in plain sight. A billing company taking a percentage of gross where the annual gap against a normal processor's cost is five figures. After school and camps above roughly twenty percent of revenue, running on spreadsheets. You are franchising, at which point your operating system is part of what you sell and you cannot license somebody else's. And the ceiling test: if the honest answer to "how do we do X" is "export a CSV," you have already outgrown the tool and are paying for it in hours instead of dollars.
How to choose a developer for martial arts studio software
Make them model the household on a whiteboard before you sign anything. Ask them to draw person, household, agreement, enrollment and entitlement and show what happens when the oldest kid quits mid term. If the answer is "a members table with a family_id column," they will rebuild the same trap you are already in.
Interrogate money movement, not features. What have they shipped with ACH returns and retry logic, proration on mid cycle plan changes, and PCI scope reduced through tokenization? Who holds the merchant account after the build, you or them? Ask how they plan to extract agreement terms, not just names, out of your current billing company.
Demand that rank and curriculum be configuration. Ask them to add a new program with a different ladder and different requirements without a code deploy. If adding Muay Thai to your schedule is a change order, you have bought a custom prison instead of a custom platform.
Get compliance and ownership in writing on day one. Minor waivers and photo releases, state health studio contract statutes covering cancellation and cooling off, childcare licensing records if you run pickup, instructor background check records, and a stated retention and deletion policy. The repo lives in your organization from the first commit, with a runbook and credentials in your name. A developer who hesitates at that last sentence has told you everything you need to know.
The evidence behind this guide
Independent findings on why this investment pays off. Every link goes to the primary source.
- 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) →
- In an RCT, text-message reminders (11.7% missed) were non-inferior to telephone reminders (10.2% missed; difference not significant, within the 2% non-inferiority margin) but far cheaper - total cost EUR 230 for SMS versus EUR 8,910 for telephone over 6 months - making SMS more cost-effective. Source: BMC Health Services Research / PubMed Central (Junod Perron et al.) (2013) →
- Salesforce's field-service research (State of Service / field service trends, survey of 5,500+ service professionals) found that 74% of mobile workers report increasing workloads and 47% say appointments don't go as planned due to customer miscommunication, unaccounted-for parts, or insufficient appointment lengths and travel times. (The separate claim that admin tasks consume ~30% of a technician's hours is NOT supported by the report - the seventh-edition data instead states technicians spend about 18% of working hours, ~7 hours/week, on admin, and only ~32% of time interacting with customers.). Source: Salesforce (2024) →
- 76% of developers are using or planning to use AI tools in their development process in 2024 (up from 70% in 2023), with current active use rising to 62% from 44%; 81% agree increasing productivity is the biggest benefit of AI tools. Source: Stack Overflow (2024) →
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.