Three-studio chain (800 kids), $4k–6k/yr SaaS bleed, plus missing features worth $38k/yr in admin time + parent friction
Three-studio children's activity chain (Townsville QLD, 270 kids per studio, 800 total across martial arts, gymnastics, and swim). Runs Mindbody or iClassPro ($89–199/mo per studio = ~$270–600/mo = $3.2k–7.2k/yr). Sounds fine until you catalog what's missing: term enrolment (parents book drop-in, inconsistent attendance), sibling discounts (manual spreadsheets, parents negotiate), recurring billing (weekly charges vs term prep), belt/grading progression (manual rank tracking, no proof of advancement), parent-child profile linking (separate accounts, billing chaos), WWCC instructor verification (compliance spreadsheet, no automation). Studio owner Marcus manages 6 instructors, 800 parents, 1,200 active kids (siblings). Marcus spends 12 hrs/week on admin (enrolment chasing, sibling discount calculations, billing disputes, belt progression records, parent profile merging) = $300/week = $15.6k/yr labour cost. Add: venue hire $3k/mo = $36k/yr. Payroll (6 instructors @ $38k/yr average) = $228k. Recurring billing through Mindbody fails 15% of the time (card declined, parents must re-enter payment, 120 parents/month skip payment, Marcus chases manually = 2 hrs/week dunning = $2.6k/yr labour). Problem stack: term enrolments are chaotic (parents book one class, don't commit to term, Marcus loses predictability, instructors under-booked), sibling discounts are a nightmare (mum enrolls 2 kids, asks for "family rate", Marcus manually calculates 10% off, applies to account, 3 weeks later second child enrols mid-term, Marcus re-calculates, forgets which kids got discount, billing mismatch), recurring billing fails (Stripe charges $89 × 2 kids = $178 weekly, card declines week 3, Mindbody shows "payment failed", Marcus emails parents, only 60% respond, Marcus manually charges failed parents via EFTPOS, no audit trail), belt progression is forgotten (Marcus's son Tommy advances from white to yellow belt in karate, parent Kim prints certificate by hand, no database record, 6 months later Kim claims Tommy was still yellow, no system of record), parent-child linking is confusing (mum Sarah enrols as "Sarah1", son Tommy as "Tommy1", daughter Bella as "Bella1", billing shows 3 separate accounts, Sarah pays $178 × 3 = $534/week but thinks she's paying $356 with family rate, disputes charge, Marcus manually audits 3 accounts, $1.5k admin time to reconcile one family).
Six Features Custom Platform Delivers
1. Term Enrolment + Sibling Discount Bundling — Online Forms, Auto-Discount, One Payment Per Family
Custom system: [Family Enrolment Portal]. Parent Sarah logs in, sees "Winter Term 2026 (3 Aug – 30 Oct), all kids in this family." Sarah selects: Tommy (age 8) karate Mon/Wed 4pm ($180/term), Bella (age 5) gymnastics Tue/Thu 4pm ($180/term). System auto-calculates: 2 kids = 10% sibling discount applied to second child = $180 + $162 = $342/term. Sarah pays via Stripe once. System creates: "Family Account: Sarah + Tommy + Bella. Winter term enrolment locked. Weekly recurring: $342 ÷ 10 weeks = $34.20/week, charged every Monday." Marcus's dashboard shows: "Winter term: 240 families enrolled (640 kids across 240 families = avg 2.67 kids/family). Karate Mon/Wed: 160 kids (capacity 180). Gymnastics Tue/Thu: 200 kids (capacity 200, at capacity). Swim Sat: 120 kids (capacity 150, 30 spots open)." System generates: family roster (name, kids, ages, class mix, weekly charge amount, payment status), sibling discount audit (identifies 180 kids getting discount, $5,400 total discount applied, ROI: higher enrolment = discount cost justified), auto-deduction schedule (each family's recurring charge locked, zero chasing). Marcus saves: 8 hrs/week enrolment admin × $25/hr × 48 weeks = $9.6k labour + sibling discount transparency (eliminates disputes) = $9.6k/yr value.
2. Recurring Weekly Billing Automation — Smart Retries, Parent Self-Service, 99% Collection Rate
Custom system: [Recurring Payment Engine]. Sarah's family: $34.20/week charged every Monday. Monday: system charges Stripe, success. Week 3 Monday: card declined (insufficient funds). System auto-retries Tuesday 10am (account replenished), success. System notifies Sarah: "Payment failed Mon, retried Tue, charged $34.20. You're all set." Marcus's dashboard: "Weekly collections: $27,480 (800 families × avg $34/week). Success: 782 families (97.75%), 18 failed retries auto-resolved, 10 still pending (parent contacted, resolved within 24 hrs). Collection rate 99%." Mindbody? 85% collection rate, 120 failed charges/week, Marcus manually chases 2 hrs/week. Alternative: system offers parent self-service ("Payment failed? Update your card here" button in app). Parent adds backup card, system retries automatically, 90% resolve without Marcus involvement. Dunning management: system spaces retries (fail Mon, retry Tue, retry Wed, email Thu, pause Fri to let parent action, skip weekend). Prevents: card fatigue (multiple retries same day damage customer trust), surprise large catches (one charge, no "I forgot you had a subscription" complaints). Value: 99% collection rate vs 85% = 14% improvement = +$3,850/yr on $27.5k base, plus 2 hrs/week manual chasing saved = +$2.6k labour = $6.45k/yr.
3. Belt + Grading Progression Tracking — Digital Certificates, Progression Analytics, Retention Uplift
Custom system: [Progression Hub]. Instructor Jason leads karate class. Tommy (8-year-old) completes white belt requirements (balance test, 5 kicks, self-defence role-play). Jason logs in, marks: "Tommy white→yellow belt, date 18 Aug 2026, signature." System generates: digital certificate (downloadable PDF, sharable on socials). System notifies Sarah: "Tommy advanced! Yellow belt achieved 18 Aug. Certificate attached. Next milestone: green belt (8 weeks, focus on kicks + combinations)." System tracks Tommy's progression: "White belt (18 Aug 2026) → Yellow belt (6 Oct 2026) → Green belt (target 1 Dec 2026). Avg progression rate: 7 weeks/belt. At current pace, Tommy will reach blue belt (3 belts = 21 weeks) by 15 Feb 2027." Marcus's dashboard: "Karate progression: 160 kids enrolled. Belt distribution: white 60 kids, yellow 50, green 35, blue 15. Avg progression 7 weeks. Fastest: 5 weeks (Tommy, Bella). Retention: kids with 3+ belt changes = 94% retention vs 1 belt = 60% retention. Insight: progression visibility = stickiness." System unlocks: milestone events (host a "yellow belt ceremony" quarterly, invite families, photos, social media), progression-based rewards (green belt kids eligible for leadership classes, blue belts become assistant instructors), upsell opportunities (advanced classes for fast progressors). Value: progression visibility increases retention (kids see advancement, stay motivated), instructor efficiency (Jason doesn't manually write certificates), viral moments (parents post social media "Tommy got yellow belt!", brings referrals). Conservative: +8% retention (from 85% to 93%) on 160 karate kids = +12 kids/yr × $180/term × 2 terms = $4.32k revenue + word-of-mouth referrals = $4.32k+/yr.
4. Parent-Child Profile Linking + Multi-Enrollment — One Login, Multiple Kids, Unified Billing, Zero Chaos
Custom system: [Family Dashboard]. Sarah logs in once. Sees: "Your family. Tommy (age 8, karate Mon/Wed + swim Sat). Bella (age 5, gymnastics Tue/Thu). Liam (age 3, none yet)." Sarah can: enrol Liam in mommy-and-me swim class, system auto-bundles: Tommy $34.20/week + Bella $34.20/week (with sibling discount) + Liam $18/week (mommy-and-me rate) = $86.40/week, one invoice. Billing shows: "Family Account: Sarah. Total weekly $86.40 (3 kids, 4 classes). Due every Monday." Marcus's backend: "Sarah's family: 3 active kids, 4 classes, $86.40/week locked. Dashboard roll-up: 240 families × 2.67 kids/family = 640 kids enrolled. 18% of families have 3+ kids (72 families), these are high-lifetime-value accounts." System auto-detects: "Sarah added Liam mid-term, charges: 1 full week × $18 (prorated), then 10 weeks × $18." Zero billing disputes (system transparent, parents see per-child breakdown). Marcus saves: 6 hrs/week manual family reconciliation (merging duplicate accounts, fixing billing splits) × $25/hr × 48 weeks = $7.2k labour. Plus: parent friction drops (parents login once, manage all kids, vs switching between 3 accounts, much higher NPS). Value: $7.2k labour + retention improvement = $7.2k/yr.
5. Instructor WWCC + Child Safety Compliance — Automated Tracking, Expiry Alerts, Insurance Audit-Ready, Zero Liability
Custom system: [Compliance Dashboard]. Children's activities in QLD require WWCC (Working with Children Check) for all staff + volunteers. Each instructor has WWCC expiry date. System tracks: "Jason WWCC expires 12 Mar 2027, Emma 8 Oct 2026 (expires soon, alert now). Priya 30 Jun 2026 (expired, cannot schedule)." System auto-alerts 90 days before: "Emma WWCC expires 8 Oct, renew now via QLD WWCC portal. Upload new cert when ready." Emma renews, provides certificate, system updates: "Emma WWCC renewed, expires 8 Oct 2029." System prevents: Priya (expired WWCC) from being scheduled. Marcus tries to add Priya to Fri 4pm karate, system blocks: "Priya WWCC expired 30 Jun 2026, cannot schedule. Renew WWCC and upload certificate." Safety culture: system auto-detects roster changes (if Marcus tries to hire new instructor Alex, system notes "Alex has no WWCC on file", prevents scheduling until cleared). Audit trail: system logs every WWCC check (date, instructor, expiry date, certificate upload timestamp, system verification). Marcus generates: audit report "10 Oct 2026: 6 instructors + 2 volunteers = 8 staff. All 8 have active WWCC (Jason, Emma, Priya, Alex, Kai, Sarah, Tom, Lisa). Zero expired. Zero missing. Compliance 100%." Insurance auditor verifies report, studio's public liability insurance confirmed, zero liability gap. Behold: system also tracks first aid certification (required for swim instructors), working-with-children-online training (NSW requirement for any online coaching), duty of care incident log (if a child injury happens, system captures: date, instructor, class, incident note, injury severity, follow-up action). Value: zero compliance breaches (prevents teaching with expired credentials, legal liability eliminated) + audit time (system generates report in 2 clicks vs 8 hrs manual work) + incident tracking (system is audit evidence if dispute arises) = $2k liability value + $1.6k audit prep savings = $3.6k/yr.
6. Parent Communication Hub — Absence Alerts, Class Changes, Absence Tracking, Reduce Churn
Custom system: [Parent Portal + Alerts]. Marcus updates: "Karate class Wed 4pm moved to Wed 5pm, effective 25 Aug." System automatically notifies: 85 enrolled parents (email + SMS in-app notification, zero manual send). Parents see: "Class Change Alert: Tommy's karate class moved Wed 5pm starting 25 Aug. Confirm you received this." System tracks: 82 confirmations received, 3 parents unconfirmed. Marcus sends targeted reminder to unconfirmed parents. Plus: absence tracking. Sarah's family: Tommy skips karate 3 weeks in a row (Mon class missed, Wed class missed). System alerts Sarah: "Tommy absent 3 classes this month. Everything okay? Reply here or schedule a chat with Jason." Sarah responds: "Busy month, back next week." System notes this, prevents automatic pause/cancellation (many studios auto-cancel after 3 absences, losing the family). Marcus can see: "August: 38 kids absent 3+ classes. Intervention sent to 38 families. 35 responded, returned. 3 didn't respond, likely to churn." System sends proactive retention nudge: "Tommy hasn't attended since 28 Aug. We miss you! First class back is free. Come back this week?" Retention win. Plus: event announcements. Marcus sends: "Winter belt ceremony, 15 Oct, 6pm studio. All white–green belts invited. Parents welcome. Light refreshments. RSVP by 8 Oct." System tracks RSVPs (30 of 85 kids RSVP'd), generates: seating plan, certificate printing list, photos captured, post-event social media with tagged families (viral moment). Value: churn reduction (1–2 families/term prevented = $360 × 1.5 = $540) + absence follow-up prevents cancellation (system data: 35 families returned after absence alert = $360 × 35 = $12.6k retained) + event hype (increased referrals from social media buzz) = $540 + $12.6k + $2k referral value = $15.14k/yr.
Three-Studio ROI: Year 1 Break-Even, Year 2+ $40k/yr Profit
Build cost: $120k (term enrolment + sibling bundling + recurring billing + belt progression + parent-child linking + WWCC tracking + parent portal + student database + payment processing integration). Year 1 ops: $6k/yr (cloud hosting + payment processing + updates). Total Year 1 investment: $126k. Value captured: (1) SaaS elimination (Mindbody $5.4k/yr × 3 studios = $16.2k) → custom $6k ops = save $10.2k. (2) Labour automation ($15.6k admin time, reduce to 2 hrs/week = $2.6k, save $13k). (3) Billing improvement ($6.45k). (4) Churn + retention ($15.14k). (5) Belt progression referrals ($4.32k). (6) Compliance + family profile automation ($10.8k). Year 1 total value: $10.2k + $13k + $6.45k + $15.14k + $4.32k + $10.8k = $59.91k. Year 1 net: $59.91k - $126k = -$66.09k (build cost heavy, but value outpaces average SaaS spend). Year 2: value repeats ($59.91k) minus build, plus compounding (studio grows 12%, enrollment increases, margins improve), net $40k+ profit. Year 3: $40k+ pure profit. 3-year projection: Year 1 -$66k, Year 2 +$50k, Year 3 +$45k, cumulative $29k (3-year payoff with scale). Conservative upside: grow from 3 studios to 5 studios (scale platform zero additional build), Year 2+ profit becomes $70k/yr. Want ROI modelled for your studio count + current SaaS spend? Check platform pricing or book a call — we'll handle term enrolments, sibling discounts, recurring billing, belt progression, WWCC compliance, and parent churn reduction. Martial arts, gymnastics, swim, dance — same architecture, different category pages.
Six FAQs
What is WWCC and why do children's activity studios need it in Australia?
WWCC (Working with Children Check) is a state-based government screening for anyone working with children (instructors, admin staff, volunteers). Required if: (a) employee has direct contact with children, (b) student is under 18. Martial arts instructors, gymnastics coaches, swim teachers = direct contact = WWCC mandatory in QLD. WWCC screening checks: criminal history, sex offense register, child protection order history, interstate records if applicable. Takes ~2 weeks, valid for 5 years. Cost: $110 one-time for instructors (varies slightly by state: QLD $110, NSW $110, VIC $80, WA $55). State variation: NSW has separate "Working with Children History Check", VIC uses "Working With Children Check", WA uses "Regulation 4.7 Check" — system must track state + requirement type. Studio liability: if an instructor teaches without valid WWCC, studio's insurance may not cover incidents (instructor acted without clearance, studio in breach of duty of care). Platform tracks WWCC expiry per instructor per state, alerts before expiry, prevents scheduling un-cleared instructors, generates compliance audit report. Studio auditor verifies: "All 6 instructors have active WWCC (state-appropriate), zero liability exposure." Insurance happy, staff compliant, litigation risk mitigated.
How does sibling discount bundling work, and can parents split it across terms?
Sibling bundling: automatic discount when 2+ kids from same family enrol. Setup: Marcus configures "2 kids: 10% second child, 3 kids: 10% second + 15% third." Sarah enrolls Tommy + Bella (2 kids): system applies 10% to Bella's fees. Sarah enrolls Liam later (3 kids): system recalculates, applies 10% to Bella + 15% to Liam, adjusts Sarah's weekly charge. System tracks: per-child discount (Tommy $180 no discount, Bella $162 with 10%, Liam $153 with 15%), per-family total ($495/term = $49.50/week). Across-term: Sarah can switch kids' classes mid-term (Tommy adds Wed class, Bella drops Tue class). System re-bundles: new fee structure, prorates changes (mid-week switch = charge 2 days old rate + remaining days new rate). Discount stacking: system prevents double-dipping (parent can't claim sibling discount + "loyalty discount" + "referral discount" together; instead, system applies best discount). Transparency: parent sees line-item breakdown (Tommy $180, Bella -$18 sibling discount = $162, total $342). Zero disputes because system shows exact math. Audit: Marcus sees "Winter term sibling discounts: $5,400 applied across 180 kids. ROI: $5,400 discount drove +24% enrolment growth vs term prior." Discount justified by volume.
Can families switch classes mid-term without penalty?
Yes, with prorated adjustments. Setup: Sarah enrols Tommy in Mon/Wed karate. Week 6 of 10-week term, Tommy wants to add Thu karate. System calculates: remaining weeks = 5, original fee $180/term = $18/week, new class = $18/week, switch cost = $18 × 5 weeks = $90 (prorated). System charges: $90 immediately, updates weekly recurring (previously $34.20, now $52.20 for remaining 5 weeks to cover both classes). Alternative scenario: Tommy drops Mon karate (only continues Wed). System refunds: $18 × 5 weeks = $90 (refund eligible if dropped 7+ days before class, otherwise admin fee applies). Penalty logic: Marcus sets "drop within 7 days = $20 admin fee", system auto-deducts. Transparency: Sarah sees charge/refund reason in app, no surprises. System tracks: "Mid-term changes: 23 families added classes, 8 families dropped, net +15 kids added = +$2.7k revenue, zero disputes." Reduces rigidity (families aren't locked, increases retention because they can adapt to schedule changes).
How does the platform handle payment failures and declined cards?
Custom system: [Smart Dunning]. Weekly charge Monday $34.20 for Sarah's family. Card declined (insufficient funds, expired card, daily limit hit). System auto-retries Tuesday 10am (account replenished). Retry fails, system retries Wed 2pm (different time, catches limit resets). Still fails? System sends Sarah email + SMS: "Payment failed. Update your card here [link] or call us. Class access unaffected until Friday." Parent self-service: Sarah adds backup card in app, system immediately retries, success. Parent doesn't respond: system auto-pauses new enrolments (can't enrol Liam in a new class until payment cleared) but doesn't cancel current classes (Tommy's karate continues, maintains engagement). System alerts Marcus: "10 families pending payment (total $341), 3+ days overdue." Marcus can: auto-charge backup card on file (if enabled), message parents directly, pause class access, or skip (wait for parent action). Reporting: Marcus sees "Failed charges: 120 attempted/week, 18 failed (15%), 15 auto-resolved (dunning retries), 3 manual follow-up, 99% eventual collection." System prevents: surprise large catches (months of failed charges hit at once), customer churn from frustration (multiple retries space out, gives parent time), lost revenue from dunning neglect. Value: 99% collection vs 85% = +$3,850/yr on $27.5k base + reduced admin = huge impact.
Can the platform track multiple kids across different class types (martial arts, gymnastics, swim)?
Yes. System manages unlimited class types. Setup: Marcus configures: "Martial Arts: karate, taekwondo, judo (belt progression tracked). Gymnastics: pre-school, recreational, competitive (no belt system, just class tiers). Swim: parent-child swim, recreational, competitive stroke work (grading via badge system). Dance: ballet, hip-hop, contemporary (recital-focused, costume tracking)." Sarah enrols: Tommy (8) in karate + swim, Bella (5) in gymnastics, Liam (3) in parent-child swim. System creates family dashboard: "Family: Sarah. Kids: Tommy (karate Mon/Wed + swim Sat = $180/term + $120/term = $300), Bella (gymnastics Tue/Thu = $180), Liam (swim Sat = $120). Total $600/term = $60/week." Billing: single invoice. Progression tracking: per-class-type. Tommy in karate: white→yellow belt progression tracked. Tommy in swim: badge system (completed freestyle, progressing to backstroke). System rosters: "Mon karate: Tommy 8yo. Wed karate: Tommy 8yo. Sat swim: Tommy 8yo + Liam 3yo (parent-child). Tue gymnastics: Bella 5yo." Multi-class cross-studio: if Marcus has 3 studios, Bella takes gymnastics at Studio 1, Tommy takes karate at Studio 2, system shows: "Siblings across studios: Tommy Studio 2, Bella Studio 1. Family weekday logistics: Tue 4pm Studio 1 (Bella drop-off), Wed 4pm Studio 2 (Tommy pick-up, drive time 20 mins)." Advanced: system can suggest: "Wed 4:30pm karate at Studio 1 branch (closer to home)" for convenience. Benefits: unified parent experience, unified billing, multi-location optimization. Reporting: Marcus sees "Karate: 160 kids. Gymnastics: 200 kids. Swim: 180 kids. Combined: 240 families, 540 kids (avg 2.25 kids/family across all class types). Revenue: $74.4k/term." Scales to 10+ class types, 10+ studios.
What's the difference between children's activity software and general booking platforms like Mindbody?
Mindbody ($199–399/mo per location, plus per-class fees): general fitness booking (yoga, pilates, personal training, occasional classes). Works for kids' activities but lacks structured-activity-specific features: no term enrolment (designed for drop-in classes, not committed terms), no sibling bundling (parents negotiate discounts manually), no belt/grading progression (Mindbody is class-focused, not milestone-focused), no multi-kid family profiles (systems treats each kid as separate account, billing explodes), no WWCC compliance (AU kid-safety-specific, Mindbody is generic), no absence tracking + retention nudges (designed for adult gyms, not kid churn). Generic approach: parents book drop-in classes (no commitment, low lifetime value), you pay high per-class fee ($3–5 per student per booking, caps at 500+ students because cost explodes), recurring billing is weak (Mindbody charges monthly subscription + per-booking, conflicting models). Custom children's activity platform: term-driven enrolment (parents commit to 10-week term = predictable revenue, no drop-in chaos), all-in pricing (no per-student fee, recurring weekly billing = stable cash flow), family bundling (siblings discounted, one login, one invoice = frictionless). Cost comparison: Mindbody 3 studios × $300/mo = $10.8k/yr + per-class fees (800 kids × 2 classes/week × 10 weeks/term × 2 terms × $4 fee = $12.8k/yr) = $23.6k/yr total. Custom platform: $6k/yr ops, all-in, plus progression features (Mindbody won't build belt tracking, absence alerts, family dashboard). Plus: custom builds activities-specific workflows (belt ceremonies, multi-class siblings, WWCC automation), giving your studio competitive moat (parents see professionalism, tech-enabled care). Verdict: if you're running term-based children's activities with 2+ locations + 2+ class types, custom is 4× cheaper + better-featured + compliant.