WooCommerce Fitness Class Booking: How to Manage Classes, Capacity, and Schedules Online
Set up WooCommerce fitness class booking for gyms and yoga studios. Manage class capacity, schedules, and payments with the WooNinjas Bookings Add-on.
WooCommerce fitness class booking is a class scheduling run inside a WooCommerce store, where each class is a bookable product with its own capacity cap, weekly time slots, and instructor. Members see live availability, reserve a spot, and pay at checkout, and a class that fills closes itself. Each booking becomes a WooCommerce order, in the same place as membership and retail sales.
A half-empty 9 am slot while the 6 am sells out, drop-outs that surface in a WhatsApp message the night before, would-be members who hit a full class and leave for another studio: these all come down to one missing piece, a WooCommerce Bookings system that manages capacity, schedules, and member communication automatically. What follows is how to configure the WooNinjas WooCommerce Bookings Add-on for gym and studio fitness businesses, including class capacity enforcement, recurring weekly schedules, instructor assignments, virtual class delivery, and member self-service.
Why WooCommerce Works for Fitness Class Booking
Fitness classes as WooCommerce products
When a fitness class is configured as a Bookable Product in WooCommerce, it gains a live availability calendar, a capacity cap, time-slot scheduling, instructor assignment, and automatic booking confirmation. Members book through the product page, pay through the standard checkout, and receive a confirmation email. The class slot locks. No phone calls. No shared spreadsheet.
Because WooCommerce Bookings runs inside WooCommerce, every class reservation creates a standard order. Member booking history, class purchases, and any merchandise or supplement sales all sit in the same customer account. Booking reports live alongside sales reports. There is no separate fitness scheduling platform to log into, no external sync to manage, and no commission on every booking going to a third-party app.
The fitness businesses this covers
The WooCommerce Bookings configuration works across every studio format where members book individual sessions, and that is a large and growing market: the Health & Fitness Association reported US fitness facilities hit a record 77 million members in 2024, with membership up 5.6 percent on the year. Yoga and Pilates studios are configuring 60 to 90-minute sessions with limited floor space. Spin and cycling studios where bikes are the capacity constraint. CrossFit and HIIT boxes with strict safety-driven group size limits. Personal training studios offering both group sessions and one-to-one slots from the same product catalogue. Dance and martial arts studios running tiered beginner, intermediate, and advanced classes with separate booking products per level. The WooNinjas WooCommerce Bookings Add-on covers all of these from the same admin dashboard, and each product has its own rules.
Configuring Class Capacity for WooCommerce Fitness Class Booking
Slots Per Event: the most important setting
Slots Per Event is the setting in the Availability tab of the Bookable Product that determines how many members can reserve a spot in each class time slot. For a studio yoga class with 12 mats, this is set to 12. When 12 bookings are confirmed for a slot, that time disappears from the availability calendar. No override is possible through the front-end booking flow. A 13th member attempting to book that slot will not see it as available.
This setting is configured at: Products > [Class Product] > Booking Settings > Availability tab > Slots Per Event. It should be set precisely to the physical or safety capacity of the class, not a rounded approximation. A studio with 14 mats is set to 14, not 10 or 15. Undersetting wastes revenue. Oversetting creates an unsafe or poor-quality experience.
Recurring Weekly Class Schedules
For studios running the same classes on the same days every week, availability is configured in the Availability tab of each Bookable Product. The key fields are:
- Available Days: select which days of the week the class runs. A Monday, Wednesday, and Friday yoga class at 7 am is set to run on those three days only.
- Available Time Range sets the start and end time of the class session. This controls exactly when the booking slot appears on the product page.
- Blackout Dates (optional) block specific dates when a class does not run, such as public holidays or studio closure days. Multiple dates can be imported via CSV.
- Slots Per Event sets the total number of spots available per class occurrence. When all spots are filled, that session closes automatically, and no further bookings are accepted.
Each class product tracks its own capacity independently. A sold-out Monday session does not affect Wednesday availability. Every session shows its own live spot count to members before they book.
Buffer time between fitness class bookings
Buffer time in a WooCommerce Bookings setup adds an automatic gap after each class ends before the next one can start. For a studio that runs back-to-back classes, this gap covers equipment reset, room ventilation, and the transition between departing and arriving members. Even a 10-minute buffer significantly reduces the friction of back-to-back sessions in shared spaces.
Buffer time is configured in the Settings tab of the Bookable Product settings under “Buffer Time.” The value is entered in minutes. For classes with intensive equipment requirements (spin bikes, weights, reformers), a longer buffer is appropriate. For floor-based classes with minimal equipment, a shorter buffer works. Set this per class type to reflect the actual reset requirements of each session format.

