CASE STUDY · FITNESS CLASS BOOKING
We rebuilt the first minutes of Body Vibes, a live Flutter fitness class booking app where one subscription opens classes in over a hundred partner studios: a new onboarding path, sign in with Apple, Google or a phone number on one merged account, and a paywall managed entirely from the backend.
THE CHALLENGE
Body Vibes is a fitness class booking app where one subscription opens access to yoga, pilates, reformer, boxing and many other activities across over a hundred partner studios. New users arrived from social media on their phones, and a long email registration stood between installing the app and booking the first class. The task was to build a new onboarding path that learns the user's goals and interests and shows relevant classes early, to add Sign in with Apple and Google sign in next to phone number login, and to build a subscription paywall the team could change without shipping a new release, all inside a live production app without disrupting existing accounts.
KICKOFF & SCOPING
The Body Vibes team came in with a well defined flow. One of their key decisions was to ask for the account in the middle of onboarding rather than on the first screen: the user answers one question about their goal, sees classes picked for that goal, and only then creates an account. By that point the account unlocks something the user has already seen, instead of being a gate in front of an app they know nothing about.
Our job was to turn that direction into working screens inside an existing Flutter codebase used by paying members every day, the kind of work our Flutter app developers in Poland take on regularly. That set the constraints from day one: every change had to live alongside the current booking and subscription logic, existing members had to keep signing in exactly as before, and the new flow had to ship as a regular release rather than a rebuild.
THE PRODUCT
We rebuilt the first minutes in the app around the user instead of the form. The new onboarding asks a few short questions about goals and favourite activities and uses the answers to show matching classes before any commitment. Account creation moved to Sign in with Apple, Google sign in or a phone number, so a new user gets from install to a registered account in one tap.
The subscription offer appears later, at the moment a user tries to book a class, which is when the value of a package is easiest to understand.

FEATURE WALKTHROUGH
The first step asks what the user wants from training: building muscle, losing weight, meeting new people, endurance or general wellbeing. A progress bar shows exactly how many steps are left, and the answer is used straight away to shape which classes appear on the next screen.

Step two shows classes prepared for the chosen goal and asks for an account in the same view: continue with Apple, continue with Google or continue with a phone number, with a clear path for people who already have an account. The screen answers the question every new user has at this point, which is what they get for signing up.

Members of a multi studio subscription rarely train in one discipline, so the interests step is a multi select: yoga, boxing, climbing, meditation, spinning, sauna and more, in any combination. The button counts the selections, so the user always sees that their choices were registered.

Right after the questions, the user sees the size of the community in their city, the number of classes and partner studios, and short reviews from members. It is the moment when someone who just created an account decides whether the app is worth coming back to.

For a booking app, push notifications carry real value: a freed spot in a full class or a reminder before a session. The app shows an example of such a notification and explains what it is for before the system permission prompt appears, and the user can skip it with one tap.

The last onboarding screen shows what regular training with Body Vibes typically brings over the following weeks and hands the user over to the home screen with their plan ready, so the first thing they see after onboarding is classes to book.

The package screen appears when a user tries to book a class. It offers several subscription packages, a switch between billing periods with their discounts, a highlighted most popular option and a button that updates to the selected package. Packages, prices, discounts, labels and time limited promotions with a countdown are all edited on the backend and loaded into the paywall dynamically, so the Body Vibes team can launch an offer or change the lineup without waiting for an App Store or Google Play review.

HOW WE BUILT IT
Welcome, goal, sign in, interests, community, notifications and plan screens, built into the existing app so that answers carry through to the classes the user sees next.
Sign in with Apple, Google sign in and phone number login, with account merging between them, so a member who first joined with a phone number and later taps Continue with Google lands in the same account with the same bookings and subscription.
A package screen triggered at booking, with every package, price, discount and promotion loaded from the backend instead of being hardcoded in the app.
Account merging was the part that needed the most care. With three ways to sign in, the easiest thing to get wrong is a member who ends up with two accounts, one with their subscription and one without. Every sign in path was built to resolve to a single member account first, and only then to create a new one.
RESULTS
The new onboarding, sign in and paywall went live in about a month and are now the path every new Body Vibes member takes on iOS and Android. Since release there have been no duplicate accounts between Apple, Google and phone number sign in, and the Body Vibes team runs offers and package changes on the paywall from the backend without a new app release. For teams improving an app that is already live rather than starting over, our mobile app maintenance services cover this kind of ongoing product work.
CLIENT REVIEW
“Working with Thomas and Apps Value was a real pleasure. They turned our vision into a concrete plan and then delivered it, with attention to detail and without cutting corners. Supporting a tech startup is not easy, because priorities change faster than anyone would like. They handled it so well that I learned a lot from them myself. Kudos!”
FAQ
Our fitness class booking app is already live. Can you work on part of it instead of rebuilding it?
Yes. Body Vibes is exactly that case: we worked in the client's existing Flutter codebase and shipped onboarding, sign in and the paywall as a regular release while members kept booking classes. Our fitness app development page covers the kinds of booking and subscription work we take on, and the Evesport case study shows a fitness app we built from scratch.
Where should account creation go in a fitness app onboarding?
In Body Vibes the account is requested at step two, right after the goal question and next to classes picked for that goal. The user already sees what the account unlocks, and one tap sign in with Apple, Google or a phone number keeps the step short.
How do you avoid duplicate accounts with several sign in methods?
Every sign in path first checks for an existing member account and merges into it, and only creates a new account when there is no match. In Body Vibes this means Apple, Google and phone number sign in all lead to the same member, and there have been no duplicate accounts since release.
Why manage the paywall from the backend?
Subscription offers change often: new packages, seasonal promotions, discounts for longer billing periods. When all of that is loaded from the backend, the business can run an offer the same day instead of waiting for a new app version to pass store review. Our guide to in app purchase fees explains what Apple and Google take from subscriptions sold this way.
Is a multi studio fitness subscription app a marketplace?
In practice, yes. Studios supply classes and members book them under one subscription, so the app has to handle two sides with different needs: partners who publish schedules and members who expect a spot to be confirmed instantly. Our marketplace app development page explains how we scope products with two sides like this.
How much would a project like this cost?
It depends on how many screens, sign in methods and subscription rules are in scope, and whether the work goes into an existing app or a new one. Our pricing page explains how we scope and price fixed price projects, and the gym app development page covers apps for studios and gyms.

Whether you are starting from scratch or improving onboarding, sign in or subscriptions in an app that is already live, we can scope it with you and give you a fixed price.
Or see Body Vibes live