Managing athletes
Who can use this — all coaches. Assistant coaches see and manage only the athletes assigned to them; head coaches see and manage every athlete in the company.
The Athletes page lists the people you coach. Athletes are imported automatically when you connect TrainingPeaks. Each athlete shows their name and email, the groups they belong to, their TrainingPeaks plan, and their status. Select an athlete to open their detail page.
Filtering your roster
All filtering lives in one rail down the left of the page, under a single rule stated at the top:
Each number is how many athletes you’d see with that option applied — with all your other filters still on. Options that would show no one are dimmed and can’t be picked, so you can never filter your way into an empty list.
You start on a sensible default — your own athletes, Active only — so you don’t open onto a list dominated by deactivated accounts. Those defaults appear as removable chips above the list, so the starting point is always visible.
The filters are:
- Roster (head coaches only) — All coaches (everyone in your roster) or a specific coach: you, plus each assistant coach, each labelled with their role. Switching coach clears any group selection, since groups belong to one coach (see below).
- Status — Any status, Active, or Deactivated.
- Groups — your athlete groups. Pick one or more to narrow to their members. This section only appears when a specific coach is selected and that coach owns groups — a group’s members aren’t comparable across coaches, so it’s hidden at All coaches scope. Assistant coaches don’t have the Roster filter, so they don’t see this section.
- TrainingPeaks plan — Premium and/or Basic, an athlete’s TrainingPeaks account level. (Premium accounts carry the detailed data the analysis uses.)
- Also include → Former athletes — off by default. These widen your list rather than narrow it, so their count reads as a green +N. Turn it on to also see athletes who have left your roster; they appear marked Former and are read-only (they can’t be opened).
- Search — the box above the table matches name or email.
Your filters travel with the page address
The filters, search and sort you have on are part of the Athletes page’s address. That means:
- Opening an athlete and coming back — with your browser’s Back button or the athlete page’s All athletes link — returns you to the same filtered list, not to the default.
- Refreshing the page keeps your filters.
- Bookmark or share the address to come back to (or hand a colleague on your team) the same view. The plain Athletes address always opens the default view.
Searching from anywhere
The Search athletes box in the top bar works on every page. Type a name or email and press Enter: you land on the Athletes page with that term already applied as a Search chip, alongside your usual defaults (your own athletes, Active only). If you’re already on the Athletes page, the term is added to the filters you have on. If the athlete you want doesn’t appear, remove a chip — they may be coached by someone else, deactivated, or a former athlete.
On the Dashboard the same box behaves differently: it filters that page’s review list as you type, without navigating away.
The tally and the chips
There’s exactly one count on the page — the header tally, “N athletes shown / of M in the roster” — and the table footer restates it as “N of M athletes match X filters”. No competing numbers anywhere.
Every active filter shows as a chip in the Filtering by bar: coach, status, each group, each plan, the former-athletes toggle, and your search term. Click a chip’s × to remove just that one filter. Reset to default returns you to your own Active athletes.
If nothing matches
Because dimmed options can’t be selected, the rail alone can never empty the list. The only way to reach No athletes match these filters is the free-text search — and when that happens, the page says so and offers one-click buttons to loosen the specific filters that are on: Clear the search, Any plan, Any group, Any status, and All coaches.
Sorting
Sort the list by Name (A–Z) (the default), Name (Z–A), or Most to review — athletes with reports waiting for you first. Sorting never changes any count.
Groups
Use groups to organize your athletes — the same concept as athlete groups in TrainingPeaks. Each group belongs to one coach; when you pick a coach in the Roster filter, the Groups section lists that coach’s groups. Selecting All coaches hides the Groups section, because groups from different coaches aren’t comparable at that scope.
Importing groups from TrainingPeaks
Your TrainingPeaks athlete groups are brought in with the PlanMyPeak Importer browser extension. Imported groups show up with the same members — no extra setup needed.
There’s an Import groups from TrainingPeaks button at the top of this page. It brings all your groups across in one pass and refreshes the roster when it finishes. You’ll need to be signed in to TrainingPeaks, and the extension itself needs to be signed in to PlanMyPeak — that’s a separate sign-in from the one you’re using here.
The button is always there. Press it and PlanMyPeak checks your extension right then, telling you what to fix if it can’t run — so once you’ve fixed it, press the button again rather than reloading the page. Group import is newer than the rest of the extension, so “out of date” is the likeliest thing you’ll see here: update it from the Chrome Web Store. You can always import from the extension’s own popup instead.
If the extension is signed in to a different PlanMyPeak account than the one you’re using here, the import is refused rather than run — otherwise your groups would land in somebody else’s account. Sign the extension in as yourself and try again.
My Athletes
Every coach has a My Athletes group that always contains your whole roster. New athletes are added to it automatically as they’re imported, so it stays complete on its own. My Athletes can’t be deleted.
Group membership
Group membership mirrors TrainingPeaks, and an athlete belongs to one group at a time — moving them into a group takes them out of the one they were in. Both the groups and who belongs to them are managed in TrainingPeaks and brought in with the importer extension; there’s no “new group” button and no add/assign control in the app.
TrainingPeaks plan
Your athletes’ TrainingPeaks account level — Premium or Basic — is a filter in its own right (under TrainingPeaks plan in the rail) and shows as a pill on each athlete’s row. It reflects TrainingPeaks automatically, so there’s nothing to set up.
The athlete page at a glance
Open an athlete and the header tells you where they stand: a pending review count that links straight to their queue, who they’re coached by, their TrainingPeaks account tier, their timezone, and a connection badge:
- Athlete TP connected — their own TrainingPeaks account is linked, so their workouts sync and your feedback can be published back to TrainingPeaks.
- Athlete TP reconnect — their TrainingPeaks access expired; they need to re-authorize from their own portal.
- No athlete TP connection — they haven’t linked TrainingPeaks yet. You may still see coach-imported workouts for them, but those stay local-only: no report approval, no athlete notifications, and no TrainingPeaks feedback comments until they connect. See Connecting TrainingPeaks.
The badge describes the athlete’s own connection, which is the one that unlocks publishing — not whether anything reached us through your own roster sync.
Under the header, a vitals strip gives you the six numbers coaches check first, straight from the athlete’s weekly summary:
- Form, Fitness (CTL) and Fatigue (ATL), each with how they moved since last week.
- 7-day TSS — what they actually did against what was planned.
- Compliance 28d — cycling load completed against cycling load planned over the last four weeks, plus how many planned sessions were skipped. TSS is a cycling measure, so non-cycling sessions count on neither side.
- Resting HR — the latest weekly average against their earlier baseline.
If any of these are still settling (a new athlete, or no readings yet), the strip says so rather than showing a number it can’t stand behind.
When something needs you, an amber band appears under the vitals — an expired TrainingPeaks connection, reports waiting on your review, sessions skipped in the last 28 days, or a compliance alert that fired. Each one carries the button that takes you to the tab where you fix it.
The rest of the page sits behind four tabs, so it does one job at a time:
- Activity calendar — the default view (see below).
- Trends — twelve weeks of load as a line chart, the selected week’s detail, and the coach read.
- Feedback & notes — the analysis reports for this athlete.
- Settings — one card of settings rows: activation first, then training block, plan type, feedback approval, and weekly review.
The tab you’re on is kept in the page address, so you can link straight to one (for example, an athlete’s Settings) and Back returns you to the tab you came from.
Athlete status
Athletes are Active or Deactivated, set under Activation. Deactivating an athlete stops their analysis and feedback without deleting their history; you can reactivate them at any time. You can also set an Auto-deactivate date so an athlete is paused automatically — useful at the end of a training block or season — then Save date. Deactivation notifies their coach.
An athlete can only be activated once they have a TrainingPeaks roster identity, a current coach assignment, and that assigned coach has a connected TrainingPeaks grant. The athlete does not need an account or their own provider connection.
When you activate an athlete, their recent history (roughly the last 45 days) syncs in, and every completed ride gets a compliance analysis you can read on its review page. Workouts that were already more than 48 hours old when they arrived get the analysis only — no AI feedback is written for them automatically. If you want AI feedback on one of those rides, open it and generate feedback from there.
Rides they complete from then on do get AI coach feedback, which arrives in your pending queue like any other. Nothing is ever posted to TrainingPeaks or emailed to a coach-managed athlete — the feedback is yours to read, and to act on however you normally would.
Activated athletes then join the shared 10-minute sync with a 3-day lookback and 112-day (16-week) forward window. The detail page shows queued, running, completed, partial, or failed state and lets you retry the explicit 45/112 load.
Activation settings and consent
Activate opens a short dialog with three settings and a required consent confirmation:
- Training plan type — Custom plan or Off-the-shelf plan. This decides which of your compliance alert rules the athlete is measured against, so it has to be answered: an athlete with no plan type isn’t checked for compliance alerts at all. Only Custom plan athletes are covered by your athlete alert rule.
- Feedback approval — Coach review or Auto-approve. Coach review keeps every report in draft until you approve it; auto-approve publishes reports and their TrainingPeaks feedback without waiting for you. This applies to new reports only — reports that already exist keep the mode they were created with. For a coach-managed athlete, auto-approve still holds the report for your review: their workouts are read through your connection and are never posted back to TrainingPeaks, so there is nothing to publish.
- Weekly review — whether this athlete gets the weekly review, off unless you turn it on. It starts with the next week that closes, so enabling it here never sends a review for a week that has already ended. The weekly review is only available to athletes on an off-the-shelf plan: the option stays off, with a note saying why, until you choose that plan type above it. Reactivating an athlete whose weekly review is paused by their plan type leaves that enrolment as it is; choose the off-the-shelf plan and it resumes. It works best with auto-approve, so nothing waits on you week to week, but that pairing is up to you.
All three are pre-filled with whatever the athlete already has, so reactivating someone after a break is just a confirmation — though it’s a good moment to change the plan type if their training has moved on. Choose Activate athlete only after confirming that you have the athlete’s consent to analyse their data. The settings, consent acknowledgement, and activation are submitted in one request. Choose Cancel to leave everything exactly as it was.
You can change all three later on the athlete’s page, under Training plan type, Feedback approval, and Weekly review.
Coach-managed roster import, activation, sync, analysis, retry, and deactivation never email the athlete. There is no coach-triggered athlete invite action. Until the athlete independently signs up and links their account, PlanMyPeak also blocks report approval, athlete notifications, and all TrainingPeaks feedback comments for them. Signing up does not make coach-imported workouts publishable: those workouts remain local-only unless they are later synced through the athlete’s own TrainingPeaks connection.
You’re also notified in the bell menu when new athletes connect to you. Athletes who register themselves are announced one at a time. Athletes brought in by a TrainingPeaks roster sync are rolled up into a single summary per sync (which also counts any new assistant coaches), so a large import never floods your notifications — and a routine re-sync only notifies you when it actually adds someone new.
How workouts get reviewed
Feedback approval on the athlete’s page decides what happens to new analyses:
- Coach review — reports start in draft and wait in your report queue for you to approve before anything is published to TrainingPeaks.
- Auto-approve — reports skip coach review and publish directly. Best for athletes whose compliance is stable.
Changing this applies to new reports only; reports already created keep the mode they had.
The activity calendar
The Activity calendar tab is the athlete’s month laid out Monday to Sunday, with a weekly metrics rail down the right of each week. It replaces the old linear activities list: instead of reading dates off rows, you see the shape of the week — where the hard days fell, what was missed, and what is still to come.
Each workout is a chip showing its sport, title, duration and TSS, coloured by what happened to it:
- Completed — green, the session was done.
- Not completed — red, it was planned for a day that has passed and never started.
- Planned — grey-blue, it’s still in the future.
- Rest — the faintest of the four. A rest day is never “missed”, so it never turns red.
Each chip is a pale card with its status colour down the left edge, so a week reads at a glance without becoming a wall of colour.
A chip also carries what it’s waiting on — Needs review, Awaiting analysis, or Reviewed. Select any chip to read that workout’s review in a panel over the calendar, so you keep your place in the month; Full review in its header opens the whole page, where printing, chart export and the approval history live.
Use the Sport control above the calendar to narrow it to one discipline. The calendar loads a month at a time and keeps loading as you scroll back through their history; the Today button brings you back to the current week.
The rail beside each week totals activities, duration, TSS, distance, elevation and resting HR, each shown as actual against planned, so you can read a week without opening anything. Underneath sits a compliance bar: the share of that week’s planned cycling load the athlete actually did — TSS done against TSS planned — green at 85% or above, amber from 60%, red below that. It’s the same measure as Compliance 28d in the header and the same one your compliance alerts fire on, so the three never disagree.
Feedback & notes
The Feedback & notes tab is this athlete’s analysis reports, with the ones waiting for your review first and the rest newest-first below. Each row shows the workout, its status, and the button that opens it — Review for a report that still needs you, Open for one already published. Published reports are the ones the athlete sees in TrainingPeaks.
Training block and plan type
On the Settings tab:
- Training block → Current training type records what the athlete’s current work is built around: Base Training, Sweet Spot, Tempo, Threshold, VO2 Max, Race, or Recovery — or None. It’s there so you can see at a glance what phase an athlete is in.
- Training plan type → Current plan type marks whether the athlete is on a Custom plan or an Off-the-shelf plan, which decides which compliance alert rule applies — and whether the athlete is covered by your athlete alert rule at all, which only includes Custom plan athletes.
Any coach assigned to an athlete can change these, as can a head coach. An athlete whose plan type is Not set is never checked for compliance alerts, and only Custom plan athletes are checked for athlete alerts — so if an athlete never seems to trigger one, check this first.
Athlete progress
The Trends tab shows the bigger picture, in two columns.
Weekly load
The left card plots the last twelve weeks as lines. Use the chips above the chart to choose which series to draw — TSS, Planned TSS, Duration, Distance, Elevation, Work and Resting HR — and turn on as many at once as you want to compare. Only metrics the athlete actually has data for are offered, so an athlete with no resting-HR readings never sees an empty series.
Each series is scaled to its own range, which is what lets metrics measured in completely different units share one plot. Read the shape of each line, not its height against another. Hover a week to read every drawn series’ real value for it.
Click a week to move the right column to it.
The week you selected
The right column opens on the most recent week and follows whichever week you pick — from the chart, or with the ‹ › arrows in the card’s header, which step a week at a time and stop at the ends of the twelve-week window. It lists total duration, TSS done against planned, distance, elevation gain, work, resting HR, and how many planned sessions were skipped.
When the athlete’s TrainingPeaks account records a daily resting heart rate, the week shows its average. A resting heart rate that drifts up through a heavy block is an early sign they may need more recovery. If there’s no resting-HR data, it reads as a dash.
Coach read
Below the detail sits the coach read for that week — the verdict (maintain, modify, reduce, or recovery required) and the written summary from that week’s stimulus report. Weeks without a report yet say so rather than showing an empty panel.
This week
At the foot of the column, a load progression score out of 100 with a one-line read on how the athlete is taking on their training, then this week’s TSS against their 4-week average and what’s planned for next week. Until there’s enough history it says so rather than guessing.
Weekly reports on the card
Two buttons sit on the weekly summary when there’s something to read:
- Under-training / Over-training / Weekly summary — view notes — opens that week’s compliance report: what was planned versus done, which rides were missed or extra, other activities, and the rule that fired.
- View stimulus report — opens a deeper read on the week: a verdict of Maintain, Modify, Reduce, or Recovery required, the week’s impact and why, a recommendation for next week, a day-by-day session breakdown, and coaching guidance (strengths, what to focus on, action items). It appears only for weeks that have one.
These help you spot trends without opening each workout one by one.