Case StudySaaSTrainerOS

How We Built TrainerOS from Idea to Launch

The real story of building our own SaaS product — the decisions, the pivots, and what we'd do differently.

Daylon BallApril 18, 20269 min read

Building for yourself is different

We've built 50+ products for clients. TrainerOS was the first one we built for ourselves. And honestly, it was harder than any client project we've done — because when it's your own product, every decision feels permanent.

TrainerOS is a white-label SaaS platform for fitness coaches. Coaches get a branded app for their clients, workout and nutrition delivery, check-ins, messaging, and payments — all under their own brand. No more duct-taping Trainerize, Stripe, and Google Sheets together.

Here's how we actually built it.

The idea came from a real problem

I was working with a fitness coach who was using 5 different tools to run his coaching business. One for programming workouts, one for messaging clients, one for payments, one for tracking progress, one for scheduling. His monthly software stack cost more than some of his clients were paying him.

He asked if we could build something that did it all in one place. We said yes. Then we realized there were thousands of coaches with the exact same problem.

That's when it went from a client project to an internal venture.

V1 was embarrassingly simple

Our first version did exactly three things: coaches could create workout programs, assign them to clients, and clients could view and log their workouts in a branded web app. That's it.

No payments. No messaging. No nutrition tracking. No check-in system. Just workout delivery.

We built it in about 8 weeks. The frontend was Next.js with Tailwind, the backend was Node.js with PostgreSQL, and we deployed on Vercel with a Supabase database. Total infrastructure cost for the first 6 months: roughly $20/month.

We gave it to 5 coaches for free

Before building anything else, we needed to know if the core thing worked. Were coaches actually going to use it? Were their clients going to log workouts? Would the white-label branding matter?

We found 5 coaches through our network, set them up, and watched. We did weekly calls to get feedback and spent more time on calls than coding for the first month.

What we learned:

- Coaches loved the white-label aspect more than we expected. Having "their" app was a huge selling point for their clients. - Workout logging needed to be dead simple. Our first version had too many fields. Clients wanted to tap, log, and move on. - Nobody asked for nutrition tracking. Everyone asked for messaging.

The pivot we almost made

About 3 months in, one of our test coaches suggested we pivot to a marketplace model — where clients could discover coaches through the platform. Like a fitness version of Thumbtack.

We seriously considered it. Marketplaces are exciting. They have network effects. VCs love them. But we ultimately decided against it for a few reasons:

The coaches who were using our platform didn't want to compete for clients inside the same tool. They wanted to own the relationship. That's the whole point of white-label.

Marketplaces are also incredibly hard to bootstrap. You need supply AND demand from day one. We didn't have the capital or the audience to make that work. Staying B2B SaaS was the right call.

Adding payments changed everything

When we added Stripe Connect so coaches could charge clients directly through the platform, engagement jumped. Coaches who had been casually trying the product started moving their entire business onto it. Because now it wasn't just a workout tool — it was their billing system, their client portal, and their coaching platform in one.

This was the feature that turned TrainerOS from a nice-to-have into infrastructure. When you're processing someone's payments, they don't churn.

What we'd do differently

**We should have charged from day one.** Giving it away for free taught us things, but it also attracted coaches who weren't serious. The coaches who later paid were different from the free users — more engaged, better feedback, fewer support requests.

**We over-invested in the dashboard early on.** We built a beautiful admin dashboard with charts and analytics before coaches actually had enough data to make those charts useful. Should have shipped a basic table view and waited.

**We should have hired a designer earlier.** We're developers. We can build good UIs, but having a dedicated designer for the client-facing app would have saved us multiple rounds of "this doesn't feel right" iteration.

Where it is now

TrainerOS has active coaches on the platform running their businesses through it. We're still iterating — the current focus is on the check-in system and expanding the nutrition tracking that coaches have been requesting since month two.

The product is entirely self-funded from our agency revenue. We haven't raised money and we're not sure we want to. Growing slowly and profitably feels right for this kind of product. Our coaches aren't going anywhere, and neither are we.

The meta-lesson

Building your own product while running an agency is hard but incredibly valuable. Every lesson we learn from TrainerOS makes us better at building products for clients. And every client project teaches us something we bring back to TrainerOS.

The two businesses make each other stronger. That's the venture studio model, and for us, it's working.

Have a project in mind?

Let's discuss how we can help you build it.

Get in Touch