The Booking Details step shows the dates, resources, included and additional services, and the live-calculated total before payment.
A multi-location studio or a dense weekly timetable is where this setup stops being quick. Class products, capacity rules, instructor assignments, and recurring schedule entries take planning across a full studio timetable. The WooNinjas team configures WooCommerce Bookings systems for studios of all formats. Talk to the WooNinjas team here, and they will review the studio’s configuration needs before any work begins.
Managing Instructors and Class Assignments
Adding instructors as staff members in WooCommerce booking
Each instructor is added as a staff member in the Settings tab of the relevant class products. Their individual weekly schedule, days off, and break times are configured per person. If instructors charge different rates for the same class type, Staff resources are configured in the Settings tab of each product.
When a member books a WooCommerce fitness class, the product page shows available sessions based on the configured availability. If an instructor calls in sick and their slots are blocked in the system, the bookings report reflects the change immediately, and members who had booked that session can be notified through the WooCommerce order email system.
Virtual Fitness Classes: Zoom and Google Meet Delivery
Setting up live-streamed fitness classes in WooCommerce
The WooNinjas WooCommerce Bookings plugin connects with Zoom and Google Meet to deliver live-stream links automatically when a virtual class booking is confirmed. Members book and pay through the WooCommerce checkout. The plugin generates the class meeting link and delivers it in the confirmation email. There is no manual step between payment and access to the live session.
Virtual and in-studio classes can coexist in the same product catalogue. A studio running both a physical Monday morning yoga class and a live-streamed version at the same time configures two separate Bookable Products, each with its own capacity, pricing, and delivery method. The in-person product has a room capacity of 12. The virtual product might have a higher or unlimited capacity depending on the platform. Each manages its own bookings independently. The full connection setup guide is at WooCommerce Bookings Zoom and Google Calendar setup guide.
Google Calendar sync for fitness class schedules
The Google Calendar connection in the WooNinjas WooCommerce Bookings Add-on creates a calendar event automatically for every confirmed WooCommerce Bookings. Instructors whose Google Calendar is connected see all their class bookings appear in their personal calendar alongside their other commitments. Two-way sync means that any availability updates made in Google Calendar reflect back in the WooCommerce booking system, and cancellations processed in WooCommerce remove the calendar event automatically.
What Does the Admin Dashboard Show a Studio?
The Booking Reports view for fitness studios
The Booking Reports section in the WooCommerce admin shows all WooCommerce Bookings across all class products and instructors. Filter by product, date/time, booking status, or customer name. Each record shows the booking product, session date and time, current status, and a direct order link. For studios running 20 or more class sessions per week, the ability to filter by product and instructor is the difference between a useful report and an unmanageable list.
Looking for a Ready-Made Solution?
Explore our WordPress, WooCommerce, and LMS plugins built to extend functionality without custom development.
For walk-in registrations and phone bookings, the manual booking wizard at WooCommerce > Booking Reports > Add New Booking creates a proper order in a few steps: select the member, choose the class product, pick the session time slot, set any add-ons, and confirm the payment status. The member receives the same automated confirmation as an online booking.

The Booking Reports dashboard shows bookings filterable by platform, date, and customer, each row with the product, session time, status, and a direct order link.
The Member Experience: Booking and Managing Fitness Classes
The My Bookings dashboard for fitness members
Members access all their WooCommerce Bookings from the Bookings tab in their WooCommerce My Account area. Every session, past and upcoming, is listed with the product name, booking date, status, and available actions. For members who attend multiple class types per week, this tab gives them a clear view of their upcoming schedule without needing to contact the studio.
Member self-service for cancellations and reschedules
Upcoming class bookings show options to view full session details, reschedule to a different time slot within the rules you have configured, or cancel. When a member cancels, the confirmation modal shows the studio’s stated cancellation policy before they confirm. The cancelled spot opens back up in the class availability calendar immediately, allowing another member to take it.
For studios running popular peak-time classes, this automatic spot release is a significant operational benefit. A 7 am Monday spin class with a cancellation at 10 pm Sunday is back on the calendar within seconds, with no admin intervention needed.

