The whole platform, in detail

Not a workout app with a coach bolted on, and not a directory that hands you a phone number. Clients search every coach across 196 countries and apply in the app. Coaches get a public profile that brings those clients in, with no listing fee and no commission. Everything after that — programmes, logging, measurements, scheduling, messaging — happens on the same account.

Two halves that normally live in different products

This is the whole idea, and the reason the feature list looks the way it does.

There are two people with a problem here, and they are looking for each other. One wants a coach and cannot tell which of them is any good. The other is a coach who needs clients and is advertising into a social feed. Both halves of that are on this platform — and so is everything that happens after they meet.

🧰

Coaching software

Assumes the client already exists. Good at programmes, no answer at all to which coach? — so winning the client is left to you.

📇

Directories

Answer that one question and stop. A profile, a price, an email address — and the training happens in a spreadsheet somewhere else.

🤝

MyFitsy

Both. Get found, get hired, and coach them without anything changing hands.

💼

For a coach, the profile is how you get clients

Not a settings screen you fill in for completeness. A real page at your own web address — bio, certifications, specialities, gyms, rates, before/after portfolio — plus reviews only people who actually trained with you can leave. It is listed in the search clients use to pick someone.

Why it is fair Ordered by rating rather than by who paid. No listing fee, no promoted placement for sale, no commission on your fees — so a good new coach with no following is discoverable on day one.
🏃

For a client, finding and training are one account

Search every public coach, filter by speciality and country, read the profiles, apply in the app. The moment a coach accepts, they are building programmes against your real measurements and reading back the weights you actually lifted.

Why it matters Nothing is exported, re-entered or re-explained, because nothing changed hands. And your records stay yours if you change coach or stop using one.

Two consequences worth naming. Country stops mattering — search covers 196 of them, and the metric/imperial switch means a coach in Tallinn and a client in Toronto read the same session in their own units. A coach's market is no longer the people who walk past their gym. And the client is not a guest in the coach's software: they can track measurements, set goals and write their own programmes with no coach at all.

Which app does what

Two apps with deliberately different jobs, on one platform and one set of records.

CapabilityMyFitsy (client)MyFitsy Coach
Search every coach on the platform
Apply to a coach
Appear in coach search
Public profile with reviews
Public web page at myfitsy.com/@handle
Invite a client
Accept or decline a connection
Build a programme for others
Build a programme for yourself✓ up to 10
See today's workout
Log weights, reps, time or distance
Skip a day
Open past sessions by date✓ per client
Record body measurements
View a client's measurements and trends
Set and share goals
Book a session
See booked sessions✓ read-only
Create groups
Message, with photos and video
Switch metric / imperial
Report an account
Delete your own account

Coach search — finding, and being found

Search every public coach by speciality and country, and apply from inside the app.

The client chooses who they want to train with. The coach is put in front of people already looking to hire someone.

  • Every public coach on the platform, filterable by any of 196 countries and 32 specialities
  • Apply in the app — the coach accepts or declines
  • Ordered by rating, not by who paid: no listing fee, no promoted placement for sale
  • Remote coaching is an ordinary connection, not a workaround
Specifics and edge cases

The same search read from the coach's side is a stream of people actively looking to hire, which is why the profile is worth filling in properly: a client arrives having already read your bio, specialities, rates and reviews, so the first message is usually about starting rather than about what you charge. Results are ordered by average rating, so a new coach starts lower — deliberately, because the alternative is ranking by whoever paid. Suspended accounts drop out of search entirely. A coach appears publicly only once they have written a bio, which stops half-finished profiles being the first thing a client sees. Reviews can only be left by someone who actually trained with that coach.

Coaches searchableEvery public coach on the platform
Countries196
Specialisations to filter by32
Results per searchUp to 50, ordered by average rating
ApplyingFrom inside the app; the coach accepts or declines
Requirement to appearA written bio, a public profile, no active suspension
Cost to the coachNone — no listing fee, no ranking boost for sale

Coach profiles — how new clients find you

