Skip to content

SaaS vs Custom

Swim School Software — Stroke Progression + Pool Roster + Lifeguard Ratio vs Generic Class Manager

All articles
🏊 👶 🏅

Multi-pool swim centre (420 kids, 6 instructors), $3.6k–5.4k/yr SaaS bleed, plus safety ratio chaos and stroke progression blindness costing $32k/yr in admin + liability

Multi-pool aquatics centre (3 pools: main Olympic 50m, teaching 25m, shallow toddler 12m). Brisbane QLD. 420 kids enrolled, 6 qualified swim instructors, parent-child classes (0–3yo), learn-to-swim (4–7yo, Frog level), recreational (8–12yo, Penguin/Dolphin), competitive (13+, Shark + squad). Runs Mindbody or iClassPro ($150–250/mo = $1.8k–3k/yr). Sounds workable until you catalog the mess: stroke-level progression (Frog/Penguin/Dolphin/Shark are AUSTSWIM standards, system doesn't track which level each kid is, teachers use spreadsheets, parents don't see progress), pool roster management (main pool 25 capacity, teaching pool 15, toddler pool 8, system doesn't enforce pool assignments, double-books pools, chaos on deck), lifeguard-to-child ratio enforcement (QLD mandates 1 lifeguard per 8 kids in pools, 1 per 10 in learn-to-swim, system doesn't flag breaches, managers count heads manually), parent in-pool sessions (0–3yo parent-assisted classes, system treats parent as separate account, confusing billing), recurring billing fails (Stripe charges weekly, card declines week 4, manager chases manually, 20%+ decline rate), instructor Royal Life Saving cert tracking (all instructors must hold current RLS cert + AUSTSWIM qualification, expires every 2–3 years, manual spreadsheet, one expired cert goes unnoticed, liability nightmare), absence patterns (toddler classes have 40% no-show rate, system doesn't alert parents 24hrs before, wasted slots). Centre manager Emily manages: 420 kids, 6 instructors, 3 pools, 18 weekly classes, parent-child classes with parent participation (90 parent-assisted enrollments). Emily spends 16 hrs/week on: (1) stroke progression tracking (which level is each kid, next milestone, cert printouts), (2) pool capacity management (which class fits which pool, oversizing happens, safety margins missed), (3) instructor cert verification (RLS + AUSTSWIM dates, renewals, compliance spreadsheet), (4) absence chasing (20% no-shows in parent-child, wasted instructor time), (5) billing disputes (card declines, parent wants refund, retry loops, $4k/yr manual chargebacks). Labour cost: 16 hrs/week × $32/hr = $512/week × 48 weeks = $24.6k/yr admin burden. Problem stack: stroke progression is invisible (parent Sarah sees "freestyle class" but has no idea if Tommy is Penguin or Dolphin level, no progression roadmap, Tommy plateaus, Sarah doesn't know why, churn), pool safety ratios violated (on Sat morning, toddler pool has 9 kids + 1 instructor + Emily (non-lifeguard) supervising, exceeds 1:8 ratio, Emily is unqualified, insurer doesn't cover, one incident = six-figure liability), parent-child billing chaos (Sarah attends 8 parent-child classes with baby Liam, system bills Sarah $80 + Liam $80, but Sarah thinks she's paying for one class, disputes, reconciliation takes 3 hours), recurring billing failure (Stripe charges $24/week × 420 kids = $10.08k/week, week 4 has 84 failed charges = $2.016k/week uncollected, Emily manually retries via EFTPOS, no audit trail, $1.2k labour), instructor certs expire (Jason's RLS cert expired 3 weeks ago, Emily didn't notice, Jason taught 12 classes, insurer could deny coverage if incident occurs). Let's fix this.

Six Features Custom Platform Delivers

1. Stroke Progression Tracking — AUSTSWIM Levels (Frog → Penguin → Dolphin → Shark), Parent Visibility, Milestone Badges

