Feature guide · All coaches

Plotting a program onto booked sessions

Put a whole program onto a client's booked sessions in one go. You see exactly what will happen before anything is written, and work your client has already started is never overwritten.

Live · validation phase · September 2026 Applies to: the web dashboard Owner: Carl

At a glance

1 · Open the client, go to the Training tab. Every active program now has a Plot program onto sessions button.

2 · Read the preview. It shows which session gets which program day, in your client's timezone, and it names every session it is skipping and why.

3 · Press Plot. Nothing is written until you do. Your client gets one message saying their workouts are ready, not one per session.

Live now, but not for real clients yet. This is on the dashboard today, and the first job is to prove it end to end on the test accounts. Do not use it on a paying client until the steps in Validate it first are done and Carl has given the green light.

What is new

Assigning a program to a client still does not put any workouts on their sessions by itself. That has not changed, and it is deliberate: sessions are the only training your client sees in their app, so nothing reaches them until it is attached to a session. Up to now the only bridge was Seed from program inside a single session: open the session, pick the day, done.

That still works and you should still use it for a one-off. What is new is doing the whole run from one screen. Twelve sessions used to mean twelve trips into twelve sessions, keeping track of where you left off. Now it is one button, one preview, one press.

Validate it first, then real clients

This feature writes the thing your client actually opens in their app, so it earns its way in. Until validation is done, do not plot onto any real paying client. Here is the run-through, on the test accounts only:

  1. Run the whole loop on your own coach test client first. You hold that login, so you can see both sides yourself. Assign a program, plot it, and check the preview, the results screen, the Training tab and your calendar all agree: the right program day on the right session, in the right order.
  2. Then check the client side on a different device. Log into your coach test client in the mobile app on your phone, and in the client web portal, and confirm the sessions and their workouts show up correctly and look right there too.
  3. Try the edge cases on that same test client: occupied sessions, the replace tick, repeat last week, cancelling a plotted session.
  4. Then plot onto Carl's dogfooding client account (ask him which one if you are not sure). Feel free to clear it out first: delete its program assignment and any planned workouts so you have a clean slate. Carl is happy for you to do that.
  5. Carl checks that one from the client side. You cannot log in as his account, and you do not need to: he will open it in his own app and web portal and confirm what he sees matches what you plotted. Message him once you have plotted so he knows to look.
  6. Then live with it for a couple of weeks. Keep programming the dogfooding account with plots, week by week, exactly the way you would a real client.

Real clients come after both halves: the checks above pass, and a couple of weeks of test-account use have gone cleanly. Carl gives the green light, and this page will say so when he does.

How to plot a program

1

Open the client's Training tab

  • Go to the client's profile, then the Training tab. Each active program assignment has a Plot program onto sessions button.
  • Press it. The preview opens. Nothing has happened to your client yet.
2

Check the starting day

  • It starts from the suggested next day: the one right after the furthest day this client has already been given. Most of the time that is the day you wanted.
  • If it is not, pick a different starting day from the dropdown. Everything after it follows from your choice.
3

Pick how far ahead

  • This week (the default), Next 2 weeks, Rest of program, or Custom dates.
  • Every date on the screen is in your client's timezone, and the timezone is named so you never have to work it out.
4

Read the preview

  • The table shows every session that will be filled and which program day it gets, plus every session it is skipping and the reason for each one.
  • This is the whole point of the feature. Read it, check the pairing looks right, and fix it here rather than after the fact.

The preview writes nothing and notifies nobody. You can open it, look, and close it again as often as you like.

5

Press Plot

  • The button tells you the number: Plot 6 sessions. That is the moment anything is written.
  • A results screen then shows exactly what happened, session by session.
  • Your client gets one message saying their workouts are ready, however many sessions you just filled.

Running the same plot again is safe. Sessions that already have a workout are skipped, so nothing doubles up and your client is not told twice about the same thing. Plot on Sunday, add two sessions on Wednesday, plot again: only the two new ones get filled.

Which sessions it uses, and in what order