Bio, certifications, specialities, gyms, rates, before/after portfolio and reviews — listed in search and reachable at its own web address.

This is the client-acquisition side of the platform. The profile is what appears when someone is choosing a coach, and the link you send anyone who asks what you charge.

  • A real web page at myfitsy.com/@yourhandle, shareable anywhere
  • Reviews only people who actually trained with you can leave
  • Your own rates, in whichever unit you sell — session, hour, course, week, month, programme or one-off
  • No commission on anything you charge
Specifics and edge cases

Every account, coach or client, is given a unique handle automatically at sign-up, and it is what in-app search matches on. For a coach it also resolves to a public web page; a client's handle stays an identity rather than a page. The handle is derived from the display name, lowercased and stripped of anything that is not a letter or digit, with a number appended if it is taken, so no two accounts can collide — and a set of reserved words such as admin and support cannot be claimed at all. Changing it is allowed; the old address stops working, which the app warns about. A coach cannot delete a review, and there is one review per coach–client pair.

HandleEvery account gets one, automatically
Public web pageCoaches only, at myfitsy.com/@handle
Handle format3–30 characters: letters, digits and underscores, starting with a letter
Specialisations32 to choose from
Countries196
Price unitsPer session, hour, course, week, month, programme, or one-time
Portfolio imagesUp to 3 before and 3 after, per entry
Reviews1–5 stars, one per client, cannot be deleted by the coach
Listing feeNone
Promoted placementNot for sale — search is ordered by rating
Commission on your feesNone

Coaching connections

A mutual-consent relationship between one coach and one client.

Nobody is added to anybody. Both sides agree, and either side can end it at any point.

  • A client applies, or a coach invites — the other side accepts or declines
  • The connection is what decides who can see whose data
  • A client can work with several coaches at once
  • Ending it keeps every completed workout
Specifics and edge cases

Health data should never be shared on one party's decision alone, so consent is the foundation the rest of the platform sits on. There is exactly one relationship record per coach–client pair, so reconnecting with a past coach reactivates it rather than creating duplicate history. Ending a relationship deactivates that coach's programmes for the client but keeps the training record intact.

ConsentRequired from both sides, always
Coaches per clientNo limit
Clients per coachNo limit
Relationship statesPending, active, ended, declined
Records per pairOne, reused on reconnection
Ending itEither side, at any time

Workout programmes

A named plan made of ordered days, each an ordered list of exercises.

Build a plan once and give it to any number of clients, then see what each of them actually did against it.

  • Three kinds of exercise: weights, bodyweight and cardio — a pull-up and a 5 km run are both first-class
  • Reps as free text, so 8–10 and AMRAP both work
  • Type the first letters and previously-used exercises are offered, video link included
  • Assign to a client or a whole group, starting on any day of the plan
Specifics and edge cases

Each kind carries only the fields it has any use for: weights take sets, reps and a load; bodyweight takes sets and reps, since the load is the person; cardio takes time and distance. Suggestions keep the newest video link for a name, so correcting a mistyped URL replaces it everywhere it is offered, and a suggestion you no longer want can be hidden and later restored. Assigning a second programme does not cancel the first. Assigning the same programme twice to one client is blocked in the database, because that would only duplicate their plan. Someone joining mid-cycle can be started on the day that suits them rather than forced back to day one.

Days per programmeNo limit
Exercises per dayNo limit
Exercise kindsWeights, bodyweight, cardio
Weights exerciseSets, reps, target weight, rest, note, video URL
Bodyweight exerciseSets, reps, rest, note, video URL
Cardio exerciseTarget time up to 24 hours, target distance up to 1,000 km
Autocomplete suggestions8 shown by default, up to 25
Programmes per coachNo limit
Same programme twice to one clientBlocked (unique index)

Programmes clients build themselves

A client can write up to ten of their own and run one at a time.

Training does not only happen under a coach. Someone between coaches, or training alone before they find one, uses the same builder and the same logging.

  • Up to 10 programmes, one active at a time
  • Private — a coach cannot see, edit or assign them
  • Appears on Today exactly like a coach's programme
  • Deactivating keeps the plan and every logged workout
