All articles

Swim Lesson Scheduling Software Demo Tests for Your Pool

10 min read

Picture the demo. A sales rep clicks through a clean calendar, drags one lesson from Tuesday to Wednesday, and everything looks tidy. Nobody asks what happened to the seven kids in that class, or whether the teacher who covers it also works Wednesday nights at another pool.

That is the problem with most demos. They show the software working on the vendor's imaginary school, not yours. Your timetable has a Level 2 class sharing a lane with a parent and tot group, an instructor who can only start after 3:30, and a term that skips a holiday Monday. A feature list can't tell you whether a tool survives that.

This post is a script. You pull one real week from your own timetable, then run four tests in the demo: build recurring group lessons, set teacher availability, run concurrent classes, and change one lesson time to see what the roster does. Each test has a pass signal. Where I can't say what a tool does, I give you the question to put to any vendor, including Soljio.

Why feature lists don't show whether scheduling software fits your pool

Search for the best swim lesson scheduling software in 2026 and you will find comparison pages with checkmark grids: online booking, payments, waivers, parent communication, waitlists, attendance. Review sites like GetApp and Software Advice add star ratings. Vendor blogs such as Guideflow's swim school software roundup do the same kind of survey. All of that helps you build a shortlist of names like Jackrabbit, iClassPro, Bookeo or Vagaro.

None of it tells you whether a tool fits your pool.

A checkmark next to "recurring classes" doesn't say whether a ten-week term with a skipped holiday is one action or ten. A checkmark next to "online booking" doesn't say what happens to a booked family when you move the class. Two products can share every feature on the grid and behave completely differently once your messy timetable hits them.

Owners at independent schools of 500 students or fewer get hurt most by this, because you don't have a dedicated admin to absorb awkward workflows. If a tool needs six clicks per lesson, you will feel that every term.

So stop comparing grids and start running tests. A hands-on demo with your own data takes about an hour per vendor. It exposes more than any review. If you want the broader buying criteria first, the swim school management software owner buying checklist covers them. This post covers only the scheduling slice.

Prep: pull one real week from your current timetable

Before any demo, print or screenshot one real week. Pick a busy one, not your quietest. You want a week that makes you slightly nervous.

Write down, for every lesson in that week:

  • Day, start time, and length

  • Level or program name

  • Lane, pool section, or deck area

  • Assigned instructor

  • Maximum class size and current enrollment

  • How many weeks the class runs this term, including any skipped dates

Then add the constraints that live in your head. The instructor who is only free after school. The lane that gets shared with a lap swim group until 4:00. The sibling pair who must be back to back. If your sibling constraints are a real headache, read how to fit families into your timetable first so you know which ones to test.

Finally, pick your trap lesson. This is a class you already know is awkward: maybe a 30-minute Level 3 that overlaps two other classes, or a class that always loses its teacher to a conflict. You will use it in test 4.

Send the vendor your week ahead of the call and ask them to build it live. If they insist on a generic demo environment, note that. A vendor who won't touch your data in the demo is telling you something about how onboarding will feel.

If you are bringing a spreadsheet of current students, ask each vendor how rosters get in. Soljio imports rosters from a spreadsheet, so a clean file of names, levels and classes is worth preparing for any tool.

Demo test 1: Build recurring group lessons for a full term

Ask the vendor to create three of your real group lessons as recurring classes across a full term, and watch the clicks.

Count the actions. Creating a Tuesday 4:00 Level 2 class for ten weeks should be one setup, not ten. Then make it harder: tell them week 6 falls on a holiday and the pool is closed that day. Can they skip a single date without breaking the series? Can they add a makeup date at the end?

Pass signal: you can describe the series once, exclude a date, and see the resulting count of sessions without hand-editing each one.

Then check how the term looks from the family side. Where does a parent see the class, and what do they see when they enroll? In Soljio, families enroll and pay on the school's own subdomain, so ask to see that page for your sample class and judge whether a parent could pick the right level without calling you.

Here are the questions to put to any vendor, because I can't answer them for you:

  • Can I edit one session in a series without detaching it from the rest?

  • If I change the whole series, what happens to sessions that already happened?

  • Can a class carry a different length or instructor in a single week?

  • How are term dates and skipped dates stored, per class or school-wide?

Write down the answers verbatim. Vague replies like "we can handle that" score zero until you see it done on screen.

Demo test 2: Set teacher availability and see what it blocks

Availability rules are where scheduling tools either protect you or quietly let you double-book. Test it by trying to break your own rules.

Pick one instructor from your sample week. Tell the vendor their real constraints: available Monday, Wednesday and Thursday after 3:30, not available Tuesdays, unavailable the second week of the term. Then try to assign them to a Tuesday lesson.

Watch three things. Does the tool warn you, block you, or say nothing? Does the warning appear when you assign the teacher, or only later in a report? And can you override it on purpose when you know better, say for a one-time cover?

