CLIENT: Kettle Ridge Labs🇺🇸United States

Setwise - Coaching Platform for Personal Trainers with Built-In Health Screening

Coaching Platform for US Personal Trainers and Small Studios

Designed and built a clickable trainer web app for a US coaching platform: a dashboard of who needs attention today, a client roster with adherence trends, a client record with PAR-Q+ screening and programming holds, a check-ins inbox against a 48 hour response target, and Stripe payments - keeping the product on the coaching side of the line with medical care.

Scope of Work
Product design, UI build and clickable demo
Industry
Fitness / Personal Training
HealthcareSaaSMobile
Compliance & Certifications
PAR-Q+FTC Health Breach Notification RuleWashington My Health My Data ActCCPA/CPRAFTC Endorsement GuidesCOPPAROSCATCPAPCI DSSWCAG 2.1 AA

Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.

Impact

5 Screens
Clickable end to end

Dashboard, client roster, client detail with 6 tabs, check-ins inbox with its review panel, and payments with transactions, subscriptions, invoices and payouts. Every one of the 24 demo clients opens its own record.

PAR-Q+
Screening gates programming

A yes to a general health question flags the client, and a programming hold disables Assign program until the trainer records a clearance note or releases the hold.

1,200 kcal
Nutrition floor enforced

Calorie targets cannot be set below 1,200 a day, nutrition targets are off for clients under 18, and every target carries a general guidance, not medical advice note.

24 Clients
Realistic demo data

A 3-trainer Denver studio with an assistant, 6 programs, 4 packages, 7 sessions today, 16 check-ins, 20 payments, 6 invoices and 6 payouts.

The Problem

Independent trainers ran their business across five or six tools: a spreadsheet program, a text thread per client, a booking app, a payment link, a Google Form for intake and progress photos sent by text. Clients lost the program link and logged nothing, health details sat in personal phones with no consent record, and Kettle Ridge Labs' research with 60 trainers found 6 to 9 hours a week lost to admin and chasing payments, and about a quarter of online clients gone in the first 8 weeks.

Our Solution

Setwise puts the program, the check-in, the session and the payment in one place for trainers and small studios. The dashboard flags clients who are drifting, health answers and photos sit behind a separate logged consent, PAR-Q+ screening can hold programming until clearance, and clients pay through Stripe Connect so the trainer is paid out directly.

The Challenge: Coaching Without Crossing Into Medicine

Personal trainers are generally not licensed healthcare providers, yet their clients report injuries, medications and conditions every week. The product has to help trainers act on that information without diagnosing, prescribing or mishandling health data.

Screening Before Training

On the PAR-Q+, a yes to any general health question generally means the client should complete the follow-up questions or get clearance from a qualified professional before becoming much more active. Trainers had no way to see that flag or hold the program until it was resolved.

Health Data Outside HIPAA

HIPAA generally does not apply to a trainer, but the FTC Health Breach Notification Rule, Washington's My Health My Data Act and California's CCPA/CPRA do. Health answers, measurements and progress photos each need separate consent, withdrawal and deletion.

Drift Found Too Late

With workouts in a PDF and check-ins in a text thread, trainers only found out on Monday that a client had stopped training two weeks ago. Late check-in replies and failed payments went unnoticed in the same way.

Money, Minors and Marketing Rules

Auto-renewing coaching plans fall under ROSCA and state renewal laws, SMS reminders need TCPA consent, clients aged 13 to 17 need a guardian, and before/after posts must follow the FTC Endorsement Guides.

Our Approach: From Coaching Rules to a Clickable Trainer App

01

Spec and Rules Research

Mapped 9 roles from solo trainer and studio owner to Kettle Ridge trust and safety, 40 screens across the trainer web app, client mobile app, public trainer pages and operations console, and the data model for consents, PAR-Q+ intake, clearances, programming holds, programs, check-ins, sessions, packages and payments. Wrote down the rules the design follows: scope of practice, PAR-Q+, nutrition limits, health privacy, the FTC Endorsement Guides, COPPA, ROSCA, the TCPA, PCI DSS and app store payment rules.

02

Clickable Demo on a Production UI Kit

Built 5 key trainer screens on a production dashboard kit for a fictional Denver studio: the dashboard with adherence, today's sessions and a needs attention list, the client roster with filters and 14-day adherence sparklines, client detail with screening, consents and 6 tabs, the check-ins inbox with age colouring and saved reply snippets, and payments with retry, refund and invoices. All actions run on local state.

03

What a Production Build Adds

Stripe Connect, Billing and Tax, Mux exercise video, in-app chat, Twilio SMS on a registered A2P 10DLC number, Postmark email, push notifications, Google and Outlook calendar sync, Zoom and image moderation. Separate encryption and role-based hiding for health data, an audit log, and the remaining screens: programs and the builder, messages, calendar, packages, team, the client mobile app, public trainer pages and the Kettle Ridge operations console.

Why It Works: The Coaching Line Built Into the Screens

Today's Attention List

The dashboard lists every client who needs action: a new PAR-Q+ flag, a check-in waiting past 48 hours, a failed payment, no workout in 7 days, 1 session left or a program ending with nothing next. Each item links to the right place and can be marked done.

Client Words, Not Diagnoses

Injuries and conditions are shown as client-reported notes, labelled not a diagnosis, with the trainer's coaching notes beside them. There is no diagnosis field, and pain reported in a check-in brings up a prompt to suggest a physician or physical therapist.

Consent Visible on Every Client

Each client record shows health data, progress photos, photo marketing use and SMS reminder consent with dates. Check-in photos appear only when consent is on, and photo check-ins are off for minors.

Card Details Stay With Stripe

Payments show gross, Stripe fee, platform fee and net per transaction, with only the card brand and last 4. Refunds need a reason and can be partial, and a failed payment can be retried from its payment panel, which the dashboard links straight to.

Related case studies

View all: Fitness & wearables
Logo
Oceanlab

Enterprise Software Engineering - Human + AI

Languages

Locations

Global Headquarters

21 Merchant Road, 3rd Floor, Singapore 058267

Main corporate office and leadership operations

North America Office

548 Market Street, PMB 12345, San Francisco, CA 94104

Client operations and business development

India Office

402 Shivalik Shilp II, SG Highway, Ahmedabad 380015

Engineering and delivery center

© 2026 - Copyright. All Rights reserved Oceanlab