Specifics and edge cases

Most people arrive without a coach, and making the app useless until they have one is both a bad first experience and a bad argument for the platform. It also means the history they bring to their first coach is real data rather than a conversation. The ten-programme cap and the single active programme are a database trigger and a unique index rather than interface behaviour, so Today never has to guess which plan you meant. Deleting removes the plan; the workouts logged against it stay.

Programmes per client10, enforced in the database
Active at once1
Visible to a coachNo — never
StructureIdentical to a coach's: days, exercises, all three kinds
Shows on TodayYes, the same as an assigned programme
DeactivatingKeeps the programme and every logged workout

Workout logging and history

Open the session, see each target, record what actually happened.

The target is the plan; the log is what happened. Every coaching decision needs the second one, and asking for it over chat does not scale.

  • Pre-filled with what you did last time that day came round
  • Logs weight, reps, time or distance — whichever that exercise has
  • Skip a day deliberately, and the plan moves on rather than sticking
  • History is a list of dates: tap one and see the session exactly as logged
  • Finish and start the next one straight away, if you train two days back to back
Specifics and edge cases

A skip advances the rotation exactly like a completed session, so a missed Monday does not leave the plan stuck, and it is recorded as a skip everywhere it is read rather than quietly hidden — the coach sees the difference between a skipped day and a light one. An exercise can be marked not completed rather than silently dropped, which is the difference between "did not do it" and "did it lighter". Nothing is thrown away when a programme ends.

Recorded per exerciseWeight, reps, time or distance — whichever that kind has
Pre-filled fromYour last completion of that same programme day
Skipping a dayRecorded as skipped; advances the rotation
After finishingDay marked complete; the next one can be started at once
HistoryEvery session by date, opened in full
RetainedAll of it, including after a programme ends

Measurements and trends

Fifteen tracked metrics, charted over time with a rate of change.

Scale weight alone is a poor progress signal. Circumferences show the recomposition it hides — which is the difference between a client quitting in week six and staying.

  • Body weight, an estimated body-fat percentage and 13 circumference sites
  • Charts answer how fast, not just how much: “0.4 kg per week”
  • Ranges from one week to all time
  • A body diagram with the current figures laid on it
Specifics and edge cases

Charts report a rate rather than an average, because an average tells you nothing you cannot already see — a rate answers the question people actually have, which is how long this will take. It is a least-squares trend across the range, quoted per week early on and per month once there is enough history to justify it, and withheld entirely under a week: a straight line through two readings three days apart is not a trend. Blanks are fine; record what you have. The body-fat figure is an estimate from measurements, not a clinical measurement, and the app says so on screen.

MetricsWeight, body-fat estimate, and 13 sites: neck, shoulders, chest, waist, hips, both arms, both forearms, both thighs, both calves
Chart ranges1 week, 1 month, 3 months, 6 months, 1 year, all time
Rate of changePer week under three weeks of data, per month beyond
Minimum for a rateTwo readings at least a week apart
Entries per metricNo limit
Who can see themThe client, and any coach with an active relationship

Goals

A metric, a start, a target and an optional deadline.

“Lose weight” is not trackable. “Waist from 92 cm to 84 cm by 1 October” is — and it gives both sides something concrete to review.

  • Reads from logged measurements, so it updates itself
  • Shareable as a card, in your own units
  • Figures can be left off the card entirely
  • Marked complete on the day the target is reached
Specifics and edge cases

A shared goal card carries a written summary alongside the image, and the numbers on it follow the unit system the person actually uses — a client working in pounds does not share a card in kilograms. Anyone who wants the public commitment without the figures can hide them.

Metrics availableAny of the 15 tracked measurements
DeadlineOptional
Goals at onceNo limit
Progress sourceYour own logged measurements
SharingImage plus text, in your own units, figures optional

Calendar and scheduling

An hour-by-hour day grid for coaches; a month view for clients.

