A boundless, date-keyed plan athletes subscribe to — what it is, how it differs from a static plan, and how to build one.
Grepiac has two kinds of multi-week plan, and they behave differently on purpose:
Each entry sits on a real date. When you add one, it spawns a real
ScheduledWorkout for every active subscriber (so pairing, Load,
week totals and compliance all work normally). The sync rules:
Open the editor at /coach/dynamic-plan/<id>/ — an 8-week,
date-keyed grid with prev/next paging, a template/ad-hoc picker, and
the subscriber manager. Create a plan, place workouts on dates, then
add subscribers.
You do not have to place every session by hand. From the ATP Builder, Push to dynamic plan lays a generated season's dated sessions straight onto a dynamic plan. Because entries are keyed by absolute date, you can run the planner for several seasons and push each onto the same plan — they accumulate into a multi-year library that every subscriber receives. Leave replace overlapping dates on so re-running one season replaces just that season. See Macrocycle plans: the basics.
If an athlete changes a workout that came from a dynamic plan, that copy detaches — it becomes their own static copy and stops tracking the plan, so later plan edits no longer overwrite it. The plan keeps the original for everyone else.
You can stage a plan privately and reveal it when ready. In the plan editor:
While hidden, the sessions still sit on each subscriber's calendar and you (the coach) always see them, dimmed; the athlete does not. Flip the toggle back and they appear for everyone. Existing plans stay visible, so nothing changes for current subscribers until you choose to hide something.
A workout hidden on its own stays hidden when you reveal its week — so you can stage several options on one day, reveal the week, and the athletes only see the sessions you decided on. Un-hide it from the right-click menu when you are ready.
Each step can be a target (one number) or a range (a band like
95–100% FTP), switched with the small target/range button on the
step. The Z? picker fills a range straight from a zone — pick Zone
2 and you get its real band (60–74%), not a single midpoint. Steps can
also be written by time or distance: hit the time/dist button to
prescribe 8 × 100 m instead of minutes. A distance step keeps its time
estimate too, so Load and weekly totals stay correct.
On export: Garmin .fit carries ranges and distance steps natively.
Zwift .zwo gets a band on steady blocks, but its interval format takes
a single power per leg, so a range there shows as its midpoint.
When you add a one-off workout to a dynamic plan (the "or a one-off workout" box), open + Power / pace targets to build intervals — warmup, steady, ramp, intervals, cooldown — exactly like the calendar workout builder. Intensities are set as a percentage of threshold (FTP, threshold pace, LTHR) or RPE, so a single structure resolves to each subscriber's own zones: "4×5 min @ 100% FTP" is the right watts for every athlete on the plan. Editing the targets later propagates to subscriber copies that are still planned. Workouts picked from a template already carried their structure; this closes the gap for typed-in one-offs.
Still stuck? Ask us a question and we'll write up an answer.
Ask a question