- 60 percentalready had wearable data
The problem
Coaching at Fittr was running blind. Coaches built plans around what people told them about their activity and sleep. But people forget, and what they report does not always match what they actually did. So nobody could tell if a plan was working until it was too late.
What I did first
Instead of assuming we needed to build a device, I ran a survey to find out what data already existed. About 60 percent of our users already had a wearable or basic step and sleep data sitting on their phone.
So the first version was not hardware at all. I connected Apple Health and Health Connect, pulled that existing data in, and showed it to both the user and their coach. That one change shifted how coaching worked at Fittr, because coaches could finally see what was really happening.
Why we then built our own ring
Apple Health and Health Connect only gave us a narrow set of metrics, and no control over how accurate they were. That limit is what justified building our own device.
What the Hart Ring does
It connects activity and sleep instead of showing them as two separate scores. What you did today decides how much recovery you need tonight. Your coach sees both and changes tomorrow's plan.
What I did to make it work
I own the Hart Ring product line end to end, from hardware requirements to the app experience.
- Ran a validation study of the ring's readings against reference-grade measurements, then worked through every gap with the firmware team until the numbers held up. On a health device, accuracy is not a firmware ticket. It is the difference between a signal you can build on and one you cannot, so it had a named owner.
- Specified the Bluetooth SDK and API integration between the ring and the app, so syncing behaves the way we decided rather than the way the vendor shipped it.
- Work directly with our manufacturer in Shenzhen, including going to the factory in Dongguan and Shenzhen for build reviews.
- Made daily wear time the number the team steers by. A ring sitting in a drawer gives nobody any data.
What this product added to the loop: Activity & sleep
- 30 percentever typed their measurements in
- 17 problems across 14 metricsthree root causes
The problem
Most people come to a fitness platform to lose weight. But weight is the wrong thing to coach against. Someone can lose fat, gain muscle, see no change on the scale, and quit. What actually matters is body fat percentage.
Our platform asked people to type in their own body measurements. The data showed only about 30 percent ever did it. So the number that mattered most was the one we had the least of.
The solution
A DEXA scan gives an accurate reading, but it is expensive and not something anyone should do often. Bioimpedance gives you a usable body fat reading at home, as often as you like, at no extra cost per reading. That is what the Sense Pro Scale is for. It replaces a manual entry most people skip with a measurement that happens just by standing on it.
What I did to make it work
I own the Sense Pro line end to end, from the hardware spec through the app, including the manufacturer relationship.
- Sent the readings into the same coaching loop as the ring, so a coach sees body composition trends and not just weight.
- Audited the whole body composition pipeline and found 17 problems across 14 metrics. They traced back to only three root causes: units that did not match between systems, thresholds that were never normalised, and the same metric carrying different names in different places.
- Wrote the fixes, plus the naming and threshold rules that stop those problems coming back. Every number on that screen is a claim about someone's body, and you cannot turn it into an action if you do not trust it, so correctness needed an owner.
What this product added to the loop: Body composition
- 57 health parameterscovered by Goal Gauge
- 96 and 118 screensaudited against the spec
- 33 analytics eventsone naming convention
The problem
The coaching model looked fine on paper and leaked in practice. Coaches gave plans. Members broadly followed them. But neither side was accountable for the result. Nobody could say whether a plan was actually being done, so nobody could say whether it was working. A coach whose member is quietly drifting gets no warning until that member leaves. For a company whose product is coaching, that is the core of the business running on trust and memory.
The solution
Make accountability something both sides can see. Turn a plan into daily commitments a member either meets or does not, score it, and put that same score in front of the coach. The member is accountable for doing the work. The coach is accountable for a roster they can now see slipping, in time to step in.
What I did to make it work
- Designed Goal Gauge, the target system covering 57 health parameters, including the logic that decides what good looks like for each one. Without a defined target, there is nothing to measure adherence against.
- Specified Task Cards and the adherence score, which turn a plan into a daily habit instead of a document someone opens once.
- Built out the coach side from scratch: goal and target assignment wizard, workout plan builder, member onboarding checklist, appointments and scheduling, blood report analysis, and progress images. These make setting real targets fast enough that a coach will actually do it.
- Wrote and consolidated the master product spec, around 46 pages, then rebuilt it against what had actually shipped. That meant auditing 96 screens on the member side and 118 on the coach side, and merging everything into one document with a log tracking every gap.
- Designed the measurement: 33 analytics events across the daily loop and the enrollment funnel, on one consistent naming convention. An accountability product that is not itself measured is the same mistake one level up.
- Wrote the product copy, including home cards, empty states, buttons, and release notes.
What this product added to the loop: Fittr One Coaching
The problem
The system knew two things about a person. What their body was doing, from the wearable. And what their body was made of, from the scale. It knew nothing about what was happening inside.
That mattered, because our coaching packages already included clinical packages. We were selling against data we did not have. If someone's thyroid or vitamin D is off, a coach is building plans for a body that will not respond, with no way of knowing it.
The solution, in two steps
First I ran the cheapest possible test. I let people upload their existing medical reports into the system. No lab partners, no logistics. Just find out whether the data was there and whether anyone would act on it.
The response was substantial. So we put that clinical picture in front of both the user and their coach, next to their wearable and body composition data, framed as what is happening inside you and how your training and food can move it.
That proved the demand, and leadership then decided to own the supply. I partnered with Healthians, Tata 1mg and Thyrocare to build online diagnostics booking. A phlebotomist visits the person's home, collects the sample, and the report comes back into our system in a usable form rather than as a PDF nobody opens.
What I did to make it work
- Ran the report upload test first, so the case for building a lab network rested on what people actually did, not on a forecast.
- Made the clinical data readable by the coach, not just the user. A marker on a screen changes nothing. A marker that changes next month's plan is the product.
- Built and own the partner network across multiple diagnostics providers, plus the booking flow itself: choosing a panel, picking a slot, home collection, and the order record.
What it led to
Fittr's direction moved from fitness towards primary healthcare. This work is where that shift started.
What this product added to the loop: Blood & clinical markers
The problem
By now we had a complete picture of each person, both the early signals and the outcomes. Enquiries for doctor consultations started coming in. But this was a completely new business line, not an extension of anything we already ran, so nobody knew whether the interest was real or just curiosity.
The solution
Rather than scope a full build for an unproven business, I built a working booking system myself to test whether people would actually use it, and let those numbers decide the next step.
What I did to make it work
- Built the whole prototype myself on Google Apps Script, with APIs, WhatsApp notifications and Google Meet links, so real people could book real consultations while the decision to invest was still open.
- Specified the full system based on what the prototype showed.
- Doctor side: sign up themselves with admin approval, manage their own availability, see their appointments, see the member's health reports and coach notes before the call, and run video inside our platform using the tool we already had rather than buying a new one.
- Admin side: approve doctors, set pricing per doctor, and three ways to pay them, either a fixed salary, a fixed fee per consultation, or a percentage. Plus revenue and commission views with date filters people can run themselves.
- Member side: book either by choosing a doctor or by describing the problem, with filters for experience, price and rating. Free consultation eligibility is checked at checkout against a diagnostics order, so a blood test and the doctor who explains it are one journey instead of two.
- Prescriptions written as free text, printed onto a Fittr letterhead, saved as a PDF, shown in the app and emailed.
- Made the operating rules configurable rather than hardcoded, including how late someone can reschedule, how long chat stays open after an appointment, and what happens on a no show.
What this product added to the loop: Doctor Consultations
- over 50 reference casesin the evaluation framework
The problem
Two problems, and they turned out to have one answer.
First, we hold a lot of health data and we decide what is worth showing. That means the app shows what we think matters, which is not always what the person came looking for. The usual way to close that gap is a survey, which is slow and only tells you what people say they want.
Second, logging a workout or a meal took five steps. Every step is somewhere to drop out, and logging is the one habit the entire coaching model depends on.
The solution
One place to type, solving both. People ask health questions in their own words, and the system keeps a record of those questions. That gives us real demand data as a by product of the feature being useful, instead of running a survey. The same box also handles logging. Type what you ate or did in normal language and the system logs it, replacing five steps with one.
What I did to make it work
- Grounded the assistant in our own data using retrieval, so it answers from what we know about that person rather than from whatever a general model believes about health.
- Built the evaluation framework the team now grades every release against: over 50 reference cases with the expected behaviour written out for each, so whether a release is safe to ship is a measured question rather than a judgement call.
- Wrote a scoring system where a model judges each answer from 0 to 3 on four things: quality, factual accuracy, tone and safety, and correct use of tools. The judge returns structured output, so scoring runs automatically instead of someone reading answers by hand.
The rubric, 0 to 3
Quality
0123
Factual accuracy
0123
Tone and safety
0123
Correct use of tools
0123
- Designed the pricing, with four tiers from free through to Elite, and the comparison screen behind the paywall.
What this product added to the loop: Fusion layer
The problem
The coaching product lived on a separate website from the main one. That split the brand across two places and split search ranking with it, so two sites competed for the same terms and neither got the full benefit. Shared links made it worse. A link someone shared would open in a browser instead of the app, losing the person at exactly the moment they were most interested.
What I did to make it work
- Drove the move of the old coaching site into a single fittr.com, so brand and search strength build up in one place.
- Fixed link handling on iOS and Android so a shared link opens in the app when the app is installed.
- Worked through the rendering problems on the new site built in Next.js.
- Own the buying path on it, covering ring purchase, checkout, payment confirmation and delivery.
What this product added to the loop: fittr.com