Session times were the last part of coaching still living in a chat thread, where they get buried and nobody has a record of what was agreed.

  • Tap a gap in the grid to book that time
  • Repeat weekly — presets, or any number of weeks you choose
  • Clashes are caught, with an explicit override for genuine double sessions
  • Editing a series asks whether you mean this session or all later ones
Specifics and edge cases

Overlapping bookings are detected server-side and refused with a distinct error the app catches, rather than being silently allowed. Moving a group session moves every attendee together. Switching days auto-scrolls to that day's first booking, so a day with sessions never looks empty. Clients see their sessions read-only.

Grid hours05:00–23:00
Start timesQuarter-hour steps
Duration presets30, 45, 60 and 90 minutes
Custom duration5 to 600 minutes
Weekly repeat presets4, 8, 12 or 24 weeks
Custom repeat lengthAny number of weeks up to 52
Note per sessionUp to 500 characters
Who can bookCoaches only — clients see sessions read-only

Groups and group sessions

A named set of a coach's clients, for booking and bulk assignment.

Bootcamps and small-group training were otherwise repetitive: the same booking typed out once per person, the same programme assigned five times.

  • One booking for everyone in the group
  • One action to push a programme to every member
  • Members never see each other
  • Collapses to a single block on the coach's calendar
Specifics and edge cases

A client sees the group's name on their session and never the attendee list. Members who already have the assigned programme are skipped rather than duplicated, and the result reports how many were skipped. Clients whose relationship has ended are not booked. Deleting a group leaves sessions already booked from it in place.

Groups per coachNo limit
Members per groupNo limit
Group name1 to 60 characters
A client in several groupsAllowed
Deleting a groupSessions already booked from it remain
Attendee visibilityMembers never see each other

Messaging, with photos and video

Realtime chat between a coach and a connected client.

Coaching conversation belongs next to the training record, not mixed into a personal chat app where it competes with everything else in someone's life.

  • Photos and video, because form checking is visual
  • Attachments are private — not published, not public
  • Links in messages are tappable
  • Unread counts on the tab bar; read state tracked
Specifics and edge cases

Attachments live in a private bucket, unlike profile and portfolio images. Someone filming their own body for a coach is not publishing it, so the files are reachable only through signed URLs issued to the two people in the conversation — a leaked path is not a leaked video. Upload types are restricted by storage itself, not just by the app. You can only message someone you have a coaching relationship with, current or past. Deleting your account removes your messages from the conversation on both sides.

DeliveryRealtime
Message textUp to 2,000 characters
AttachmentsImages and video, one per message
Maximum file size50 MB, enforced by storage
Accepted typesJPEG, PNG, HEIC, HEIF, WebP; MP4, QuickTime, M4V
StoragePrivate bucket, reachable by signed URL only
Who you can messageYour active or past coaching connections only
EncryptionIn transit, not end-to-end

Metric or imperial

One switch changes every number in both apps.

A platform whose premise is that a coach in one country can train a client in another cannot be metric-only.

  • Kilograms or pounds, centimetres or inches, kilometres or miles
  • Applies to measurements, goals, targets, logs, charts and shared cards
  • Coach and client can each use their own — on the same session
  • Height reads as feet and inches, because nobody says they are 70 inches tall
Specifics and edge cases

Everything is stored in metric and converted only where it is shown or typed. That is why the two sides can hold different settings on the same data without either of them being wrong, and why switching back and forth never degrades a stored figure. It takes effect immediately and needs nothing re-entered.

SystemsMetric and imperial
Weightkg or lb
Circumferencecm or in
Heightcm, or feet and inches
Distancekm or miles
ScopePer account, both apps, every screen
Stored asAlways metric; converted at the edges only
Coach and client differingFine — each sees their own

Reporting and moderation

Any account can be reported from its profile, with a written reason.

A platform where strangers meet to discuss their bodies needs this to exist before it is needed. A reporting flow added under pressure is always worse than one designed calmly.

  • Report a coach or a client from their profile
  • A written reason is required — a bare flag cannot be acted on fairly
  • Outcomes run from a warning to a permanent suspension
  • A suspended account is locked out in the database, not by hiding buttons
  • Profile pictures and portfolio photos are screened by Google Cloud Vision before anyone can see them
  • Block anyone, instantly — no moderator, no waiting, and they are never told