Next, try the double-booking trap. Assign the same instructor to two overlapping classes in different lanes. A tool that lets this through without a flag will let it through in your real timetable too.

Pass signal: the tool tells you about a conflict the moment you create it, in plain language, and lets you proceed deliberately if you choose.

Questions to ask every vendor:

  • Is teacher availability a hard block or a soft warning, and can I choose?

  • Does the tool know about instructor time off, or only weekly patterns?

  • When an instructor is removed from a class, what happens to future sessions?

  • Can a substitute be named for one session without touching the series?

On the day a substitute actually steps in, handover matters as much as the calendar. A swim instructor handover notes template is worth having ready whatever software you land on.

Demo test 3: Run concurrent classes across lanes and levels

Real pools run several classes at once. Your demo should too.

Take your busiest 30-minute window from the prep week. Maybe four classes at 4:30: a parent and tot group in the shallow end, Level 1 in lane one, Level 3 in lane two, and a stroke clinic in lane four. Ask the vendor to put all four on the schedule, each with its own instructor and capacity.

Now look at what the screen actually shows you. Can you see all four at once, laid out so a front-desk person can read it in five seconds? Or do you flip between filtered views? A schedule you can't read at a glance becomes a schedule you stop trusting.

Then push on the details:

  • Can two classes share a lane on different halves of the hour?

  • Can a class carry a level label and a capacity that differ from its neighbor's?

  • Does anything stop you from putting two classes into the same lane at the same time?

I'll be plain about scope. Soljio keeps programs, schedules, rosters, families and progress together in one workspace, and instructors record attendance and mark skills from the deck. Whether any particular tool models lanes as a hard resource or just a text label is a question you have to ask each vendor, Soljio included, and then see on screen with your four classes.

Pass signal: all your concurrent classes appear on one view, and the tool either prevents or clearly flags a lane collision. If the vendor says lanes are "just a note field," that may be fine for you, but decide that on purpose.

Demo test 4: Change one lesson time and check the resulting roster

This is the test that separates tools. Everything so far was building. Now you change something that already has people attached.

Take your trap lesson, one with a full roster, and ask the vendor to move it. Say Thursday 4:00 to Thursday 5:00, starting next week. Then don't look at the calendar. Open the roster.

Check the following, in order:

  1. Is every enrolled swimmer still on the roster, with no one dropped?

  2. Does the roster show the new time for the sessions that moved and the old time for sessions already completed?

  3. Can you tell which families have a conflict with the new time, such as a sibling in another class at 5:00?

  4. Is there any record that the change happened, and who made it?

Then ask the awkward questions. What does the tool do about telling families? Does it send anything, or is that on you? I won't claim a notification feature for Soljio that isn't verified, so treat this as an open question for every vendor, and plan for the manual path regardless. A clear, calm message goes a long way, and the pool closure notice template works as a starting point for any timetable disruption.

Also ask what happens to payments and waivers tied to the old time, and whether a family can decline the new slot.

Pass signal: the roster survives the move intact, you can see who is affected, and the vendor can explain the family-side consequences without hand-waving. A tool that moves the lesson but leaves you guessing about the roster has failed the test that matters most.

Score the demo and ask every vendor the open questions

Score each test pass, partial or fail, and write one line of evidence beside it. Don't average away a fail. A vendor that fails test 4 has told you how your worst Thursday will go.

A simple sheet works:

  • Test 1, recurring term: clicks to build, holiday skip handled

  • Test 2, availability: conflict flagged at assignment

  • Test 3, concurrency: one readable view, lane collisions caught

  • Test 4, time change: roster intact, affected families visible

Then send every vendor the same open questions in writing and keep the replies. Cover online booking for group lessons, payment collection, waivers, recurring billing, waitlists, parent communication and private lesson handling. Don't assume any of these exist because a competitor has them, and don't assume Soljio has them either. I am not claiming private lesson booking is ready in Soljio. Ask each vendor to show it, not describe it.

Where Soljio fits: it is built for swim schools that run their own programs, keeping programs, schedules, rosters, families and progress in one workspace. Families enroll and pay on your school's own subdomain, instructors take attendance and mark skills from the deck, and rosters import from a spreadsheet. It is in private beta with a small number of swim schools, so run these same four tests on it and judge it on what you see.

Read the reviews on GetApp or Software Advice after your tests, not before. By then you will know which complaints actually apply to your pool.

Conclusion

Pick one busy week from your own timetable this week and run all four tests on whatever tool is on your shortlist, in the same order, with the same trap lesson. The tool that keeps your roster intact when a lesson time changes is worth more than the one with the longest feature list.

If you want to see how Soljio handles your week, bring your timetable and a spreadsheet of current rosters to the private beta. Ask to build a recurring term, then move your trap lesson and open the roster. Email hello@soljio.com to set it up, and expect to be shown the screens, not told about them.