So many fitness creators are “going online” - be it the 2020 inspired rush into Zoom and Vimeo for studios and gyms, or the growth of fitness influencers on social platforms like Instagram. Then comes the debate about whether to use a regular (no branding) third party app, a white-labeled app or a custom app. The first part of this blog series is going to focus on the bits under the hood of the car, the following parts will focus on different car options.
A health warning - I use some terminology in this blog article - but the good news there’s an analogy using cars again at the end to help explain it. The articles that follow this one go through specific companies, what they offer and their pricing - so if you’re looking to take your fitness classes online, it should really help you on learning about the options.
I have two observations here that may be non-obvious to coaches and owners in the fitness industry:
- Cloud computing and web services have totally changed the software industry. Zoom - runs most of its services on Amazon’s servers in Amazon’s data center today. Vimeo - runs on Amazon servers, uses Amazon’s and other third party Content Distribution Networks (CDN). Netflix - runs on Amazon. Airbnb - runs on Amazon. Peloton - runs on Amazon. There’s a reason why Amazon Web Services is the largest profit center at Amazon.
- The level of complexity in e-fitness is increasing dramatically. It used to be that some class schedules and bookings were all that a studio needed, or a few videos on demand behind a paywall. But today local studios are trying to figure out how to offer a digital offering to compliment their in-studio classes, and there’s so much free content out there on YouTube, FitOn and other sites that it’s hard to get people to pay for just video. Bringing integration with fitness wearables and more interactivity with participants all significantly increases the technical complexity versus simple apps with video clips.
For a moment, let’s talk about technology components - both from the cloud and in the form of libraries you can use in your apps. There are different types at different levels - for example:
- Infrastructure as a Service (IaaS): This is about as close as you can get to the basic servers themselves, Zoom rents servers from Amazon as it needs them - some for the entire year and others for peak demand capacity (like during New Year’s when everyone wants to video chat with everyone else to wish them a Happy New Year). In some clouds (like IBM’s) you can really get “bare metal” (just the box and you install the operating system and everything on top of it), in other clouds (like Amazon’s) you rent what’s called a “virtual computer” which is basically a fraction of a physical box using some software designed for sharing servers (virtualization).
- Platform as a Service (PaaS): This is the next level up, where the cloud company provides the operating system and databases, but all the software is still on you. An example here is Amazon’s S3 storage service, you just throw data at it and it figures out storing it, backing it up and cloning it so that it never gets lost. You just pay a cost per gigabyte stored. Another example is Amazon’s video streaming service(s) that Netflix and Peloton use, like MediaLive and CloudFront (a Content Delivery Network - CDN). Here you pay per hour of video streamed and per gigabyte of data transferred, and you don’t have to worry about servers or operating systems. CDNs are very important to high quality video - YouTube, Vimeo, Facebook Live, Twitch, Netflix, Hulu … they all use CDNs to ensure high quality video streaming versus just having a physical server somewhere that is streaming the videos to users.
- Software as a Service (SaaS): This is the most high level of the three, and there are tons of examples of SaaS out there. Google Docs, GMail, Mindbody, Salesforce, Slack, Dropbox - there’s a ton of these, and they are often end user apps. (Note that Dropbox has a whole user experience for sharing files that’s designed for end users, whereas Amazons S3 is more of a low level service that a developer would use in their application to store data - an end user can’t use S3 directly.) You pay for them on a per user per month or per studio / gym per month basis, and they have everything you need in one go. Tribe is a SaaS company, though we are touching some hardware and consulting stuff too.
Some other relevant definitions while we’re doing the nerd fest:
- Software Development Kit (SDK): An SDK is a package of code, demo apps, compilers, documentation etc for embedding some software in another application. For example, Zoom has an SDK for embedding its video chat into other apps, video streaming services from Amazon (like their Interactive Video Service, which is based on Twitch) have their own player as an SDK, Dropbox has an SDK for developers trying to plug Dropbox’s storage into their own apps. To use an SDK, you need a software developer.
- Application Programming Interface (API): An API is a way for one application to talk to another. For example, Mindbody has APIs that let Classpass and other companies query the class schedules in each studio or gym - Classpass asks, “What are the classes happening at Jimmy’s Crossfit this week?” and Mindbody replies “The list is as follows: Body Pump, Mon 11AM, 45 minutes; Jump with Jimmy, Tue 9AM, 60 minutes; …” With APIs, there’s no embedding of code for the two applications to talk to each other, it’s just an information exchange. Again, Zoom, Dropbox, Salesforce, Vimeo, Slack and pretty much any reasonably established software company is going to have APIs. Using APIs typically needs a developer to code them into their apps, but services like Zapier allow less technical people to hook or map APIs together between different apps.
- White Labeled Apps: No acronym for this one, but the idea of a white labeled app is catering to branding a specific app for a given customer. The functionality is pretty much the same for all customers, but each one has an app in the app store that looks like their own app. For example, Mindbody supports white labeled apps for its different studio clients, and Tribe also supports white labeled apps for its partner studios. There’s a fuzzy line between white labeling and full on customization - at one end it can just mean “skinning” the app with a few custom colors and having its own app icon in the app store, in the middle it can involve changing the design layouts for different screens in the app, and at the other end of the spectrum it can mean changing the underlying business logic (how the app and backend are working). Changing the color scheme is kind of low maintenance, changing the underlying business logic can end up with different code bases for each app (all of which need separate development, integration, testing, etc - driving up the costs).
Note than an application integration can often have both an SDK and an API - they don’t have to be mutually exclusive.
A key take away from this is that these are all layers (just like ogres have layers - the Shrek reference). Nobody truly builds an app from scratch anymore - even companies that advertise “a custom app for your fitness business”, or that do custom app development for lots of different businesses - they all use various software libraries and PaaS components to create the app. For example, video streaming, messaging, file storage, user profiles, music integration - tons of these features are going to be “plug and play” components that get pulled into the “custom app”.
The general trade off here is as follows:
- Using an existing third party app (e.g. GMail, Slack or Twitch) is faster and easier than using a lightly white labeled app (e.g. custom colors and an app icon in the Apple App Store and Google Play Store), and both of these are way, way easier than creating a custom app. The implementation risk here is relatively low, because it’s a veneer on top of an existing app that’s (hopefully) gone through a ton of testing. Of course, the amount of customization you can do with a third party or white labeled app ranges from none to “just a little bit”.
- Creating a custom app provides a lot more flexibility than an existing third party app or using white labeling, but for anything with significant customization, you are talking about developer and testing years of person effort and costs in six figures ($100K+). The implementation risk here is also much higher, because you are on the hook for all the testing etc, and if the app ends up being buggy, your only recourse is to sue the development company (which is hard). For Peloton, Apple, Tonal, Tempo etc their apps are core to their businesses and they spend $M each year on software development with internal software teams. Most fitness influencers and studios can’t afford to make that type of long-term investment and commitment.
Some “custom apps” in fitness are actually more like white labeled apps where the pattern and core functions are the same each time, but the presentation and layout is a bit different. It’s gray scale not a black and white transition. And in the end, nobody builds their own fitness app “from scratch” - everyone in the fitness space is using components from others, the question is what level the components are at.
One useful analogy here might be cars:
- You can buy a Toyota Prius in a range of colors, with different interior and materials options, sport packages, etc - but in the end, it’s a Toyota Prius.
- If you have more money to spend, you can take your Toyota Prius to a custom tuning shop to boost performance or change it a bit deeper, and that can cost a lot more money (the process of performance boosting a Ford Mustang can often cost more than the Mustang itself).
- If you really live in the big leagues, you can have a custom shop build you your own car (people often do this in reality with chopper motorbikes more than cars), but even if you do this (or go to a “hand made” supercar specialist), they will still tend to use an engine from a mainstream car manufacturer like BMW or Ford - because the cost of building a whole custom engine from scratch would be astronomical and laced with risk (of it blowing up).
In the next part of this series, we’ll take a look at specific options for fitness creators (boutiques, gyms, trainers and influencers) to take their workouts online.