Specifics and edge cases

Because enforcement sits in the database, a suspended account cannot write anything through the API either, and it disappears from coach search. Suspensions carry an expiry and lift themselves. The affected person is notified, including when a suspension is lifted, and every warning and ban is kept as an audit trail. You cannot report yourself, and a report is visible only to the person who filed it and to the moderator.

Who can be reportedAny coach or client, from their profile
CategoriesHarassment, inappropriate content, spam, impersonation, safety, other
ReasonRequired, 10 to 2,000 characters
Actions availableWarning, 7-day, 30-day or permanent suspension
EnforcementIn the database — a suspended account cannot write at all
BlockingInstant and silent; ends the relationship and cancels future sessions
Undoing a blockSettings → Blocked accounts
Image screeningAutomatic, on upload, before delivery
Report visibilityThe reporter and the moderator only

Activity and notifications

A feed of everything that happened, with unread state.

Changes made by the other person need to surface without them having to send a message about it.

  • Sessions booked, moved and cancelled; applications and responses; programmes assigned; workouts completed; reviews; reminders
  • Written by the database when the event happens — so it cannot be forged
  • Pushed to your phone, with a per-account switch if you would rather they were not
  • A weekly series is one notification, not one per week
  • Unread counts as badges in both apps
Specifics and edge cases

Notifications are generated by the same database operation that made the change, not by the app. That means they cannot be missed because a device was offline when the change was made, and clients have no permission to insert them at all — so the feed is a genuine audit trail rather than something the app hopes to keep in sync. A group booking produces one notification per member rather than one per row.

Event types19
Written byDatabase triggers and functions, never the client
Series bookingOne notification, not one per week
Group bookingOne per member
Phone push deliveryYes, with a preference toggle in Settings
In-app feedAlways kept, whether or not push is on

Your account and your data

Password changes, self-service recovery, and deletion with a grace period.

Both matter at exactly the moment someone is least willing to email support about it.

  • Sign in with Apple, with Google, or with an email address and password
  • Locked out? Reset your password from the sign-in screen
  • Delete your account yourself, from Settings
  • 30 days to change your mind — sign in and tap keep, and nothing is lost
  • After that it is erased automatically, not when somebody remembers
Specifics and edge cases

Deletion is a two-stage process on purpose: people delete things in a bad week and regret it in a better one. Once the grace period passes, a scheduled database job erases the account permanently, including the messages you sent, which go from the other person's conversation too. Reviews you wrote stay but are stripped of your name, so a coach's rating is not rewritten every time a client leaves.

Ways to sign inApple, Google, or email and password
Password recoverySelf-service, from the sign-in screen
Grace period30 days
Cancelling deletionSign in during the grace period and confirm you want to keep it
ErasureAutomatic, by a scheduled database job
CascadeProfile, measurements, goals, workouts, sessions, connections, programmes
RetainedReviews you wrote, anonymised; and what the law requires
Data exportBy email request

Who can see what

Enforced by row-level security in the database, not by the app hiding buttons — so it holds even if someone uses the API directly.

DataYouYour connected coachOther coachesOther clients
Display name, photo and @handle
A coach's public profile
Body measurements and body-fat estimate
Logged workouts and skipped days
Goals
Programmes you wrote for yourself
Your messages✓ (only yours with them)
Chat photos and video
Booked sessions
Group attendee list
Date of birth, height, gender
A report you filed

How the data model backs this up

Worth knowing if you care where your health data goes.

🔒

Security in the database, not the app

All 28 tables have row-level security enabled. A query for someone else's measurements returns nothing, whatever the app asks for. The apps are not the security boundary — the database is.

Sensitive writes are checked first

Booking, responding to an application, cancelling a series, applying a suspension: these run as database functions that verify the rules before acting, so the checks cannot be skipped by talking to the API directly.

