The short answer
ClassForKids, Sawyer, iPAL and Bookeo. Between them they cover day and session booking, capped places by age group, registration and consent held against the child, funding codes and payment from childcare accounts and voucher schemes.
That is the list a club needs. A general appointment tool, the sort that books a haircut, does none of the middle four.
Pick by how your club is shaped
A UK club running term-time sessions and holiday weeks. ClassForKids or iPAL. Both are built around British club and wraparound operations, registers and the payment routes parents here actually use.
A US camp or after-school programme. Sawyer, which is built for children's activity providers and camps and is familiar to American parents from the booking side.
A club that also sells classes, parties or one-off events. Bookeo, which is a general booking platform with course and class handling, accepting that the childcare-specific parts are thinner than the others.
A club attached to a nursery or a school. Whatever the setting already runs, if it can sell single days. Two systems holding two versions of the same child is a safeguarding problem, not just an admin one.
Feature sets move release to release, so confirm the specifics with the vendor before you commit a holiday programme to a platform. If what you run today works, stay on it. Migrating a family list and a year of registrations is a real cost.
The six things any of them has to do
Judge a platform against this rather than a feature page.
1. Sell a day, not a course. A parent must be able to book Tuesday and Thursday of week one and the whole of week two, in one basket.
2. Cap places by age group. Capacity is per group, because ratios and rooms are per group. A system that only caps the site will oversell your junior places.
3. Hold registration once. Medical, dietary, emergency contacts, collection arrangements and permissions stored against the child and reused by every booking after the first.
4. Handle more than one child per family. Two children, different day patterns, sibling discount applied, one payment.
5. Take the payment routes parents use. Card, plus a route for money arriving from a childcare account, voucher operator or a funded place, with the reference matched to a child.
6. Produce a register you can actually take out with you. Names, photos where you use them, medical flags, allergies and collection notes, on a phone or a printed sheet, offline if the hall has no signal.
What generic tools get wrong
A form plugin or a calendar booking tool can take a request. What it cannot do is hold the child.
The failures are specific. No age-group capacity, so you oversell and ring people back. No stored registration, so consent is re-collected every holiday. No funding route, so the parents who need vouchers cannot book at all. No usable register, so a staff member carries a folder and the allergy note is in it rather than on the screen.
The booking looks like it works. The cost lands on the office.
What the website still has to do
The platform is the register. The site's job is to fill it.
That means programme pages by week and age that a parent can read before they meet a login screen, a fees and funding page that names the schemes you accept, a Book button in the header of every page deep linked to the right week where the platform allows it, and the whole route tested on a phone including inside an in-app browser, because a lot of club traffic arrives from a link in an Instagram bio.
Hosted page or embedded widget
Either. Hosted booking pages tend to be steadier on small phones; embeds keep the parent on your domain.
If you embed, reserve the height so the page does not jump, check the calendar is not trapped in an internal scroll, and retest after platform updates rather than only at launch.
Where this sits
Wiring whichever of these platforms a club runs, and putting the programme and the fees in front of it, is the core of an after-school and holiday club website, and the same approach runs through the other childcare websites we build. Packages are on pricing. Choose the platform for the register, then let the site do nothing but open it.