Industry guide · Booking & Scheduling

Martial Arts Studio Software: Family Billing, Belts, and the Churn You Cannot See

The short answer

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.

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. 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) →
  3. 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) →
  4. 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 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 martial arts studio software cost for a school with 800 students across three locations?
Expect $60k to $130k for a focused first release covering household billing, check-in, rank eligibility and migration, shipping in 12 to 16 weeks, based on Digital Heroes delivery experience across 2,000+ projects. A full platform adding a parent app, after school custody tracking, camps, multi-location payroll and royalty reporting runs $150k to $400k phased over 6 to 12 months. At three locations the main cost drivers are payments and money movement, migration off your existing tool, and the roll-up reporting layer.
Is it worth building our own software instead of staying on Zen Planner?
Not if you are one location under about 250 active students with a single program, because Zen Planner does most of what you need for a few hundred dollars a month. It becomes worth building when you have 500+ actives or three or more locations, someone on payroll whose real job is rebuilding reports, or after school and camps above roughly 20 percent of revenue running on spreadsheets. The honest test: if the answer to most operational questions is export a CSV, you have outgrown it.
Can custom software handle family plans and sibling discounts better than Kicksite?
Yes, because the difference is structural rather than cosmetic. Kicksite, Zen Planner and Mindbody link family members but still bill the individual, so sibling discounts and household caps are manual overrides that never recalculate when a member drops or freezes. A custom build makes the household the billing unit with a rate engine that re-evaluates the cap, sibling ladder and proration on every change and shows the invoice diff before you commit it.
How long does it take to build a martial arts membership and belt tracking system?
A first release with household billing, check-in, the rank eligibility engine and a staff app typically ships in 12 to 16 weeks. Belt and curriculum tracking is usually not the long pole: payments and data migration are. If you have a decade of paper rank cards, add a few weeks for extraction and review, which document AI compresses significantly compared to manual entry.
How do we migrate 12 years of member and rank data out of Mindbody or Zen Planner?
Export what the platform gives you, then rebuild what it does not export, which is usually the part that matters. Names, attendance and basic belt fields come out cleanly; agreement terms, family rate arrangements and curriculum history often live with a third party billing company like ASF or Member Solutions, or in someone's private spreadsheet. Plan for a reconciliation phase where the new system runs billing in parallel for one cycle and every household total is compared line by line before cutover.
Do we own the code if Digital Heroes builds our dojo software?
Yes. The repository lives in your organization from the first commit, and infrastructure and merchant accounts are in your name, not ours. You should insist on the same terms from any developer you evaluate, along with a runbook so another team could pick it up.
What compliance do we need for after school programs and minors in martial arts software?
At minimum: waivers and photo releases signed by a parent or guardian for every minor, an authorized pickup list enforced at release, allergy and medication records visible to whoever is supervising, and a timestamped attendance and custody log you can hand to a state licensing inspector. Many states also regulate health studio and fitness contracts with cancellation and cooling off rights, which affects how your agreements and refunds are built. Instructor background check records and a written data retention policy round it out.
Can we get off our third party billing company and process payments ourselves?
Usually yes, and the savings often fund the build, but read the contract first because exit clauses frequently have teeth and the export commonly omits your agreement terms. Moving to Stripe or Authorize.net with tokenized cards and ACH keeps PCI scope small and puts the merchant relationship in your name. Budget engineering time for ACH returns, retry ladders, refunds and chargebacks, since that is the work the billing company was actually doing for its percentage.
Can AI actually help a martial arts school, or is it a gimmick?
It helps in three specific places. An after-hours assistant that answers age, price and schedule questions from your live data and books the intro captures the 9pm parent your front desk will never reach. Document extraction turns a filing cabinet of paper rank cards into structured rank history during migration, and attendance-velocity models surface a churn queue with names and reasons weeks before a cancellation email arrives.
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.
How do I vet a software development agency before signing a contract?
Ask to speak with two past clients whose projects resemble yours in size and industry, and ask exactly who will write your code, since some agencies sell senior faces and deliver junior or subcontracted hands. Demand a written specification with acceptance criteria before any fixed price, and check that their portfolio links to products that are actually live. An instant quote given without questions about your workflows is the clearest warning sign there is.
How much does it cost to build a custom booking system for my business?
Most custom booking systems cost $15,000 to $60,000 to build, based on what Digital Heroes has delivered across service businesses from salons to clinics. The low end covers a single-service scheduler with payments and automated reminders; the high end adds multi-staff calendars, memberships, packages, and a client mobile app. The single biggest cost driver is how many scheduling rules your business runs on: staff availability layers, buffer times, room or equipment conflicts, and cancellation policies.
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.
Will an app built for 10 users survive growing to 500?
Yes, if it is built on standard cloud infrastructure with a sound data model, because moving from 10 to 500 users is a hosting configuration change, not a rebuild. The scaling decisions that actually hurt are made early and invisibly: how the database is structured, how accounts and permissions are modeled, and whether background work is queued properly. Ask your agency how the system would handle ten times the load; the right answer is boring and specific, and a promise to cross that bridge later means you will pay for the bridge twice.
Can custom booking software actually reduce no-shows?
Yes, and the two levers that work are card-on-file deposits and layered reminders, meaning an SMS at 24 hours with a confirm-or-reschedule link. Across the service businesses Digital Heroes has built for, a $10 to $20 deposit at booking cuts no-shows harder than any reminder cadence, because a financial commitment changes behavior more than a text does. Custom software lets you set deposit rules per service or per client's track record, something Calendly and Acuity apply per appointment type at best.
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?