📐

Limits are constraints, not interface behaviour

The ten-programme cap, one active own-programme, one review per pair, no duplicate assignment. A limit that exists only in the app is not a limit — it is a suggestion to anyone holding an API key.

🇪🇺

Hosted in the EU

Supabase in Stockholm. No advertising networks and no third-party analytics SDKs in either app. Measurements are special-category health data under Article 9 and processed only with explicit consent — see the privacy policy.

Every limit in one table

Collected here so you do not have to hunt for them.

Coaches searchableEvery public coach; 196 countries, 32 specialisations
Search resultsUp to 50, ordered by average rating
Clients per coach / coaches per clientNo limit
Handle3–30 characters
Coach programmes, days, exercisesNo limit
Client's own programmes10 max, 1 active
Exercise kindsWeights, bodyweight, cardio
Cardio targetsUp to 24 hours, up to 1,000 km
Exercise suggestions8 by default, up to 25
Groups, and members per groupNo limit
Session noteUp to 500 characters
Calendar grid05:00–23:00, quarter-hour steps
Session duration30/45/60/90 min presets, or 5–600 custom
Weekly repeat4/8/12/24 presets or custom, up to 52 weeks
Tracked measurements15 (weight, body-fat estimate, 13 sites)
Chart ranges1W, 1M, 3M, 6M, 1Y, all
Rate of changePer week under 3 weeks of data, per month beyond
Message textUp to 2,000 characters
Chat attachment50 MB; images and video only
Portfolio images3 before + 3 after per entry
Reviews1–5 stars, one per coach–client pair
Report reasonRequired, 10–2,000 characters
SuspensionsWarning, 7 days, 30 days, permanent
Notification event types19
Unit systemsMetric and imperial, per account
Account deletion grace30 days

Questions this page raises

What makes this a platform rather than an app?
Both sides of the transaction are on it, and the training is on it too. A client can arrive with no coach, search every public coach in 196 countries, apply, get accepted, and be logging that coach's programme the same day — without a single export, invitation code or second tool. Coaching software cannot do the first half; a directory cannot do the second.
I am just starting out and have no clients yet — is this any use to me?
That is the case the platform is built for. A public profile in coach search is how clients reach you, it costs nothing to list, and search is ordered by rating rather than by who paid, so you are not bidding against established coaches for placement. Write a bio — the one thing required to appear publicly — set your rates, and you are discoverable in 196 countries on day one.
Is any of this behind a paid tier?
Nothing on the coach side — that app is free in full, with unlimited clients and no commission. The client app is $4.99 a month after a two-week free trial. If a subscription lapses, nothing is deleted: measurements, history and goals stay readable, and new entries resume when it does. See Pricing.
Do I need a coach to use the client app?
No. Measurements, trends, goals and up to ten of your own programmes all work with no coach connected, and everything you record stays yours if you later connect to one — or leave one.
Can a coach see the programmes I wrote for myself?
No. They are visible only to their author, enforced in the database rather than by the interface. Your coach sees the workouts you log against their programmes.
Can I coach clients in other countries?
Yes — that is the design. Search covers 196 countries, connections are not location-bound, and each side reads weights and distances in their own units, so neither of you is converting anything by hand.
Can I try it before I commit to it?
Yes — create a coach account, fill in a profile, build a programme. Nothing on the coach side is locked and there is no trial period to run out.
What happens to my clients' data if I stop using MyFitsy?
It belongs to them, not to you or to us. Each client keeps their measurements, workouts and goals in their own account, and can request an export at any time.
Do you verify coach qualifications?
No. Coaches list their own certifications and MyFitsy does not check them. Clients should verify credentials themselves — the terms say so explicitly. What the platform does provide is reviews only real clients can leave, and reporting with moderation behind it.

Get found, and coach them in the same place

The coach app is free in full: a public profile in coach search, unlimited clients, and no commission on your fees. Clients get two weeks free.

For clients
Download on the App StoreGet it on Google Play
For coaches
Download on the App StoreGet it on Google Play