Waitlist for full classes
Let students join a waitlist when a class is full: JoinCPR offers a freed seat to the next person, holds it while they check out, and emails them each step.
Updated · JoinCPR help center
When a class is full, students can put their name down instead of walking away. The moment a seat frees up (a cancellation, a refund, a transfer out, or you raising the capacity) the first person in line is emailed a link to register, and the seat is held for them until the offer runs out. Nothing is charged until they complete the normal checkout.
The waitlist is off by default. Turn it on under Settings → Student Portal → Waitlist. See Student Portal settings.
What students see
- On a full class, the Register button on the class list, class page, course page and website embeds becomes Join Waitlist. It appears only on public, published classes that have a capacity and whose registration cut-off has not passed. Private client classes and unlimited classes never have a waitlist.
- Joining takes name, email, phone and, if you allow more than one seat per entry, how many seats. No payment, questions or waiver at this stage. They get the Waitlist Confirmation email with their place in line ("You are 3rd in line") and a link to a page where they can see their place or leave the list. Someone already registered for the class cannot also join its waitlist.
- When a seat opens the first person in line receives the Waitlist Spot Available email (and a text message when SMS reminders are on and they opted in) with a Claim Your Spot button and the deadline. The seat is held for them: the class still shows Full to everyone else.
- Claiming opens the normal checkout with their details filled in and a green banner "Your waitlisted spot is held for you until …". Questions, waiver, promo code, add-ons and payment all work as usual. When they finish, the entry is marked Registered and they get the normal Registration Confirmation. If their card fails they can retry from the same link while the window is open.
- If the window closes without a registration, the seat passes to the next person automatically and the first person gets the Waitlist Offer Expired email with a Rejoin the Waitlist button. The old link no longer opens checkout.
- Students with a portal account also see their waitlist entries, with a Claim spot button when an offer is open, in My Account.
The offer window
The window is the Offer window (hours) setting (default 24). Two safeguards shorten it:
- Offers made within 48 hours of the class are limited to 4 hours, so a seat is not stuck with someone who is asleep.
- An offer never runs past your registration cut-off. If less than half an hour would remain, no offer is made and the seat simply stays open on the portal.
Offers expire on a timer that runs every 15 minutes, so a seat passes on within a quarter of an hour of the deadline.
Several seats per entry
With Maximum seats per waitlist entry above 1, a parent or a small group can wait for several seats at once. They are only offered when that many seats are free at the same time; until then they keep their place while single seats go to the people behind them. A multi-seat offer opens the group checkout sized to the held seats.
On the class page
The Capacity card shows "N held for waitlist" while offers are open and "N waiting" for the rest. Below the roster, the Waitlist section lists everyone in line: position, name and contact details, seats wanted, when they joined, and their status (Waiting, Offered until …, or Offer expired). The Classes list also shows "N waiting" under the capacity of each class.
Row actions (admins and staff):
| Action | Effect |
|---|---|
| Offer now | Sends the offer to this person ahead of anyone else and holds a seat for them. On a class that is already full you are asked to confirm: the offer then reserves a seat over capacity, exactly as adding a walk-in to a full class does, and the student can register and pay through the claim link. |
| Add to class | Skips the offer and opens the usual Add Student flow with the person selected, so you can charge a card, mark as paid or waive payment. Their waitlist entry closes when the registration is created. |
| Remove | Takes them off the list. If they were holding an offer, the seat passes to the next person. |
When three or more people are waiting, a note suggests adding another date. Duplicate the class from the Classes list; the waitlisted students can register there, and you can email them the link.
Held seats count against capacity everywhere, including the roster's Add Student flow, which warns (but does not block) when the class is at capacity. A seat offered over capacity with Offer now shows in the Capacity card as, for example, "12 / 12" plus "1 held for waitlist".
What frees a seat
- Cancelling a registration from the roster, or a full refund, which cancels it.
- Transferring a registration to another class.
- Raising the class capacity, which offers as many seats as you added.
- Re-publishing a class that had been unpublished.
The next person is offered the seat automatically unless Offer seats automatically is off, in which case the seat stays free until you use Offer now or Add to class, or a visitor registers normally.
Cancelling or rescheduling a class
- Cancel Class closes the waitlist and, when notifications are on, sends the Registration Cancelled email to the people on it as well as to registered students.
- Reschedule keeps the waitlist with the class and sends the Class Rescheduled email to everyone on it.
Emails and texts
Three editable templates under Email templates: Waitlist Confirmation, Waitlist Spot Available and Waitlist Offer Expired, with the tags listed in Merge tags. The offer text message is fixed wording and needs SMS reminders on and the student's opt-in.
Settings
| Setting | Default | Effect |
|---|---|---|
| Enable waitlist on full classes | Off | Shows Join Waitlist on full public classes with a capacity |
| Offer seats automatically | On | Offer a freed seat to the next person straight away. Off: seats stay free until staff hand them out. |
| Offer window (hours) | 24 | How long a student has to claim an offered seat (1 to 168) |
| Maximum seats per waitlist entry | 1 | Lets one entry wait for several seats (up to 20) |