Industry Playbooks· 5 min read

How to Build a Fitness Class Booking App, from Someone Who Built One

How to build a fitness class booking app: the must-have features, capacity and waitlists, memberships, payments, check-in, multi-gym architecture and cost.

By

Full-Stack, Mobile & AI Engineer

A class booking app looks simple on a whiteboard: list classes, tap "Book", done. Then reality arrives. Classes fill up and need waitlists. Instructors call in sick. Members buy packs of ten classes, monthly memberships and drop-ins, sometimes at more than one gym. Someone books the last spot at the same moment as someone else. A no-show blocks a spot that another member wanted.

I built Floey, a fitness class booking and gym management platform in Kuwait, end to end: the consumer app on iOS, Android and the web, Floey Business for gym owners and staff, and the multi-tenant backend that serves both. This playbook covers booking app development for fitness businesses: what a class booking app really needs, how to structure it, the rules that cause the most bugs, and what it costs to build.

Key takeaways

  • There are usually three products: a member app, a staff app or dashboard for gyms, and the backend that connects them.
  • Capacity, waitlists and cancellation rules are the heart of the product; get them right on the server, in transactions.
  • Payments come in several shapes: drop-ins, class packs, memberships with automatic renewal and local payment methods.
  • Multi-gym platforms need multi-tenancy: each gym's data, staff and branding isolated.
  • An MVP for a single studio is far smaller than a marketplace for many gyms; decide which you're building first.

Two very different products

Single-studio appMulti-gym platform (marketplace)
Who uses itOne studio's members and staffMembers discovering many gyms; many gyms managing their business
DiscoveryNot neededSearch, maps, categories, reviews
Data modelOne businessMulti-tenant, each gym isolated
PaymentsStudio's own accountPayouts and reporting per gym
ScopeMVP in weeksPlatform over months

Floey is the second kind: members discover gyms and book classes, while each gym runs its business in Floey Business and gets its own branded booking site.

The features that matter

PriorityMember appGym side (staff and owners)
Must haveBrowse schedule, book, cancel, pay, reminders, my bookingsCreate classes and schedules, set capacity, see bookings, check members in
Should haveClass packs and memberships, waitlists, favourites, calendar syncRecurring schedules, instructor management and swaps, no-show tracking, coupons
LaterReviews, referrals, social featuresPayout reporting, analytics, marketing campaigns, branded booking sites

The rules that cause most bugs

Capacity under concurrency. Two members tapping "Book" for the last spot at the same moment must not both succeed. Enforce capacity in the database inside a transaction (lock the class row or use an atomic conditional update), never by checking availability in the app.

Waitlists. When a spot opens, who gets it and how fast? Automatic promotion with a notification and a short confirmation window works well; define what happens if the member doesn't respond.

Cancellations and late cancels. Decide cut-off times, refunds or credits, and penalties, per gym. Make the rule visible before booking.

Recurring classes and changes. A weekly class is a template that generates instances. When an instructor changes for one week, change only that instance and notify booked members.

Credits and entitlements. Packs, memberships and drop-ins each grant the right to book differently. Model entitlements explicitly so "can this member book this class?" has one answer in one place.

Check-in and no-shows. QR or code check-in at the door, plus no-show tracking that feeds into booking rules if the gym wants it.

Payments and renewals

Members expect to pay with the methods common in their market. In Kuwait that meant KNET, Apple Pay, Google Pay and cards. Gym classes and memberships are services used outside the app, so Apple and Google rules require payment providers rather than in-app purchase. Build billing to be idempotent and webhook-driven, with automatic monthly renewals for memberships and clear receipts.

From the field: On Floey I shipped real-time booking with instant confirmation, recurring class scheduling with capacity and instructor swaps, memberships and class packs, digital check-in and no-show tracking, coupon campaigns and staff payout reporting, with Kuwaiti payment rails (KNET, Apple Pay, Google Pay and cards), idempotent webhook-driven billing and automatic monthly membership renewals. The scheduling and entitlement rules took far more design than the screens.