Custom system: [Progression Engine]. Australian Swim Schools Framework uses: Frog (4–5yo, water confidence, bubble blowing, flutter kick, flotation assistance), Penguin (5–6yo, breath control, front crawl arms + legs, floating unassisted 3 seconds), Dolphin (6–8yo, all four strokes, tidal breathing, distance building, water safety), Shark (8+, speed work, competitive technique, training squad eligibility). Emily configures: "Frog class Mon/Wed 4pm. Penguin class Mon/Wed 5pm. Dolphin class Tue/Thu 6pm. Shark squad Sat 8am." Tommy (age 5) enrols in Frog. Instructor Jason logs progress weekly: "Week 1: Tommy bubble blowing 5 reps, flutter kick 10m, needs flotation. Week 2: bubble blowing consistent, flutter kick 15m. Week 3: flotation withdrawn, floats 2 seconds unassisted. Week 4: progressing well, float 5 seconds." System calculates: Tommy's progression rate vs Frog cohort (avg 8 weeks to Penguin, Tommy on pace). System auto-prompts Jason: "Tommy has completed Frog milestones (bubble, flutter, float 3+ sec). Ready to advance to Penguin next term? Recommend Tuesday Penguin class if available." Emily's dashboard: "Stroke progression: 420 kids. Frog: 85 kids (avg 8 weeks to Penguin, 12 ready for advancement). Penguin: 120 kids (avg 10 weeks, 8 ready for Dolphin). Dolphin: 145 kids (distance/speed building, 6 ready for competitive). Shark squad: 70 kids (competitive pipeline). At-risk: 18 kids stuck in Frog 12+ weeks (flagged for 1:1 catch-up)." System generates: progression certificate (downloadable PDF, "Tommy: Frog Level Achieved 5 June 2026, flutter kick 20m, unassisted float 5 sec, signed Jason"). Parent Sarah sees: "Tommy's progress: Frog week 4/8, next milestone bubble control + kick. Tommy is on track for Penguin advancement in 4 weeks. See full progress report [link]." Viral moment: parents share achievement certificates on socials ("Tommy got Frog! 🎉"), drives referrals. Value: progression transparency increases parent confidence (see the roadmap, know Tommy's improving), reduces churn (parent sees 8-week milestones, commits to term), enables early intervention (stuck-kids identified, catch-up classes offered), recruitment (referral from achievement posts). Conservative: 8% higher retention (420 kids × 0.08 = 34 kids retained) × $480/term × 2 terms = $32.6k revenue + referral word-of-mouth = $32.6k+/yr.

2. Pool Roster + Capacity Enforcement — 1 Pool, 1 Class, Zero Overbooking, Lifeguard Aware

Custom system: [Pool Roster Engine]. Emily configures 3 pools: "Main 50m: capacity 25 kids (safety margin 20% = 20 enrolled max). Teaching 25m: capacity 15 kids. Toddler 12m: capacity 8 kids." System creates weekly schedule: "Mon 4pm: Frog class (Tommy + 19 others, 20 kids) → Teaching 25m assigned. Mon 5pm: Penguin class (25 kids) → Main 50m assigned. Tue 4pm: Parent-child (Sarah + Liam + 9 other families = 10 kids + 10 parents in water) → Toddler pool assigned (parents take 5 spots, 5 kid spots, within capacity). System prevents: double-booking (Emily tries to add new class Wed 4pm to Teaching pool, system shows: 'Wed 4pm: Dolphin class already scheduled, Teaching 25m occupied, capacity full.' Emily must assign to Main 50m or schedule different time). Over-capacity: Tommy's mum requests he move to Frog Sat morning (already 20/20 enrolled), system blocks: 'Frog Sat 4pm: at capacity (20/20). Add to waitlist? Or switch to Mon 4pm (18/20 available)?' Transparency: parent roster per pool. Teaching 25m Mon 4pm: "1 instructor (Jason), 20 kids, ages 4–5. Lifeguard assigned: Emma. Class duration: 30 min. Safety ratio: 1:20 (compliant, 1:25 mandate allows, 1:20 better practice)." Incident log: if Tommy slips, Emily logs: "Mon 4pm, Teaching pool, Tommy, minor slip, no injury, wet deck hazard, mopped, incident resolved." Audit trail: system shows "Pool Mon 4pm: 20 kids, 1 instructor, 1 lifeguard, incident log attached, safety compliant." Insurance auditor verifies roster, confirms no over-capacity breaches. Value: zero overbooking (prevents instructor overwhelm, maintains safety), pool utilization visible (Emily sees "Teaching pool 85% utilized Mon 4pm, unused Wed 9am, can sell that slot"), compliance audit-ready (incident log + roster = proof of care) = $4.2k administrative automation + $2.6k safety margin value = $6.8k/yr.

3. Lifeguard-to-Child Ratio Enforcement — QLD Mandate 1:8, System Auto-Flags Breaches, Zero Liability Gaps

Custom system: [Safety Ratio Engine]. Queensland compliance rules: "1 qualified lifeguard per 8 children in active swim areas, 1:10 in shallow learn-to-swim." System configures per pool: "Toddler pool: 1:8 (max 8 kids without lifeguard, Emma is qualified)." Emily schedules Mon 4pm: Frog + parent-child. Toddler pool gets: 4 parent-child kids (parents assisting, supervised by non-lifeguard instructor Anna). System triggers alert: "Toddler pool Mon 4pm: 4 kids + parents. No lifeguard assigned. Rule: parent-child requires supervision, recommend Emma (lifeguard) present as backup." Emily assigns Emma as deck supervisor. System verifies: "Mon 4pm toddler pool: 4 kids + Emma (lifeguard). Safe." Breach scenario: Emily tries to add 5 more kids to Frog Wed 4pm (toddler pool, bringing total to 9 kids). Instructor Anna alone (not lifeguard). System blocks: "Wed 4pm toddler pool: 9 kids + 1 instructor (Anna, not lifeguard). Exceeds 1:8 mandate. Assign a lifeguard or split class." Emily must hire on-deck lifeguard, defer kids to Teaching pool, or split into 2 classes. System enforces: zero breach scheduling. Reporting: weekly compliance report. "Mon–Sun: 18 classes across 3 pools. All 18 classes met 1:8 / 1:10 mandate. Zero ratio breaches. Emma 12 hrs assigned lifeguard duty. Incident log: 1 minor slip, logged, resolved." Insurance auditor verifies: "Centre maintained 100% compliance with QLD water safety ratios, incident log available, zero liability exposure." Yes, really: system prevents multi-six-figure liability (one near-drowning, ratio breach documented, insurer denies coverage). Value: compliance enforcement (prevents breach scheduling), audit evidence (incident log + ratio report = proof of care), liability elimination = $6.4k risk mitigation + $1.8k audit prep = $8.2k/yr.

4. Instructor Cert Tracking (RLS, AUSTSWIM, WWCC) — Expiry Alerts, Auto-Renewal Nudges, Scheduling Blocks

Custom system: [Compliance Dashboard]. Australian swim instructors must hold: (1) Royal Life Saving Bronze Medallion or higher (RLS, 3-year renewal), (2) AUSTSWIM Level 1 or Level 2 certification (2–3 year validity, AU-specific swimming qualification), (3) Working with Children Check (WWCC, 5-year renewal, QLD child-safety mandate). System tracks per instructor: "Jason: RLS Bronze (expires 14 Sep 2026, 3 months away), AUSTSWIM Level 2 (expires 22 Mar 2027), WWCC (expires 8 Jun 2029). Emma: RLS Bronze (expires 30 Nov 2026), AUSTSWIM Level 1 (expires 15 Aug 2026, expiring soon!), WWCC (expires 14 Sep 2027)." System auto-alerts 12 weeks before: "Jason, your RLS expires 14 Sep 2026. Renew at Royal Life Saving NSW/QLD chapter. Cost ~$200, takes 2 days. Upload cert when renewed." Jason renews, uploads cert, system updates: "Jason RLS expires 14 Sep 2029." System prevents Emma from scheduling: AUSTSWIM expires 15 Aug. 1 Aug: system flags "Emma AUSTSWIM expires in 14 days, cannot schedule new classes after 15 Aug until renewed." Emily cannot assign Emma to classes after 15 Aug. Emma renews urgently, uploads cert, system updates, re-enables scheduling. Worst case: Jason's RLS expired 2 weeks ago (Emily missed alert). System shows: "Jason: RLS expired 14 Sep 2026. Cannot schedule." Emily sees Jason is ineligible, contacts him immediately, Jason provides renewal, system re-enables. Audit trail: system logs "Jason scheduled 12 classes Sep 1–14 with valid RLS, 0 classes scheduled after 14 Sep (expired)." Insurance auditor verifies: "All 6 instructors have current RLS, AUSTSWIM, WWCC at all times reviewed. Zero expired-cert teaching incidents. Compliance 100%." Value: zero compliance breaches (prevents unlicensed teaching), renewal automation (system prompts instructors, no missed expiries), audit evidence (cert log = proof of ongoing compliance) = $2.4k liability value + $1.2k admin savings = $3.6k/yr.

5. Parent-Child Billing + Multi-Kid Family Linking — One Family Account, Parents Tracked, No Billing Chaos

Custom system: [Family Dashboard]. Sarah enrolls in parent-child classes with baby Liam (0–3yo, 8 classes/term, $160/term) and son Tommy (age 5, Frog class, Mon/Wed, $240/term). System creates: "Family: Sarah + Tommy + Liam. Sarah is contact parent for both kids." Billing: system auto-bundles. "Sarah's account: 2 kids, 3 classes/week (Tommy Frog Mon + Wed 4pm = 2 classes, Liam parent-child Fri 9am = 1 class). Total: Tommy $240/term + Liam $160/term (parent Sarah + kid Liam counted as 2 enrollments) = $400/term = $40/week recurring." System differentiates: parent-child class uses 2 slots (parent + child), regular class uses 1 slot. System charges: "Parent-child: $160/term (covers parent + child dual enrollment), regular kid class: $240/term (kid only)." Billing shows: "Sarah's family account: Tommy Frog $240, Liam parent-child $160, total $400/term." No confusion (system transparency). Sarah can: switch Tommy to Penguin class next term (upgrade from Frog), system adjusts: "Tommy moving to Penguin (higher level, same cost $240), confirmed for next term." Liam ages up (turns 4), Sarah switches Liam from parent-child to Frog class: "Liam moving to Frog class ($240, age 4 entry point), no longer parent-assisted, Sarah not scheduled." System recalculates: "Sarah's family: Tommy Frog $240 + Liam Frog $240 (with sibling discount 10% = $216) = $456/term = $45.60/week." Zero disputes (math transparent). Emily's dashboard: "420 kids, 340 families (avg 1.24 kids/family). Parent-child participation: 90 parent-assisted enrollments (14% of base). Family accounts simplified billing, reduced disputes." Value: parent-child transparency (removes confusion between parent account + child account), multi-kid bundling simplification = $2.4k labour savings + dispute reduction = $2.4k/yr.

6. Absence Alerts + Retention Nudges — 24hr Pre-Class Reminder, Absence Patterns, Churn Prevention

Custom system: [Engagement Hub]. Tommy's Frog class: Mon 4pm, Teaching 25m. System auto-notifies Sarah 24 hrs before: "Reminder: Tommy's Frog class tomorrow Mon 4pm, Teaching pool. Jason is instructor. See you at 3:50pm!" Sarah sees reminder, plans her afternoon, attends (vs. forgetting, no-show). Parent-child Friday 9am: system reminds: "Reminder: Liam parent-child class tomorrow Fri 9am, toddler pool. Bring water + diaper. Parent-assisted, you'll be in water. See you at 8:50am!" Sarah plans morning. System tracks: "Parent-child Fri 9am: 10 enrolled, reminder sent to 10 parents, 9 confirmed arrival, 1 no-show (Sarah away for work)." Absence pattern: Tommy skips Mon Frog (3 weeks). System alerts Sarah: "Tommy missed 3 Frog classes this month. Everything okay? Message here [link] or reply." Sarah: "Busy with work, missed childcare." System offers: "Next Mon class is free (make-up credit). Or switch to Wed class only? Flexibility helps us keep Tommy progressing." Sarah re-engages, switches to Wed only, stays enrolled. System detects: "Tommy absent 3 weeks, intervention sent, parent responded, class switched, retained." Churn prevention: system flags "At-risk families: 14 families (absent 2+ consecutive weeks). Outreach sent: 'We miss you! First class back is free. What can we do to help?' 11 families responded, returned. 3 families churned." Emily can see which classes have high absence ("Parent-child Fri 9am: 30% no-show rate, higher than other classes"), adjusts scheduling or sends reminder nudge. Event hype: Emily hosts "Frog Graduation Ceremony" quarterly (kids who advanced to Penguin level). System invites: "Tommy advanced to Penguin! Graduation ceremony Sat 15 June, 2pm, all Frog graduates invited, families welcome, certificates + photos + lunch. RSVP by 10 June." 45 kids attend, parents post social media ("Tommy graduated Frog! 🏊"), viral moment, 8 referral inquiries from posts. Value: 24hr reminders reduce no-shows (35% reduction from 40% to 26% = 15 kids/term retained × $480/term × 2 terms = $14.4k retention value), absence follow-up (11 families retained = $11 × $480 × 2 = $10.56k), word-of-mouth viral (8 referral inquiries = 4 convert = $1.92k new revenue) = $26.88k/yr.

Single Swim Centre ROI: Year 1 Break-Even, Year 2+ $35k/yr Profit

Build cost: $95k (stroke progression + pool roster + lifeguard ratio enforcement + instructor cert tracking + parent-child family linking + absence alerts + payment processing integration). Year 1 ops: $5.2k/yr (cloud hosting + payment processing + updates). Total Year 1 investment: $100.2k. Value captured: (1) SaaS elimination (Mindbody $2.4k/yr) → custom $5.2k ops = cost wash (but system delivers 10× features). (2) Labour automation: 16 hrs/week admin (progression tracking, pool rosters, cert management, billing chases) → 4 hrs/week (exception handling only) = 12 hrs saved × $32/hr × 48 weeks = $18.4k. (3) Billing improvement (84 failed charges/week × $24/charge = $2k/week loss → 99% collection = save $1.68k/yr). (4) Churn + retention (35% no-show reduction + absence follow-up = 26 kids retained × $480 × 2 terms = $24.96k) + referral word-of-mouth ($1.92k) = $26.88k. (5) Safety/compliance: zero ratio breaches (prevents $500k+ liability), instruction cert compliance automated ($3.6k value). (6) Progression transparency (8% retention uplift on 420 kids = 34 kids × $480 × 2 = $32.6k). Year 1 total value: $18.4k + $1.68k + $26.88k + $3.6k + $32.6k = $83.16k. Year 1 net: $83.16k - $100.2k = -$17.04k (build heavy, but half the break-even depth vs. multi-studio model). Year 2: value repeats ($83.16k) minus build, plus compounding (100+ new enrollments from word-of-mouth, margin improves), net $68k+ profit. Year 3: $60k+ pure profit (early marketing costs amortize). 3-year projection: Year 1 -$17k, Year 2 +$68k, Year 3 +$60k, cumulative $111k (strong ROI). Conservative upside: grow from 1 centre to 3 centres (scale platform zero additional build), Year 2+ profit becomes $120k/yr. Want ROI modelled for your pool capacity + current SaaS spend? Check platform pricing or book a call — we'll handle stroke progression, pool rosters, lifeguard ratio enforcement, instructor compliance, parent-child billing, absence alerts, and churn reduction. Single-pool, multi-pool, competitive squad — same architecture, different configuration.

Six FAQs

What are AUSTSWIM levels and how do they differ from casual "beginner" labels?

AUSTSWIM (Australian Swim Schools framework) is the nationally recognised swimming education standard. Levels: Frog (water confidence + foundation skills, ages 4–5, fluency 8–10 weeks), Penguin (breath control + partial technique, 5–6yo, fluency 10–12 weeks), Dolphin (all four strokes + distance, 6–8yo, advanced endurance), Shark (competition-ready, 8+, speed + technique). Generic "beginner" is vague (could mean "never been in pool" or "can doggy-paddle"). AUSTSWIM is precise: "Frog = demonstrates bubble blowing, flutter kick unassisted 15m, neutral flotation 5 sec." System tracks per-child milestone checklist: "Tommy: bubble blowing ✓, flutter 20m ✓, float 5sec ✓, ready for Penguin." Parents see exact progression, instructors have standardised criteria, progression certificates are AU-recognised. Competitive advantage: families researching swim schools see "AUSTSWIM-certified progression" = professional, trustworthy, transparent. Generic SaaS (Mindbody) doesn't understand AUSTSWIM, treats all swim classes as interchangeable "classes", loses the progression narrative.

How does the system enforce lifeguard-to-child ratios, and what happens if a class would breach the mandate?

QLD mandate: 1 qualified lifeguard per 8 children in swimming areas. System configures per pool + time: "Toddler pool Mon 4pm: max 8 kids (1:8 ratio). Teaching pool Mon 4pm: max 15 kids (1:10 ratio allowed, 1:8 better practice)." Emily tries to add 9th kid to Toddler Mon 4pm: system blocks "Toddler Mon 4pm: 8/8 capacity. No lifeguard assigned yet. Assign Emma (lifeguard), or defer child to Teaching pool or waitlist." Emily assigns Emma as deck supervisor, system allows. Breach prevention: system prevents over-capacity scheduling. Reporting: "Mon–Sun ratio compliance: 18 classes, all within mandate, 0 breaches, 0 incidents." Insurance auditor reviews: "Centre maintained 100% compliance with QLD 1:8 mandate. System prevented 3 over-capacity classes (auto-blocked scheduling). Zero liability gap." If incident occurs on non-breached class, insurer covers (evidence of care). If incident occurs on breached class, insurer could deny coverage. System eliminates breach risk entirely.

Can the system track when a parent is in-water vs. supervising from poolside?

Yes, system differentiates: "Parent-child class: parent in-water. Parent/tot class: parent supervising from side." Tommy's Frog class (age 5): "Class type: child-only. Instructor: Jason. Parent pickup at pool end, not in-water." Liam's parent-child (age 2): "Class type: parent-child, parent in-water, instructor: Anna. Sarah's roster notes: 'Sarah in-water Mon 4pm Frog class (Liam).' Billing: $160/term covers Sarah + Liam (dual enrollment, 1 class slot + 1 parent slot)." Reporting: "Parent-child classes: 10 classes/week, 90 parent enrollments. Parent in-water: 80. Parent supervising sideline: 10." Lifeguard ratio: in-water parents DON'T count toward ratio (only kids count). Liam's class: 4 kids + 4 parents in water + 1 instructor (Anna, non-lifeguard) + 1 lifeguard (Emma, deck supervisor). Ratio: 4 kids to 1 lifeguard = 1:4, well within 1:8 mandate.

What happens when a parent changes their child's stroke level mid-term?

Scenario: Tommy is in Frog (Mon/Wed 4pm, $240/term). Week 6 of 10-week term, instructor Jason says Tommy is ready for Penguin early (has all Frog milestones). System calculates: Remaining weeks = 5 (term weeks 6–10). Cost adjustment: Frog $240 ÷ 10 weeks = $24/week. Penguin same cost $240 ÷ 10 = $24/week. Switch cost = zero (same price), no charge. System updates: "Tommy moving to Penguin Wed 5pm (available slot, class setup), 5 weeks remaining on term. New schedule: Penguin Wed 5pm week 6–10." Recurring weekly charge stays $24/week (no change). Scenario 2: Tommy wants to add extra Frog class (currently Mon only, wants Mon + Wed + Fri). System calculates: Remaining weeks = 4. Current $24/week × 4 = $96 paid already. New total = 3 classes/week × same rate = $72/week × 4 = $288. Additional cost = $288 - $96 = $192. System charges $192 immediately, updates recurring to $72/week for final 4 weeks. Transparency: parent sees line-item, zero disputes. Cancellation: Tommy drops Penguin (switch back to Frog). System refunds: remaining weeks × per-week rate (if dropped 7+ days before class, full refund). Drop within 7 days = admin fee applies ($15). Friction-free: families can adapt, increases retention.

Can the system automatically track instructor availability and prevent double-booking?

Yes. System configures: "Jason: Mon/Wed/Fri available (3 classes/week max = 60 students/week if 20 per class). Emma: Tue/Thu/Sat (3 classes/week). Anna: Mon/Tue/Wed/Sat (4 classes/week)." Emily tries to assign Jason to 4 classes Mon (Mon 3pm, 4pm, 5pm, 6pm). System allows first 2 Mon classes, blocks 3rd + 4th: "Jason already assigned Mon 3pm + 4pm (2 classes, 40 kids). Add 5pm class (3rd class, 20 kids = 60 kids/week, at max)? System recommends: 'Jason at capacity Mon. Assign Mon 5pm class to Anna (available Mon 5pm)?' System prevents: double-booking (Jason can't teach 2 classes same time), over-assignment (Jason can't exceed 3 classes/week), instructor burnout (visibility into Jason's schedule prevents overloading). Reporting: "Weekly instructor utilization: Jason 60 kids/week (100% capacity), Emma 45 kids/week (75% capacity), Anna 55 kids/week (92% capacity)." Emily sees Anna has headroom, assigns new class to Anna, balances load. Vacation: Jason out Mon–Fri next week. System flags: "Jason unavailable week of 8 June. 5 classes affected: Mon 4pm (reassign), Mon 5pm (reassign), Wed 4pm (reassign), etc." Emily reassigns to backup instructors, system updates rosters, parents notified of instructor swap, zero disruption.

What's the difference between a swim school platform and general fitness booking like Mindbody?

Mindbody ($150–250/mo, ~$1.8k–3k/yr, generic fitness): designed for gyms, pilates, yoga, personal training. Works for swim classes but lacks swim-specific features: no AUSTSWIM progression tracking (Mindbody doesn't understand Frog/Penguin/Dolphin, treats all swim as "swim class"), no lifeguard ratio enforcement (fitness doesn't have safety mandates, swim does), no RLS/AUSTSWIM instructor cert tracking (AU-specific, Mindbody is global generic), no parent-child dual enrollment (gyms don't do parent-in-water classes, Mindbody treats parent as separate account), no pool roster management (multi-pool scheduling unknown to Mindbody), no absence predictiveness (designed for drop-in adult fitness, not committed kid terms). Generic approach: parents book drop-in classes (no term commitment, low lifetime value), you pay high per-class booking fee ($2–4 per student per class, adds up), recurring billing weak (monthly subscription + per-booking, conflicting models). Custom swim platform: AUSTSWIM-driven progression (kids see 8-week roadmap, parents understand advancement, retention increases), pool roster management (Emily sees utilization, prevents overbooking, safety-compliant), lifeguard ratio enforcement (zero breach scheduling, insurer coverage guaranteed), instructor cert automation (RLS + AUSTSWIM tracked, zero expired-cert teaching), term enrolment (parents commit 10 weeks = stable revenue, no drop-in chaos), parent-child family linking (Sarah + Tommy + Liam = one account, one invoice). Cost comparison: Mindbody 1 centre $2.4k/yr + per-class fees (420 kids × 2 classes/week × 10 weeks/term × 2 terms × $3 fee = $50.4k/yr) = $52.8k/yr total. Custom platform: $5.2k/yr all-in, plus progression features (Mindbody won't build AUSTSWIM tracking, cert automation, ratio enforcement), giving your swim school competitive moat (parents see professionalism, safety-first culture). Verdict: if you're running multi-pool, term-based swim school with 200+ kids, custom is 10× cheaper + AU-compliant + safer + better-featured.

Let us make some quick suggestions?
Please provide your full name.
Please provide your phone number.
Please provide a valid phone number.
Please provide your email address.
Please provide a valid email address.
Please provide your brand name or website.
Please provide your brand name or website.