It walks the program's training days in order and matches them one to one onto the client's upcoming booked live one-to-one sessions, also in order. The first day goes to the first session, the second day to the second session, and so on.

That is the same thing you already do by hand with Seed from program, in the same order, just however many times it takes. Nothing about the result is new to you or to your client.

Sessions that already have a workout

You asked what happens to sessions that are already planned. The answer is that they are skipped and named, never quietly overwritten. Each of those rows in the preview tells you why it was left alone.

Logged work is never overwritten, by any option, ever. If a client has started it, it stays.

When the program runs out of days

Sooner or later the client has more sessions booked than the program has training days left. By default, plotting stops there and lists the sessions left over, so you know exactly which ones still need you. That was Angela's preference and it is what happens unless you say otherwise.

If you would rather keep going, tick Repeat last week. It fills the remaining sessions by cycling through the final week's days again. That was JP's preference, and it is off until you turn it on, per plot.

When a session gets cancelled

If a session that had a plotted workout is cancelled, and nobody had touched that workout yet, you get a Program day freed up notification. It links straight to that client's Training tab so you can plot again in a couple of taps.

Nothing shifts on its own, and that is on purpose. Later days often have your fingerprints on them: a swap you made for a sore shoulder, a load you tuned after last week. Sliding the whole program along automatically would quietly overwrite that work. So the system tells you, and you decide.

Builder extras that shipped with it

The five questions you asked, answered

These are the questions JP and Angela raised on the proposal. Here is where each one landed.

"If a client drops from three days a week to two, does day three shift to the next session? Should the week compress?"

Shifting is automatic. Compression is yours. Because days are matched to sessions in order, a day always moves to the next available session by itself, and nothing gets dropped. What the tool will never do is squeeze two days into one session. If a week genuinely needs compressing, that is a coaching call: use the starting-day dropdown and your own judgment for that week.

"What actually lands on a session that has nothing planned on it?"

Program training days, and nothing else. Rest days are never placed. If your client has more sessions booked than the program has training days left, those extra sessions are listed as leftovers instead of being filled with something invented.

"Can I do a week at a time, or do I have to commit to a month?"

Both, whichever suits the client. The presets run from This week (the default) through Next 2 weeks to Rest of program, with Custom dates if you want your own window.

"Does the client get told when I do this?"

Yes, once. One combined message saying their workouts are ready, per plot, no matter how many sessions you just filled. Never one ping per session.

"Can I enter weights in pounds while I am building the program?"

Yes. Use the new Enter in: kg / lb toggle in the builder and type the numbers you actually use. Your clients still see weights in whatever units they prefer, exactly as before.

Good habits

Do

  • Read the preview before you press the button. It exists so mistakes are cheap.
  • Re-run the plot whenever you book more sessions. Filled sessions are skipped and nothing doubles.
  • Use Seed from program inside a session when you only need one day. It has not changed.
  • Use Copy to when you want to repeat a single day. A copied day is a draft only you can see until you publish it onto a session.
  • Open any plotted workout before the session and edit it. It lands exactly like a seeded one, not started, still yours to adjust.

Don't

  • Don't plot onto a real paying client yet. Validation comes first: see Validate it first.
  • Don't assume assigning a program delivers workouts. Plotting or seeding is what puts them in front of your client.
  • Don't wait for a cancelled session's day to move itself. You get a notification, and the call is yours.
  • Don't go hunting for a way to replace a workout your client has already started. It is protected on purpose.
  • Don't tick Replace occupied without reading the rows. Anything you built by hand still needs its own tick, and that warning is there for a reason.

Something not working the way this page describes, or a step we have missed? Message Carl, or raise it in the team chat. This page gets updated, not replaced.

Bespoke Fit · Program plotting · v2.1 · September 2026
v1: proposal, with five open questions for the coach team.
v2: the feature is built. Rewritten as a guide, with your five questions answered, the cancelled-session and run-out-of-days behaviour written down, and the builder's kg / lb entry toggle and Duplicate week added.
v2.1: live on the dashboard. Validation-first rollout added: test accounts only until Carl signs off.