Architecture

  • Member app: React Native (Expo) for iOS and Android, with the same app on the web for members who book on a laptop.
  • Gym app or dashboard: a separate app or web dashboard for staff, with role-based access (owner, manager, front desk, instructor).
  • Backend: a multi-tenant API (Floey uses Django REST Framework on PostgreSQL, with Redis) where each gym is an isolated tenant.
  • Notifications: reminders, waitlist promotions, schedule changes.
  • Payments: a provider supporting your market's methods, with webhooks driving booking and membership state.

What it costs and how long it takes

Using planning ranges (hours times rate) rather than quotes:

ScopeHoursAt $25/hrAt $50/hrAt $100/hr
Single-studio MVP (book, pay, reminders, staff dashboard)400 to 600$10k to $15k$20k to $30k$40k to $60k
Studio app with packs, memberships, waitlists, check-in800 to 1,200$20k to $30k$40k to $60k$80k to $120k
Multi-gym platform (marketplace, business app, multi-tenant backend)1,800 to 3,000+$45k to $75k+$90k to $150k+$180k to $300k+

Timelines run from about 10 to 14 weeks for a focused studio MVP to six months or more for a multi-gym platform.

Other kinds of booking apps

The same core (availability, booking rules, payments, reminders) powers many products, but the hard part shifts:

Booking appThe hard partFirst-version planning range
Appointments (salons, clinics, tutors)Staff calendars, buffers, no-shows400 to 700 hours
Classes and sessions (fitness, courses)Capacity, waitlists, packs and memberships400 to 600 hours
Stays and rentalsAvailability across dates, pricing rules, channel sync800 to 1,500 hours
Taxi and on-demand servicesLive dispatch and tracking, two apps, payouts1,500 to 3,000+ hours

A taxi app isn't really a calendar problem at all: it's real-time matching between two sides, which is why it costs several times more than an appointment app.

Pitfalls to avoid

  • Checking capacity in the app instead of the database.
  • Treating memberships, packs and drop-ins as the same thing.
  • Building the marketplace before one gym loves the product.
  • Forgetting the front desk: check-in has to be fast at 7am with a queue.
  • Hard-coding cancellation rules that each gym wants to set differently.

FAQ

How do I build a fitness class booking app?

Start with the schedule, booking, cancellation, payment and reminder flows for members, and a simple tool for staff to manage classes and check members in. Enforce capacity and booking rules on the server, integrate your market's payment methods with webhooks, and add packs, memberships and waitlists next.

How much does a fitness booking app cost?

A focused single-studio MVP typically takes 400 to 600 hours, roughly $10,000 to $60,000 depending on the developer's rate. A multi-gym platform with a business app and multi-tenant backend is a much larger project, often 1,800 to 3,000+ hours.

Should gym bookings use Apple's in-app purchase?

No. Classes and memberships at a physical gym are services consumed outside the app, and Apple's guideline 3.1.3(e) requires payment methods other than in-app purchase for those, such as Apple Pay or cards. Digital-only content, like on-demand workout videos, is different.

What's the hardest part of a booking app?

The rules rather than the screens: capacity under simultaneous bookings, waitlists, cancellation policies, recurring schedules with one-off changes, and entitlements from packs and memberships. These must be modelled carefully and enforced on the server.

Next steps

If you're building a booking app for fitness, wellness or any class-based business, I've built the full stack (member app, business app and multi-tenant backend) and can help you scope and ship yours. Get in touch, or see my work.

Sources

Bhuwanesh Sisodia

Bhuwanesh Sisodia

Full-Stack, Mobile & AI Engineer

Bhuwanesh Sisodia is a Full-Stack, Mobile & AI Engineer based in Mumbai, with 7+ years of experience and 50+ apps shipped to the App Store and Google Play. He works independently with startups and product teams worldwide.

About meGitHubLinkedInX

Related