The My Bookings page shows each reservation with its product, booking date, status, and the View, Reschedule, and Cancel actions.
Payment Configuration for Fitness Class Bookings
Per-class payment through WooCommerce checkout
Every WooCommerce Bookings process payment through the standard WooCommerce checkout. Members see the class rate, any add-on resources selected, and the total before confirming. Payment uses the gateways already configured in your WooCommerce settings.
Pricing add-ons for fitness class upsells
Resources attached to class products allow studios to offer paid extras at the point of booking. Mat hire, resistance band packs, water bottle rentals, or pre-class nutrition supplements are all configurable as resources with their own pricing. Members select these during the booking flow, and the order total updates before checkout. This is a direct upsell mechanism built into the fitness class booking process itself, with no separate sales step required.

The Payment and Complete step shows the final price summary with any discounts applied and the pending or paid status options before the booking is created.
WooCommerce Fitness Class Booking: The Technical Summary
WooCommerce fitness class booking lets fitness studios and gyms take class reservations directly on a WordPress site, with each class type configured as a Bookable Product using the Event booking type. Each product has its own Slots Per Event setting that enforces the class size cap automatically. Available Days and Time Range entries define recurring weekly class slots independently, so each session tracks its own capacity. Instructors are assigned in the Settings tab as resources. Buffer time between classes is set in the Settings tab via the Buffer Time field. Virtual classes connect with Zoom or Google Meet for automatic session link delivery. Every booking creates a WooCommerce order, and members manage their class reservations from the My Account Bookings tab.
The Add-on starts at $79/year. Full reference at the WooCommerce Bookings documentation. Further reading on fitness-specific setup for selling online fitness training with WooCommerce Bookings
The recurring schedules, instructor tiers, and virtual delivery reward time spent in setup. To skip that, hand it off. The WooNinjas development team has set up WooCommerce Bookings systems for yoga studios, CrossFit boxes, cycling studios, and personal training practices. From recurring class schedules to instructor rate tiers and virtual class delivery, WooNinjas handles the configuration. Get in touch with the WooNinjas team here, and they will start with a review of the studio’s requirements.
Pro Tip
For WooCommerce Bookings products that run the same session multiple times per week, configure each class product with its own Available Days and Time Range in the Availability tab. A Monday, Wednesday, Friday yoga class at 7 am should have three separate time range entries in the Availability tab. Each slot then displays its own remaining capacity independently. A fully booked Wednesday class will not prevent members from booking Friday, and each day shows live spot availability in real time.
Frequently Asked Questions
Can WooCommerce handle fitness class bookings with capacity limits?
Yes. The WooNinjas WooCommerce Bookings plugin enforces class capacity through the Slots Per Event setting in the Availability tab. When a class reaches its limit, the slot closes automatically. You don’t need to monitor capacity manually. Configure each class type as its own Bookable Product with its own capacity limit.
How do I set up recurring weekly fitness classes in WooCommerce?
Use the Availability tab in the Bookable Product settings to configure Available Days and Available Time Range for each recurring class. Set which days the class runs and the exact start and end time. Each entry tracks its own bookings and capacity independently, so a full Monday class does not affect availability for Wednesday. This is the correct approach for WooCommerce Bookings products that run on a fixed weekly schedule.
Does WooCommerce Bookings support virtual live-stream classes?
Yes. The WooNinjas WooCommerce Bookings plugin connects with Zoom and Google Meet. When a member books a virtual class, the plugin automatically generates a meeting link and includes it in the confirmation email. In-studio and virtual versions of the same class run as separate Bookable Products, each with its own capacity and pricing.
Can I assign different instructors to the same fitness class in WooCommerce?
Yes. You can add multiple instructors as staff members to the same WooCommerce Bookings product and assign them as resources in the Settings tab of each class product.
How do members cancel or reschedule a WooCommerce Bookings?
Members cancel or reschedule from the Bookings tab in their WooCommerce My Account area. Cancellation displays the studio’s policy before confirming and releases the spot back into the class calendar immediately. Rescheduling enforces the original class format. The system automatically sends email notifications to the member and the studio when changes are made.
Need Ongoing WordPress Maintenance & Support?
We handle updates, performance monitoring, security hardening, and technical fixes so your WordPress and WooCommerce site stays stable and secure.