A complete reference library for structured cycling training. From the data and metrics that define a session, to the workout types that build fitness, the periodization principles that organize a training block, the end-of-block targets that measure progress, the recovery and readiness signals that protect the athlete, and the analytics that tie it all together — this is the knowledge base behind every decision keysessions.ai makes.
Fundamentals
How cycling data is organized and the baseline information every session record starts from.
General Logic
In cycling, data can be grouped into external data, internal data, load data, and context data. Analysis quality comes from combining these families, not from relying on a single metric.
| Family | What it measures | Examples | Main use |
|---|---|---|---|
| External data | Mechanical output or produced performance. | Power, speed, distance, elevation gain, cadence. | Measure what was actually produced. |
| Internal data | The body's response to the stimulus. | Heart rate, RPE, HR drift, HRV. | Understand the physiological cost of the effort. |
| Load data | Quantity and density of training stress. | TSS, IF, NP, volume, Time in Zone, load ratio. | Manage progression, recovery, and accumulation risk. |
| Context data | Conditions that modify performance and perception. | Weather, indoor/outdoor, wind, sleep, stress. | Avoid incorrect interpretation. |
Basic Session Data
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| duration | Total time recorded or entered manually. | Base for volume, TSS, kJ, and load distribution. | Distinguish total time, moving time, and effective work time. |
| moving_time | Time in motion detected by GPS/sensor. | Useful outdoors to exclude stops. | May hide pauses that matter for recovery. |
| distance | GPS, speed sensor, or smart trainer. | Describes outdoor volume/route. | Less useful than time for prescribing training. |
| session_type | Planned or post-session classification. | Enables session-aware review. | Should not be inferred from IF alone. |
| completion_status | Manual: completed, partially_completed, skipped. | Adherence, review, and adjust logic. | Requires honest athlete input. |
| athlete_notes | Free-text post-session note. | Explains data or perception anomalies. | Not numerical, but often decisive. |
Power & Performance
Power metrics, the FTP-based intensity zones, and how the main training intensities compare.
Power Metrics
Power is the most robust external metric: it measures mechanical work produced, independently of wind, gradient, and speed.
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| power | Power meter, smart trainer, or software estimate. | Instantaneous mechanical output in watts. | Requires calibration and consistency between devices. |
| average_power | Arithmetic average of watts. | Useful for steady efforts and regular intervals. | Underestimates the cost of highly variable rides. |
| normalized_power / NP | Calculation that weights power variability. | Better represents the physiological cost of variable sessions. | Does not replace interval analysis. |
| max_power | Highest recorded value. | Peaks, sprints, accelerations. | May contain spikes. |
| best_power_5s | Best 5-second average power. | Sprint and neuromuscular power. | Depends on freshness and technique. |
| best_power_1min | Best 1-minute average power. | Anaerobic capacity and short intense efforts. | Very pacing-sensitive. |
| best_power_5min | Best 5-minute average power. | Practical proxy for high-end aerobic power / VO2max. | Does not directly measure VO2max. |
| best_power_20min | Best 20-minute average power. | Can help estimate threshold/FTP if performed as a test. | Requires a correct protocol. |
| ftp | Test, software estimate, or coach assessment. | Base for zones, IF, TSS, and workout targets. | If older than 12 weeks, it may be inaccurate. |
| w_kg | FTP / body_mass_kg or power / body_mass_kg. | Climbing performance and athlete classification. | Does not explain all flat-road performance. |
| power_curve | Best powers over standard durations. | Sprint, anaerobic, VO2max, threshold, and endurance profile. | Requires reliable historical data. |
| variability_index / VI | NP / average_power. | Measures ride variability. | High VI indicates surges, climbs, traffic, or racing. |
Intensity Zones
Training zones are defined as a percentage of FTP. They translate the abstract threshold value into concrete prescriptions for each session.
| Training zone | %FTP | Typical sensation | Primary use |
|---|---|---|---|
| Active recovery | 45–60% | Very easy | Recovery and circulation |
| Endurance | 60–75% | Comfortable, conversation possible | Aerobic base |
| Tempo | 76–87% | Steady, moderately demanding | Muscular endurance |
| Sweet spot | 88–94% | Hard but controlled | FTP development with manageable fatigue |
| Threshold | 95–105% | Hard, sustainable in blocks | FTP and race-pace power |
| VO2max | 106–120% | Very hard, strong respiratory load | High-end aerobic power |
| Anaerobic | 121–150% | Very intense, high lactate accumulation | Attacks, ramps, short efforts |
| Sprint | Maximal | Explosive | Peak power and acceleration |
Key Comparisons
Endurance vs Tempo
Endurance Z2 builds the aerobic foundation with a low recovery cost. Tempo increases the ability to sustain moderate-high power, but it creates more fatigue.
| Aspect | Endurance Z2 | Tempo |
|---|---|---|
| Intensity | 60–75% FTP | 76–87% FTP |
| Main adaptation | Aerobic base | Muscular endurance |
| Recovery cost | Low | Medium |
| Best use | Volume, base, durability | Sustained pressure, long climbs, strong endurance |
| Common error | Riding too hard | Turning it into sweet spot |
Sweet Spot vs Threshold
Sweet spot is often the best compromise between training stimulus and fatigue. Threshold is more specific and more stressful.
| Aspect | Sweet Spot | Threshold |
|---|---|---|
| Intensity | 88–94% FTP | 95–105% FTP |
| Fatigue | Medium-high | High |
| Recovery cost | Manageable | Higher |
| Best use | FTP build, muscular endurance, time-efficient aerobic work | Specific FTP improvement and race-pace durability |
| Common error | Riding too hard | Starting above target and fading |
Threshold vs VO2max
Threshold improves sustainable power. VO2max raises the aerobic ceiling.
| Aspect | Threshold | VO2max |
|---|---|---|
| Interval duration | 8–30 min | 2–6 min |
| Intensity | 95–105% FTP | 106–120% FTP |
| Sensation | Hard but controlled | Very hard |
| Main adaptation | FTP, lactate clearance, metabolic stability | Oxygen uptake, cardiac output, high-end aerobic power |
| Recovery cost | Medium-high | High |
VO2max vs Anaerobic Capacity
VO2max work remains mostly aerobic at very high intensity. Anaerobic capacity work targets high power above the sustainable aerobic domain.
| Aspect | VO2max | Anaerobic Capacity |
|---|---|---|
| Duration | 2–6 min | 30 sec–2 min |
| Intensity | 106–120% FTP | 121–150% FTP |
| Recovery | Often around 1:1 | Longer, often 1:3 or more |
| Objective | Raise aerobic ceiling | Improve attacks, ramps, and short surges |
| Fatigue profile | Respiratory and systemic | Muscular, glycolytic, lactate-heavy |
SFR vs Gym Strength
SFR sessions do not replace gym strength work. They are cycling-specific torque endurance sessions.
| Aspect | SFR on the bike | Gym strength |
|---|---|---|
| Movement specificity | High | Medium |
| Absolute load | Limited | High |
| Primary objective | Cycling-specific force endurance | Maximal strength, stability, structural robustness |
| Common mistake | Riding too hard or too low cadence | Assuming transfer is automatic |
Training Load
Metrics that turn duration and intensity into load indicators, and the guidelines for managing progression.
Load Metrics
Load metrics convert duration and intensity into indicators useful for planning progression and recovery.
| Data / Statistic | Formula / Detection | Usefulness | Limits / Notes |
|---|---|---|---|
| IF | NP / FTP. | Relative density/intensity of the session. | Does not identify workout type by itself. |
| TSS | duration_hours × IF² × 100. | Estimate of training stress. | Same TSS can represent very different physiological stress. |
| TSS_per_hour | TSS / duration_hours. | Load density. | Should not guide the plan alone. |
| weekly_tss | Sum of weekly session TSS. | Total weekly load. | Must be read with quality and distribution. |
| weekly_tss_delta_pct | ((current_TSS - previous_TSS) / previous_TSS) × 100. | Controls load progression. | Rapid increases raise fatigue risk. |
| baseline_tss_4w | Weekly average TSS over the last 4 weeks. | Represents recent habitual load. | Less precise if manually estimated. |
| acute_tss_7d | Sum of TSS over the last 7 days. | Recent acute load. | Sensitive to one long or intense ride. |
| load_ratio | acute_tss_7d / baseline_tss_4w. | Readiness and accumulation risk. | Useful for green/yellow/red logic. |
| CTL | Rolling model of chronic load, usually long-term. | Estimated fitness/chronic load. | Requires accurate history. |
| ATL | Rolling model of acute load, usually short-term. | Estimated recent fatigue. | Depends on quality of TSS inputs. |
| TSB | CTL - ATL. | Fitness/fatigue balance. | Does not replace RPE and execution quality. |
Load Management Guidelines
These guidelines help decide whether a workout should be progressed, maintained, or reduced.
| Situation | Recommended direction |
|---|---|
| Average weekly RPE below 7 and good repeatability | Progress load by roughly 5–8% weekly TSS |
| Two or more Z2/Z3 sessions feel above RPE 8 | Reduce load or add recovery |
| Cardiac drift above 6–8% during Z2 | Treat as possible fatigue or insufficient aerobic durability signal |
| Repeated intervals consistently below target | Reassess FTP, fatigue status, or recovery |
| FTP test older than 12 weeks | Confirm FTP with a mini-test or updated performance check |
| Missing power, heart rate, RPE, or session metrics | Avoid aggressive load progression |
| Indoor heat causes elevated heart rate and RPE | Reduce targets slightly or improve cooling |
| Race week | Shift toward protective and peaking sessions |
| Deload week | Reduce volume and preserve small intensity reminders only if freshness is good |
Workout Types
The complete reference of cycling workout types, how to choose between them, and how they fit together across a plan.
Complete Workout Reference
Each workout type is described by its training phase, focus, load trajectory, intensity guideline, typical effort duration, physiological objective, main purpose, how it differs from other workouts, and a practical example.
1. Active recovery
- Phase
- Off-season, Pre-season, In-season
- Focus
- Recovery
- Trajectory
- Recovery
- Intensity guideline
- 45–60% FTP
- Typical effort duration
- 30–90 min continuous
- Physiological objective
- Increase circulation and support recovery without adding meaningful training stress
- Main purpose
- Restore freshness after hard sessions or races
- How it differs
- It should not create relevant metabolic or neuromuscular fatigue
- Practical example
- 45 min at 50–55% FTP, high cadence, very low RPE
2. Endurance Z2
- Phase
- Off-season, Pre-season, In-season
- Focus
- Aerobic base
- Trajectory
- Building, Consolidating
- Intensity guideline
- 60–75% FTP
- Typical effort duration
- 1.5–5 h+ continuous
- Physiological objective
- Improve aerobic efficiency, mitochondrial density, capillarization, fat oxidation
- Main purpose
- Foundation for all higher-intensity work
- How it differs
- Sustainable for long duration with low lactate accumulation
- Practical example
- 3 h at 65–72% FTP
3. Long endurance / fondo ride
- Phase
- Off-season, Pre-season, In-season
- Focus
- Aerobic base, Muscular endurance
- Trajectory
- Building, Consolidating
- Intensity guideline
- 60–75% FTP
- Typical effort duration
- 3–6 h+
- Physiological objective
- Improve peripheral endurance, fatigue resistance, durability
- Main purpose
- Prepare for granfondos, long climbs, long races
- How it differs
- Similar to Z2 but duration and late-ride durability are the main stimulus
- Practical example
- 4 h in Z2 with final 45 min at 70–75% FTP
4. Endurance with controlled cardiac drift
- Phase
- Off-season, Pre-season
- Focus
- Aerobic base, Performance validation
- Trajectory
- Building, Consolidating
- Intensity guideline
- 60–75% FTP
- Typical effort duration
- 2–4 h
- Physiological objective
- Assess and improve aerobic decoupling between power and heart rate
- Main purpose
- Monitor aerobic fitness and fatigue resistance
- How it differs
- The key metric is power-heart-rate stability, not only average power
- Practical example
- 2 h at 68% FTP, cardiac drift target below 5–6%
5. Tempo
- Phase
- Off-season, Pre-season, In-season
- Focus
- Muscular endurance, Aerobic base
- Trajectory
- Building, Consolidating
- Intensity guideline
- 76–87% FTP
- Typical effort duration
- 20–90 min continuous or long blocks
- Physiological objective
- Increase sustained aerobic work at moderate-high intensity
- Main purpose
- Improve ability to ride "strong but controlled"
- How it differs
- More demanding than Z2, less specific and less stressful than threshold
- Practical example
- 3 x 20 min at 80–85% FTP, 5 min recovery
6. Sweet spot
- Phase
- Off-season, Pre-season, In-season
- Focus
- FTP development, Muscular endurance
- Trajectory
- Building, Consolidating
- Intensity guideline
- 88–94% FTP
- Typical effort duration
- 8–30 min per block
- Physiological objective
- High aerobic stimulus with manageable fatigue
- Main purpose
- Improve FTP, muscular endurance, and sustained power
- How it differs
- Close to threshold but usually more repeatable and less costly
- Practical example
- 3 x 15 min at 90–92% FTP, 5 min recovery
7. Threshold / FTP work
- Phase
- Pre-season, In-season
- Focus
- FTP development
- Trajectory
- Building, Consolidating
- Intensity guideline
- 95–105% FTP
- Typical effort duration
- 8–30 min per block
- Physiological objective
- Improve sustainable power, lactate clearance, metabolic stability
- Main purpose
- Raise real-world FTP and race-pace durability
- How it differs
- More specific and more fatiguing than sweet spot
- Practical example
- 2 x 20 min at 95–100% FTP
8. Over-under intervals
- Phase
- Pre-season, In-season
- Focus
- FTP development, Race specificity
- Trajectory
- Building, Peaking
- Intensity guideline
- 90–105% FTP alternating
- Typical effort duration
- 10–30 min per block
- Physiological objective
- Improve lactate processing and ability to recover slightly below threshold after surges
- Main purpose
- Prepare for irregular climbs, attacks, and race dynamics
- How it differs
- Alternates below and above threshold without full recovery
- Practical example
- 3 x 12 min: 2 min at 95% FTP + 1 min at 105% FTP, 6 min recovery
9. Criss-cross / threshold rhythm changes
- Phase
- Pre-season, In-season
- Focus
- Race specificity, FTP development
- Trajectory
- Building, Peaking
- Intensity guideline
- 85–110% FTP alternating
- Typical effort duration
- 10–40 min
- Physiological objective
- Improve rhythm-change tolerance and aerobic resilience
- Main purpose
- Simulate group riding, rolling terrain, and variable climbs
- How it differs
- More dynamic than classic over-unders
- Practical example
- 4 x 10 min alternating 30 sec at 110% FTP and 2 min at 88–90% FTP
10. VO2max intervals
- Phase
- Pre-season, In-season
- Focus
- VO2max development
- Trajectory
- Building, Peaking
- Intensity guideline
- 106–120% FTP
- Typical effort duration
- 2–6 min
- Physiological objective
- Increase maximal oxygen uptake, cardiac output, and high-end aerobic power
- Main purpose
- Raise the aerobic ceiling and improve power above threshold
- How it differs
- High intensity, high RPE, incomplete recovery, strong respiratory load
- Practical example
- 5 x 4 min at 110–115% FTP, 4 min recovery
11. VO2max micro-intervals
- Phase
- Pre-season, In-season
- Focus
- VO2max development, Race specificity
- Trajectory
- Building, Peaking
- Intensity guideline
- 110–130% FTP during ON phases
- Typical effort duration
- 30/30, 40/20, 30/15
- Physiological objective
- Accumulate time near high oxygen uptake while using short recoveries
- Main purpose
- Develop VO2max with intermittent structure
- How it differs
- Less linear than long VO2max intervals; easier to accumulate high-intensity time
- Practical example
- 3 sets of 10 x 30 sec at 120% FTP / 30 sec easy
12. Anaerobic capacity
- Phase
- Pre-season, In-season
- Focus
- Anaerobic capacity, Race specificity
- Trajectory
- Building, Peaking
- Intensity guideline
- 121–150% FTP
- Typical effort duration
- 30 sec–2 min
- Physiological objective
- Improve high-power output above aerobic steady-state and tolerance to acidosis
- Main purpose
- Attacks, steep ramps, short climbs, race-winning moves
- How it differs
- Much more glycolytic than VO2max; requires longer recovery
- Practical example
- 6 x 1 min at 130–140% FTP, 4–5 min recovery
13. Neuromuscular sprint
- Phase
- Off-season, Pre-season, In-season
- Focus
- Neuromuscular power
- Trajectory
- Building, Peaking
- Intensity guideline
- Maximal, often >180% FTP
- Typical effort duration
- 6–15 sec
- Physiological objective
- Improve motor-unit recruitment, peak power, coordination, acceleration
- Main purpose
- Sprinting, jump response, explosive efforts
- How it differs
- Requires freshness; not primarily a metabolic workout
- Practical example
- 8 x 10 sec maximal sprint, 4 min full recovery
14. Repeated sprints
- Phase
- Pre-season, In-season
- Focus
- Neuromuscular power, Anaerobic capacity, Race specificity
- Trajectory
- Building, Peaking
- Intensity guideline
- Maximal or near-maximal
- Typical effort duration
- 10–30 sec
- Physiological objective
- Improve sprint repeatability under fatigue
- Main purpose
- Criteriums, punchy races, bunch finishes
- How it differs
- More glycolytic and fatiguing than isolated sprints
- Practical example
- 3 sets of 5 x 15 sec hard / 45 sec easy
15. SFR / low-cadence muscular endurance
- Phase
- Off-season, Pre-season
- Focus
- Muscular endurance
- Trajectory
- Building, Consolidating
- Intensity guideline
- 80–95% FTP
- Typical effort duration
- 3–8 min
- Physiological objective
- Develop cycling-specific torque and force endurance
- Main purpose
- Climbing, headwind riding, sustained seated power
- How it differs
- Low cadence, high torque; not maximal strength work
- Practical example
- 6 x 5 min at 85–90% FTP, 50–60 rpm
16. On-bike neuromuscular force starts
- Phase
- Off-season, Pre-season, In-season
- Focus
- Neuromuscular power
- Trajectory
- Building, Peaking
- Intensity guideline
- High torque, short duration
- Typical effort duration
- 8–20 sec
- Physiological objective
- Improve recruitment and acceleration from low speed
- Main purpose
- Starts, attacks, gear acceleration
- How it differs
- Shorter and more explosive than SFR
- Practical example
- 8 x 12 sec from low speed in a hard gear, 3 min recovery
17. Cadence / pedaling technique
- Phase
- Off-season, Pre-season, In-season
- Focus
- Technical efficiency
- Trajectory
- Protective, Consolidating
- Intensity guideline
- 50–75% FTP
- Typical effort duration
- 30 sec–10 min drills
- Physiological objective
- Improve coordination, smoothness, and pedaling economy
- Main purpose
- Refine movement quality with low fatigue
- How it differs
- Low metabolic load, high technical focus
- Practical example
- 6 x 3 min at 100–110 rpm in Z2
18. Low-cadence aerobic work
- Phase
- Off-season, Pre-season
- Focus
- Muscular endurance, Aerobic base
- Trajectory
- Building, Consolidating
- Intensity guideline
- 65–85% FTP
- Typical effort duration
- 5–20 min
- Physiological objective
- Improve torque tolerance at aerobic to moderate intensity
- Main purpose
- Climbing endurance, headwind riding
- How it differs
- Less intense than classic SFR, more aerobic
- Practical example
- 3 x 15 min at 75–80% FTP, 60–65 rpm
19. Endurance ride with inserted work
- Phase
- Pre-season, In-season
- Focus
- Aerobic base, FTP development, Race specificity
- Trajectory
- Building, Consolidating
- Intensity guideline
- Z2 plus Z3/Z4 inserts
- Typical effort duration
- 2–5 h
- Physiological objective
- Combine aerobic volume with specific intensity
- Main purpose
- Complete outdoor session with both volume and quality
- How it differs
- The primary load is endurance, with targeted quality blocks
- Practical example
- 3 h Z2 with 3 x 12 min sweet spot
20. Race simulation / race pace
- Phase
- Pre-season, In-season
- Focus
- Race specificity
- Trajectory
- Building, Peaking
- Intensity guideline
- Variable
- Typical effort duration
- 1–4 h
- Physiological objective
- Reproduce the metabolic, pacing, and tactical demands of the target event
- Main purpose
- Prepare for actual race demands
- How it differs
- Not zone-rigid; structure follows the event profile
- Practical example
- 3 h with climbs at 90–100% FTP and short surges above threshold
21. Steady climbing efforts
- Phase
- Pre-season, In-season
- Focus
- FTP development, Muscular endurance, Race specificity
- Trajectory
- Building, Consolidating
- Intensity guideline
- 80–100% FTP
- Typical effort duration
- 10–40 min
- Physiological objective
- Improve pacing, climbing economy, and sustained seated power
- Main purpose
- Granfondo climbs, time-trial-like climbs
- How it differs
- More stable than rhythm-change sessions
- Practical example
- 4 x 12 min uphill at 88–95% FTP
22. Intermittent climbing efforts
- Phase
- Pre-season, In-season
- Focus
- Race specificity, FTP development
- Trajectory
- Building, Peaking
- Intensity guideline
- 85–120% FTP
- Typical effort duration
- 10–30 min
- Physiological objective
- Handle changes in gradient, cadence, and power
- Main purpose
- Irregular climbs and race surges
- How it differs
- Combines torque, cadence variability, and intensity changes
- Practical example
- 3 x 15 min with 1 min at 110% FTP every 4 min
23. Progressive / pyramidal ride
- Phase
- Off-season, Pre-season, In-season
- Focus
- Aerobic base, Muscular endurance, FTP development
- Trajectory
- Building, Consolidating
- Intensity guideline
- 65–100% FTP
- Typical effort duration
- 1–4 h
- Physiological objective
- Build intensity gradually and improve pacing control
- Main purpose
- Develop sustained resistance to fatigue
- How it differs
- Power progressively rises during the ride
- Practical example
- 2 h: 45 min Z2, 40 min tempo, 20 min sweet spot
24. Negative split ride
- Phase
- Pre-season, In-season
- Focus
- Muscular endurance, Race specificity
- Trajectory
- Consolidating, Peaking
- Intensity guideline
- Controlled first half, stronger finish
- Typical effort duration
- 1–5 h
- Physiological objective
- Improve late-ride power and fatigue resistance
- Main purpose
- Prepare for long events where final durability matters
- How it differs
- The key feature is stronger output late in the ride
- Practical example
- 3 h with final hour at 75–85% FTP
25. Openers / pre-race activation
- Phase
- In-season
- Focus
- Race specificity, Neuromuscular power
- Trajectory
- Peaking, Protective
- Intensity guideline
- Short Z4–Z6 efforts
- Typical effort duration
- 40–75 min total
- Physiological objective
- Activate aerobic and neuromuscular systems without adding fatigue
- Main purpose
- Prepare for race or test the next day
- How it differs
- Low volume, high quality, full recoveries
- Practical example
- 1 h with 3 x 1 min at 110% FTP + 3 x 8 sec sprints
26. FTP / performance testing
- Phase
- Off-season, Pre-season, In-season
- Focus
- Performance validation
- Trajectory
- Protective, Consolidating
- Intensity guideline
- Maximal controlled effort
- Typical effort duration
- 5, 8, 20 min, ramp test
- Physiological objective
- Estimate FTP or power-duration profile
- Main purpose
- Update training zones and measure progress
- How it differs
- It is primarily assessment, not ordinary training
- Practical example
- 20 min test; estimated FTP often approximated as 95% of 20 min power
27. Polarized training distribution
- Phase
- Off-season, Pre-season, In-season
- Focus
- Aerobic base, VO2max development
- Trajectory
- Building, Consolidating
- Intensity guideline
- Mostly Z1/Z2 plus limited high intensity
- Typical effort duration
- Weekly structure
- Physiological objective
- Separate low and high intensity clearly
- Main purpose
- Useful in high-volume phases or VO2-focused blocks
- How it differs
- Avoids excessive moderate-intensity work
- Practical example
- 80–90% easy volume, 10–20% intense work
28. Pyramidal training distribution
- Phase
- Off-season, Pre-season, In-season
- Focus
- Aerobic base, FTP development, Muscular endurance
- Trajectory
- Building, Consolidating
- Intensity guideline
- Much Z2, some Z3/Z4, little Z5
- Typical effort duration
- Weekly structure
- Physiological objective
- Develop a broad endurance profile sustainably
- Main purpose
- Common for road and granfondo preparation
- How it differs
- More moderate-intensity work than polarized training
- Practical example
- Week dominated by Z2 plus tempo, sweet spot, or threshold
29. Generic HIIT
- Phase
- Pre-season, In-season
- Focus
- VO2max development, Anaerobic capacity
- Trajectory
- Building, Peaking
- Intensity guideline
- >105% FTP
- Typical effort duration
- 30 sec–5 min
- Physiological objective
- Provide high-intensity stimulus depending on interval design
- Main purpose
- Improve high-intensity performance
- How it differs
- HIIT is not one workout type; duration and recovery define the adaptation
- Practical example
- 40/20, 30/30, or 4 min VO2max intervals
30. Fartlek / free structured intensity
- Phase
- Off-season, Pre-season, In-season
- Focus
- Race specificity, Aerobic base
- Trajectory
- Building, Consolidating
- Intensity guideline
- Variable
- Typical effort duration
- Variable
- Physiological objective
- Improve adaptability and rhythm management
- Main purpose
- Outdoor rides where terrain dictates intensity
- How it differs
- Less rigid, but still needs a clear objective
- Practical example
- 2 h with 10 short climbs ridden hard
31. Brick / combined session
- Phase
- Pre-season, In-season
- Focus
- Race specificity
- Trajectory
- Building, Peaking
- Intensity guideline
- Variable
- Typical effort duration
- Variable
- Physiological objective
- Specificity for multisport or accumulated fatigue contexts
- Main purpose
- Mainly relevant for triathlon
- How it differs
- The transition or combination is part of the stimulus
- Practical example
- Bike Z2 followed by easy run, if training for triathlon
32. Structured deload ride
- Phase
- Off-season, Pre-season, In-season
- Focus
- Recovery
- Trajectory
- Recovery, Protective
- Intensity guideline
- 45–70% FTP, few short activations
- Typical effort duration
- 30 min–2 h
- Physiological objective
- Reduce fatigue, preserve movement quality, support supercompensation
- Main purpose
- Maintain tone while restoring freshness
- How it differs
- Reduced volume and/or intensity
- Practical example
- 60 min easy Z2 with 3 short spin-ups
How to Choose the Right Workout
| Objective | Priority workout types |
|---|---|
| Improve aerobic base | Endurance Z2, long endurance, progressive rides |
| Increase FTP | Sweet spot, threshold, over-unders |
| Improve climbing | Tempo, sweet spot, threshold, SFR, steady climbs |
| Prepare for granfondo | Long Z2, tempo, sweet spot, climbing work, negative split rides |
| Improve VO2max | 4–6 min VO2max intervals, micro-intervals |
| Become more explosive | Sprint, neuromuscular force starts, anaerobic work |
| Handle rhythm changes | Over-unders, criss-cross, anaerobic efforts, race simulation |
| Recover | Active recovery, easy Z1/Z2 |
| Prepare for short and aggressive races | VO2max, anaerobic capacity, repeated sprints |
| Prepare for long events | Endurance, tempo, sweet spot, controlled threshold |
Indoor vs Outdoor Considerations
| Aspect | Indoor | Outdoor |
|---|---|---|
| Power stability | More constant | More variable due to terrain, wind, traffic |
| Cooling | Often worse | Usually better |
| Heart rate | Often higher at same power if cooling is poor | Usually more stable if conditions are moderate |
| RPE | Can be higher indoors | Can be lower due to movement and airflow |
| Cadence | Easier to control | More variable |
| Target adjustment | Indoor power may be 2–5% lower for some athletes | Outdoor target may be slightly easier to achieve |
| Best workout types | Sweet spot, threshold, VO2max, cadence drills | Endurance, climbing, race simulation, over-unders |
Practical Hierarchy
| Level | Workout types | Role |
|---|---|---|
| Base | Recovery, Z2, long endurance | Build aerobic capacity and tolerance to volume |
| Intermediate | Tempo, sweet spot | Bridge volume and intensity |
| Specific | Threshold, over-unders, climbing work | Prepare for sustained race demands |
| High intensity | VO2max, micro-intervals | Raise the aerobic ceiling |
| Very high intensity | Anaerobic capacity, sprint, repeated sprints | Improve attacks, surges, accelerations, and peak power |
| Complementary | SFR, cadence, technical drills | Improve force application and pedaling quality |
| Strategic | Testing, openers, deload | Manage fitness, freshness, and adaptation |
Common Mistakes
| Mistake | Consequence |
|---|---|
| Riding Z2 too hard | Fatigue accumulation, worse recovery, lower quality in key sessions |
| Riding sweet spot as threshold | Excessive stress and reduced sustainability |
| Performing VO2max below target | Becomes high-threshold work and loses specificity |
| Using recoveries that are too short in sprint work | Loss of neuromuscular quality |
| Too many hard sessions in one week | Central and peripheral fatigue, poor repeatability |
| Not updating FTP | Incorrect zones, sessions too easy or too hard |
| Ignoring heart rate and RPE | Poor monitoring of internal load and fatigue |
| Using only HIIT | Insufficient aerobic base |
| Using only Z2 | Good base, but limited high-intensity and race-specific adaptation |
Periodization
How phases, focus, and load trajectory combine — and how to define and verify the target of a training block.
Phases and Focus
A well-designed training plan should not include every workout type every week. The correct approach is to select a limited number of stimuli that match the current phase, athlete profile, and goal.
Phase
| Phase | Meaning |
|---|---|
| Off-season | General preparation, aerobic rebuilding, technical work, strength development, low psychological pressure |
| Pre-season | Progressive build toward event-specific demands, FTP development, VO2max, muscular endurance, structured intensity |
| In-season | Race-specific preparation, maintenance, sharpening, freshness management, tapering, competition support |
A workout can belong to more than one phase depending on how it is prescribed.
Focus
| Focus | Meaning |
|---|---|
| Aerobic base | Development of endurance capacity, fat oxidation, mitochondrial density, capillarization |
| FTP development | Improving sustainable power around threshold |
| Muscular endurance | Ability to sustain force and power under fatigue |
| VO2max development | Increasing high-end aerobic power and oxygen uptake capacity |
| Anaerobic capacity | Improving short-duration high-power efforts above threshold |
| Neuromuscular power | Improving sprint, acceleration, motor-unit recruitment, peak power |
| Race specificity | Reproducing the metabolic and tactical demands of the target event |
| Recovery | Reducing fatigue and supporting adaptation |
| Technical efficiency | Improving cadence control, pedaling economy, and movement quality |
| Performance validation | Testing and assessing training zones or form |
Trajectory
Trajectory describes the dynamic load direction of the workout inside a training plan.
| Trajectory | Meaning |
|---|---|
| Building | Adds progressive training stress and drives adaptation |
| Consolidating | Reinforces an existing adaptation without excessive additional fatigue |
| Peaking | Sharpens performance and race readiness |
| Protective | Maintains fitness while limiting fatigue or risk |
| Recovery | Promotes freshness and adaptation after load |
Periodization by phase
| Phase | Main focus | Typical workouts | Load trajectory |
|---|---|---|---|
| Off-season | Aerobic rebuilding, technical efficiency, strength foundation | Z2, long endurance, cadence drills, low-cadence aerobic work, gym strength if available | Building, Protective, Consolidating |
| Pre-season | FTP development, muscular endurance, VO2max, specific climbing | Sweet spot, threshold, over-unders, VO2max, SFR, progressive rides | Building, Consolidating |
| In-season | Race specificity, freshness, sharpening, maintenance | Race simulation, VO2max, anaerobic work, openers, active recovery, deload | Peaking, Protective, Recovery |
End-of-Block Target: Definition
The end-of-block target is the expected technical outcome at the end of a training block. It does not necessarily mean an FTP increase. It can be a measurable improvement, an achieved average training load, greater tolerance to a specific workload, stabilization of form, or confirmation that the body is absorbing the load well.
The final target links four levels
| Level | Technical question | Example |
|---|---|---|
| Physiological focus | Which quality am I trying to develop? | FTP development, aerobic base, VO2max, durability |
| Load trajectory | What is the direction of the load? | Building, consolidating, peaking, protective, recovery |
| Training prescription | Which sessions and which dose are needed? | 2 key sessions, 40–60' sweet spot TiZ, Z2 volume |
| End-of-block target | How do I verify the result? | FTP +2%, improved TTE, stable average TSS, lower RPE |
End-of-Block Target Types
The types below are not rigid alternatives. In a real block you can combine one primary target with secondary targets, but the priority must remain clear.
1. Performance target: absolute FTP or percentage increase
- Definition
- A target expressed as final FTP value, percentage increase, or estimated improvement in sustainable power.
- Examples
- FTP 280 → 288 W, FTP +2–3%, +5 W, 4.2 → 4.3 W/kg.
- How to reach it
- Progression through sweet spot, threshold, over-under, sub-threshold tempo, and recovery control. The block should accumulate useful time close to threshold without degrading quality.
- When to use it
- Pre-season, FTP build, threshold development phase, stable athlete with updated FTP.
- Limits
- Over 3–6 weeks, a clear FTP increase is not always realistic. Sometimes tolerance at the same FTP improves before the numerical value does.
2. Time-to-Exhaustion target: sustainable duration at FTP
- Definition
- Improvement in the ability to sustain power close to FTP for longer.
- Examples
- FTP unchanged, TTE 35' → 45', 2 x 20' at 95–100% more stable.
- How to reach it
- Progression of long intervals: 3 x 12', 3 x 15', 2 x 20', 1 x 35–45' at sweet spot / low threshold.
- When to use it
- Gran fondo, long climbs, uphill time trials, riders with good FTP but limited durability.
- Limits
- Requires precise pacing, RPE, and HR drift control. It can improve without an immediate FTP change.
3. Average weekly TSS target: average weekly load
- Definition
- A target expressed as average TSS across the block or across the build weeks.
- Examples
- average_weekly_tss: 420, build weeks 380 → 410 → 440.
- How to reach it
- By increasing volume, density, key-session duration, or a combination of endurance and intensity. Progression should remain controlled, ideally +5–8% if average RPE and quality are good.
- When to use it
- Base phase, general build, load monitoring, blocks targeting tolerance to volume.
- Limits
- TSS does not perfectly distinguish between long Z2 stress, threshold, VO2max, and anaerobic work. Two weeks with the same TSS can have very different physiological impact.
4. Volume target: weekly hours or total duration
- Definition
- A target based on total hours, long-ride duration, or training frequency.
- Examples
- 8 h/week → 10 h/week, long ride 3h → 4h, 5 rides/week stable.
- How to reach it
- By increasing easy volume first, then adding intensity only if appropriate. Weekly sustainability is the priority.
- When to use it
- Off-season, aerobic base, gran fondo preparation, progressive return to training.
- Limits
- More hours do not automatically mean more adaptation. If key-session quality drops, the volume is excessive.
5. Time in Zone target: minimum effective dose at target %FTP
- Definition
- The amount of time accumulated in the zone specific to the physiological focus.
- Examples
- sweet spot TiZ 90–140'/week, VO2max TiZ 15–25'/session, Z2 5–8 h/week.
- How to reach it
- By progressively increasing interval duration, number of repetitions, or frequency of key sessions.
- When to use it
- Almost always. It is often more informative than session IF or TSS alone.
- Limits
- Time in Zone must be contextualized: 40' of sweet spot is not equivalent to 40' of over-under or 40' of VO2max.
6. Quality execution target: interval and workout quality
- Definition
- A target based on execution stability: power, cadence, pacing, RPE, recoveries, and minimal degradation.
- Examples
- all intervals within ±3%, last rep not below target, RPE ≤8 in sweet spot.
- How to reach it
- Through prudent progressions, adequate recoveries, and freshness control before key sessions.
- When to use it
- Threshold, VO2max, over-under, race-specific workouts, technical blocks.
- Limits
- It does not always directly measure physiological improvement, but it is an excellent indicator of readiness and load absorption.
7. Aerobic efficiency target: power–heart rate efficiency
- Definition
- Improvement in the relationship between power, heart rate, and RPE at aerobic intensity.
- Examples
- HR drift <5–6%, same Z2 watts with lower HR, Z2 RPE 5 → 4.
- How to reach it
- Consistent Z2 volume, long-ride progression, indoor heat control, recovery, and stable pacing.
- When to use it
- Off-season, aerobic base, endurance preparation, return after a break.
- Limits
- Heart rate is influenced by heat, sleep, stress, caffeine, hydration, indoor ventilation, and accumulated fatigue.
8. Durability target: power retention in the second half
- Definition
- The ability to produce target power after accumulated fatigue.
- Examples
- final hour at 75–85% FTP, sweet spot after 2h Z2, controlled negative split.
- How to reach it
- Long endurance, tempo finishes, climbs in the second half, and progressive insertion of specific work after volume.
- When to use it
- Gran fondo, long races, final climbs, events with accumulated elevation gain.
- Limits
- It requires time availability. It should not be confused with riding hard at the end of every session.
9. Race-specific target: event specificity
- Definition
- A target built around the real demands of the race or event.
- Examples
- 3 climbs at 90–100% FTP, repeat surges after threshold, openers effective without fatigue.
- How to reach it
- Race simulations, over-under work, specific climbs, endurance with inserted efforts, tapering, and sharpening.
- When to use it
- Advanced pre-season and in-season, especially 3–8 weeks before an event.
- Limits
- Too much specificity too early reduces the space available to build base and general capacities.
10. Readiness / freshness target: final freshness
- Definition
- A target aimed at arriving ready, not necessarily more loaded.
- Examples
- RPE normalized, legs responsive, key efforts sharp, no TSS increase.
- How to reach it
- Load reduction, maintenance of short intense reminders, volume reduction, preservation of cadence and sharpness.
- When to use it
- Peaking, taper, race week, after an intense block.
- Limits
- It is not a construction target. Trying to increase TSS during a peak compromises freshness.
11. No-numeric target: consolidation
- Definition
- A target without a direct numerical increase, aimed at stabilizing adaptations and reducing variability.
- Examples
- maintain 1–2 key sessions, same load with lower RPE, repeatability improved, no increase in TSS.
- How to reach it
- Stable load, high quality, reduction of unnecessary spikes, controlled recovery, and well-executed key sessions.
- When to use it
- After a build phase, after an FTP increase, in-season, weeks with high work stress or risk of accumulation.
- Limits
- It is hard to evaluate unless you define precise qualitative indicators. "Consolidating" does not mean training randomly.
Target Hierarchy
Not all targets have the same role. Some are final outcomes, others are tools, and others are safety constraints. A good structure distinguishes between outcome target, process target, and guardrail target.
| Category | Meaning | Examples | Correct use | Common mistake |
|---|---|---|---|---|
| Outcome target | The final result you want to observe | FTP +2%, TTE +10', lower RPE at same watts | End-of-block evaluation | Expecting it in every block |
| Process target | The training behavior required | 2 key sessions/week, 120' sweet spot TiZ, 4h long ride | Weekly control | Confusing it with the final adaptation |
| Load target | The planned amount of stress | average_weekly_tss, weekly hours, IF profile | Load management | Chasing TSS without quality |
| Quality target | Execution quality | stable intervals, correct pacing, target cadence | Key-session analysis | Looking only at final NP |
| Guardrail target | Safety and recovery limit | average RPE <7, HR drift <6–8%, no interval collapse | Build/deload decision | Ignoring fatigue signals |
How to Reach a Target
| Step | Question | Technical output |
|---|---|---|
| 1. Baseline | Where am I starting from? | FTP, recent hours, average TSS, workout quality, RPE, HR, limitations |
| 2. Focus | Which quality do I want to develop? | Aerobic base, FTP development, VO2max, durability, race specificity |
| 3. Primary target | What should the block produce? | FTP, TTE, average TSS, TiZ, consolidation, readiness |
| 4. Minimum dose | What is the minimum effective stimulus? | Time at target %FTP, number of key sessions, progressive duration |
| 5. Progression | How should load increase? | +5–8% TSS if RPE is controlled, TiZ increase, long-ride extension |
| 6. Guardrail | When should I stop or reduce? | Excessive RPE, HR drift, intervals below target, sleep/stress, pain or abnormal signals |
| 7. Review | Did the block work? | Evaluation of outcome, quality, load absorption, and next trajectory |
Typical progression for an FTP target
ftp_development_block:
target:
primary: FTP +2-3% or improved TTE at current FTP
secondary: stable RPE and interval quality
weekly_structure:
W1: 2 key sessions, moderate TiZ
W2: increase TiZ or interval duration
W3: highest specific load
W4: deload/recovery
guardrails:
- if threshold intervals fail twice: reduce load or check FTP
- if RPE >8 in Z2/Z3 repeatedly: reduce volume
- if HR drift >6-8% in Z2: monitor fatigue and recoveryTypical progression for an aerobic base target
aerobic_base_block:
target:
primary: increased weekly Z2 volume or improved aerobic efficiency
secondary: stable long ride durability
progression:
- extend Z2 duration
- keep intensity controlled
- add tempo only if recovery is stable
success_markers:
- lower RPE at same watts
- lower or more stable HR
- long ride completed without late power collapseMetrics and Controls
A final target is robust only if it is evaluated through multiple metrics. Power is central, but not sufficient on its own.
| Metric | What it measures | Useful for | Limit |
|---|---|---|---|
| FTP | Reference sustainable power | Zones, threshold, performance progress | Depends on the test, freshness, and specificity |
| TSS | External stress estimated from duration and intensity | Weekly load and progression | Does not describe stress type well |
| IF | Normalized session intensity | Session density | Can underestimate perception in HIIT or nervous races |
| NP | Normalized Power | Variable outdoor sessions and races | Does not replace interval analysis |
| Time in Zone | Time accumulated in the target zone | Specific stimulus dose | Must be interpreted according to workout type |
| RPE | Perceived exertion | Internal load, readiness, anomalies | Subjective, but very useful when tracked consistently |
| Heart rate | Internal cardiovascular response | Aerobic efficiency, fatigue, drift | Sensitive to heat, stress, sleep, and ventilation |
| HR drift | Drift between power and HR over time | Z2, endurance, accumulated fatigue | Requires a stable session and comparable conditions |
| Interval quality | Stability of intervals | Threshold, VO2max, over-under, sprint work | Must be evaluated together with context and recovery |
Targets by Physiological Focus
| Physiological focus | Recommended primary target | Secondary targets | How to reach it | When it is successful |
|---|---|---|---|---|
| Aerobic base | Z2 volume or aerobic efficiency | Controlled HR drift, stable long ride | Progressive Z2, long ride, limited intensity | More hours absorbed with stable or lower RPE |
| Tempo durability | Total Z3 time or stronger finish | Negative split, second-half durability | Tempo blocks, endurance with inserts, medium climbs | Stable power without excessive perceptual drift |
| FTP development | FTP +%, TTE, or threshold quality | Sweet spot TiZ, threshold TiZ, controlled RPE | Sweet spot, threshold, over-under | More power or longer duration near FTP |
| LT2 tolerance | Ability to stay near/above threshold | Over-under stability, recovery between blocks | Over-under, criss-cross, threshold repeats | Less drop-off during above-threshold segments |
| VO2max development | Effective time at 106–120% FTP | Final-rep quality, coherent RPE | 4–6' intervals, micro-intervals, adequate recoveries | Intervals completed without power collapse |
| Anaerobic capacity | Repeatability of 30"–2' efforts | Recovery between efforts, interval average power | Z6 intervals, long recoveries, limited volume | High power repeated with controlled degradation |
| Neuromuscular power | Peak power or sprint quality | Freshness, coordination, cadence | Short sprints, full recoveries, low total fatigue | Improved peak power or acceleration |
| Race specificity | Simulation of event demands | Pacing, climbs, surges, finish | Workouts specific to event terrain and intensity | More stable and realistic rhythm management |
| Consolidation | Maintain load without increasing it | Lower RPE, constant quality, no accumulation | Same structure, less progression, high precision | The same work feels more sustainable |
| Recovery / protective | Reduce fatigue and restore readiness | Normalized RPE, easy Z2, responsive legs | Reduced volume, controlled intensity, light reminders | Quality returns without forcing load |
Limits, Risks, and Wrong Interpretations
FTP does not always increase at block end
A block can be successful even with unchanged FTP if TTE, interval stability, recovery between sessions, or tolerance to volume improves.
TSS is not quality
Chasing average TSS can lead to too much "grey-zone" work: hard enough to create fatigue, not specific enough to stimulate the focus.
IF does not identify workout type
A sweet spot session and a VO2max session can have similar IF, but very different stress and RPE. Structure and Time in Zone must always be checked.
The target must respect the phase
In the off-season, it makes sense to build base and general capacity. In-season, it is often more useful to maintain, sharpen, or arrive fresh.
Common mistakes
| Mistake | Consequence | Correction |
|---|---|---|
| FTP target in every block | Unrealistic expectations and excessive load | Alternate build, consolidate, recovery, and race specificity |
| Average TSS as the only goal | Volume without physiological direction | Always pair TSS with focus and TiZ |
| Consolidation without criteria | Vague block, hard to evaluate | Define quality, RPE, key sessions, and guardrails |
| Target too aggressive | Failed intervals, chronic fatigue, worse adaptation | Reduce dose, stabilize, then progress |
| Ignoring RPE and HR | External load looks fine while internal stress is high | Use RPE, HR drift, and quality as controls |
End-of-Block Decision Rules
| End-of-block result | Interpretation | Recommended next trajectory |
|---|---|---|
| Target achieved, RPE controlled, quality high | Load absorbed well | BUILD or CONSOLIDATE |
| Target achieved but RPE very high | Possible adaptation, but high cost | CONSOLIDATE or DELOAD |
| FTP unchanged but TTE/quality improved | Successful block in terms of sustainability | CONSOLIDATE, then new BUILD |
| TSS achieved but intervals worsened | Quantitative load too high or poorly distributed | Reduce volume or redefine key sessions |
| High RPE in Z2/Z3 for two or more sessions | Possible accumulated fatigue | DELOAD/RECOVERY |
| Intervals systematically below target | FTP may be overestimated or fatigue excessive | Recovery + FTP check or target reduction |
| High IF with unusually low RPE | FTP may be underestimated or form is improving | Consider testing or updating zones |
| Race event approaching | Freshness and specificity take priority | PEAK / TAPER |
Synthetic rule
if target_reached and fatigue_controlled: next_trajectory = BUILD or CONSOLIDATE elif target_reached and fatigue_high: next_trajectory = CONSOLIDATE or DELOAD elif target_not_reached and fatigue_high: next_trajectory = DELOAD/RECOVERY + reassess FTP/load elif target_not_reached and fatigue_low: next_trajectory = repeat_block_with_adjusted_dose elif race_near: next_trajectory = PEAK/TAPER
Reference Schema (YAML)
This structure allows you to define numerical, qualitative, and control targets in one place.
end_of_block_target:
primary:
type: ftp | tte | average_weekly_tss | weekly_volume | time_in_zone | race_specific | consolidation | readiness
value: null
unit: W | % | min | h | TSS | qualitative
description: ""
secondary:
- type: interval_quality
value: "all key intervals completed within target range"
- type: rpe_control
value: "RPE coherent with IF and workout focus"
- type: aerobic_efficiency
value: "HR drift controlled during Z2"
minimum_effective_dose:
key_sessions_per_week: 1-2
target_time_in_zone: ""
target_intensity: "%FTP range"
progression_rule: "+5-8% weekly TSS only if fatigue markers are controlled"
guardrails:
max_rpe_easy_sessions: 6
max_hr_drift_z2: "6-8%"
failed_key_sessions_threshold: 2
deload_trigger:
- repeated high RPE in Z2/Z3
- interval quality collapse
- unexplained fatigue
- HR drift above expected range
review:
outcome_status: achieved | partially_achieved | not_achieved
load_absorption: good | moderate | poor
next_trajectory: build | consolidate | peak | protective | recoveryExample: FTP development block
end_of_block_target:
primary:
type: ftp_or_tte
value: "FTP +2% or TTE +10 min at 95-100% FTP"
unit: mixed
description: "Improve sustainable power or extend duration at current threshold"
secondary:
- type: time_in_zone
value: "90-150 min/week sweet spot + threshold combined"
- type: interval_quality
value: "no systematic drop in final intervals"
- type: rpe_control
value: "threshold RPE 8-9, sweet spot RPE 7-8"
minimum_effective_dose:
key_sessions_per_week: 2
target_intensity: "88-105% FTP"
progression_rule: "increase TiZ before increasing intensity"
guardrails:
failed_key_sessions_threshold: 2
deload_trigger:
- "Z2 rides perceived as RPE >=7"
- "threshold work below target twice"
- "HR drift above 6-8% in controlled endurance"Example: consolidation block
end_of_block_target:
primary:
type: consolidation
value: "no numeric increase"
unit: qualitative
description: "Maintain current load and key sessions with lower internal cost"
secondary:
- type: rpe_control
value: "same workouts with equal or lower RPE"
- type: interval_quality
value: "all key sessions completed without power fade"
- type: readiness
value: "fresh enough to enter next build block"
minimum_effective_dose:
key_sessions_per_week: 1-2
target_intensity: "according to physiological focus"
progression_rule: "no TSS increase; stabilize execution"
guardrails:
deload_trigger:
- "RPE rises despite stable load"
- "sleep/stress markers worsen"
- "quality declines in repeated sessions"Final Checklist
Before the block
- FTP updated or at least confirmed.
- Physiological focus defined.
- Trajectory coherent: build, consolidate, peak, protective, or recovery.
- Primary target clear and realistic.
- Minimum effective dose defined as Time in Zone or key sessions.
- Explicit guardrails for RPE, HR drift, and quality.
After the block
- Primary target achieved, partially achieved, or not achieved.
- Key-session quality evaluated.
- RPE coherent with IF and intensity.
- HR drift and internal response considered.
- Load absorbed or excessive.
- Next trajectory decided from the data.
Recovery & Readiness
The metrics that describe recovery state and the flags that signal fatigue, mismatch, or interference.
Recovery Metrics
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| daily_readiness | Rule-based from load_ratio, session_evaluation, strength impact, and feedback. | Decides green/yellow/red. | Depends on input quality. |
| sleep_quality | Manual 1–5 or wearable. | Context for fatigue and performance. | Wearables are not always precise. |
| muscle_fatigue | Manual input 1–5. | Local leg fatigue. | Subjective but useful if tracked consistently. |
| perceived_stress | Manual input 1–5. | Extra-training context. | Does not directly measure performance. |
| HRV | Wearable or dedicated app. | Autonomic state and general recovery. | Requires consistent measurement. |
| resting_hr | Wearable, chest strap, or manual morning value. | Changes may indicate stress/fatigue. | Should not be interpreted alone. |
| strength_systemic_impact | Post-strength input: low, moderate, high. | Strength-bike interference and readiness. | Qualitative but very useful. |
| soreness_risk | Estimated from strength session or feedback. | Protects key sessions from DOMS/fatigue. | Not always predictable. |
Fatigue Flags
Compact flags used to highlight risk, load-perception mismatch, or interference between strength and bike training.
| Flag | Trigger | Description |
|---|---|---|
| high_rpe_low_if | High RPE with low/moderate IF | Possible residual fatigue, heat stress, poor recovery, or overestimated FTP. |
| failed_key_session | Key session classified as failed | Key session not centered; may require an adjust intervention. |
| load_ratio_risk | r > 1.2 | Load accumulation relative to baseline. |
| strength_interference | Moderate/high strength systemic impact close to a key bike session | Possible interference of strength training with bike-session quality. |
| above_target_load | weekly_gap_tss ≥ +10% weekly_tss_target | Weekly load above target; compensation is disabled. |
| under_target_load | weekly_gap_tss ≤ -10% weekly_tss_target | Weekly load below target; load recovery allowed only if readiness permits. |
Analytics
Aggregate statistics for the mesocycle and microcycle, and the charts that make them readable.
Mesocycle Stats
Aggregate statistics used to evaluate block progression, load, specific dose, and execution quality across the full mesocycle.
| Stat | Calculation / Source | Description |
|---|---|---|
| operational_objective | LLM-generated from phase + focus + trajectory | Summary of the operational objective of the mesocycle. |
| weekly_tss_target | Planned weekly TSS | Planned TSS target for each week of the mesocycle. |
| weekly_tss_completed | sum(actual_tss) per week | Actual TSS completed during the week. |
| weekly_tss_completion_pct | (weekly_tss_completed / weekly_tss_target) * 100 | Percentage completion of the planned weekly load. |
| weekly_gap_tss | weekly_tss_completed - weekly_tss_target | Absolute difference between completed TSS and target TSS. |
| remaining_weekly_tss | max(weekly_tss_target - weekly_tss_completed, 0) | Remaining TSS required to reach the weekly target, without negative values. |
| weekly_tss_delta_pct | ((current_week_tss - previous_week_tss) / previous_week_tss) * 100 | Percentage change in load between weeks. |
| key_tss_planned_vs_actual_cumulative | sum(actual_key_tss) vs sum(planned_key_tss) | Cumulative adherence to planned key-session TSS across the mesocycle. |
| key_session_adherence_pct | (completed_key_sessions / planned_key_sessions) * 100 | Percentage of planned key sessions completed. |
| focus_stimulus | From physiological_focus | Main physiological stimulus of the block. |
| planned_minutes_at_target_pct_ftp | Sum of planned target-zone minutes | Planned minutes in the target zone for the block focus. |
| actual_minutes_at_target_pct_ftp | Manual or estimated | Actual minutes performed in the target zone. |
| actual_minutes_source | manual / estimated_from_completed_workout / unavailable | Indicates the reliability/source of the actual dose. |
| stimulus_dose_completion_pct | (actual_minutes_at_target_pct_ftp / planned_minutes_at_target_pct_ftp) * 100 | Percentage completion of the specific physiological dose. |
| centered_pct | (centered_sessions / total_sessions) * 100 | Percentage of sessions executed as centered. |
| partially_centered_pct | (partially_centered_sessions / total_sessions) * 100 | Percentage of sessions executed as partially centered. |
| failed_pct | (failed_sessions / total_sessions) * 100 | Percentage of failed sessions. |
| weekly_avg_session_duration | total_weekly_duration / completed_sessions | Average duration of weekly sessions. |
| progress_outlook | LLM-generated | Analysis of mesocycle trend, coherence, risks, and projection. |
Microcycle Stats
Weekly statistics used to monitor adherence, actual load, physiological dose, readiness, and short-term risk.
| Stat | Calculation / Source | Description |
|---|---|---|
| operational_objective | LLM-generated from mesocycle context | Operational objective of the week. |
| weekly_tss_target | Planned weekly TSS | Planned TSS target for the microcycle. |
| weekly_tss_completed | sum(actual_tss) | Sum of actual TSS from completed sessions. |
| weekly_tss_completion_pct | (weekly_tss_completed / weekly_tss_target) * 100 | Percentage completion of the planned weekly load. |
| weekly_gap_tss | weekly_tss_completed - weekly_tss_target | Difference between completed load and planned load. |
| remaining_weekly_tss | max(weekly_tss_target - weekly_tss_completed, 0) | Remaining TSS available to reach the weekly target. |
| planned_weekly_tss_delta_pct | ((current_weekly_tss_target - previous_weekly_tss_target) / previous_weekly_tss_target) * 100 | Planned progression compared with the previous week. |
| completed_weekly_tss_delta_pct | ((current_weekly_tss_completed - previous_weekly_tss_completed) / previous_weekly_tss_completed) * 100 | Actual progression compared with the previous week. |
| key_tss_planned_vs_actual_per_week | actual_key_tss vs planned_key_tss | Execution accuracy of key-session TSS during the week. |
| key_session_adherence_pct | (completed_key_sessions / planned_key_sessions) * 100 | Percentage of key sessions completed in the microcycle. |
| stimuli_present | From planned workouts | Training stimuli present during the week: endurance, threshold, VO2max, etc. |
| planned_minutes_at_target_pct_ftp | Sum of planned target-zone minutes | Planned specific dose in the target zone. |
| actual_minutes_at_target_pct_ftp | Manual or estimated | Specific dose actually completed. |
| actual_minutes_source | manual / estimated_from_completed_workout / unavailable | Source of actual target-zone minutes. |
| stimulus_dose_completion_pct | (actual_minutes_at_target_pct_ftp / planned_minutes_at_target_pct_ftp) * 100 | Adherence to the weekly physiological dose. |
| daily_tss | actual_tss per session/day | Actual daily training load completed. |
| estimated_tss | Planned session estimate | TSS estimated before the session. |
| weekly_weighted_avg_if | Weighted average by duration or TSS | Weighted weekly IF, used as a descriptive indicator of density. |
| load_ratio | acute_tss_7d / baseline_tss_4w | Ratio between acute load and 4-week average baseline. |
| daily_readiness | From readiness system | Daily green/yellow/red readiness status. |
| fatigue_flags | Rule-based | Attention signals: high RPE, failed session, load risk, strength interference. |
| weekly_outlook | LLM-generated | Analysis of weekly trend, risks, and end-of-week indications. |
Recommended Charts
Useful visualizations for the weekly dashboard and mesocycle dashboard.
| Chart | Data | Purpose |
|---|---|---|
| weekly_tss_target_vs_completed | Target vs completed TSS per week | Visualize load adherence and deload weeks. |
| quality_execution_stacked_bar | centered / partially_centered / failed per week | Visualize execution quality across the block. |
| stimulus_dose_tracking | planned vs actual minutes at target %FTP | Verify whether the physiological focus was actually trained. |
| daily_tss_trend | daily actual TSS vs estimated TSS | Understand load distribution within the microcycle. |
| readiness_trend | daily readiness + load_ratio | Connect load, fatigue, and adjust decisions. |
Advanced Metrics
Deeper performance, physiological, technical, and contextual data — plus how to keep the system usable with manual input.
Advanced Performance Metrics
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| durability_index | Comparison of power/efficiency in the first vs second part or after accumulated fatigue. | Performance retention in long rides. | Requires comparable conditions. |
| fatigue_resistance | Power maintained after accumulated work, e.g. after 1500 kJ. | Gran fondo and long-race performance. | Requires detailed historical data. |
| W_prime / W′ | Model of available work above critical power. | Above-threshold analysis, attacks, finales. | Requires accurate modeling. |
| critical_power / CP | Estimated from multiple tests over different durations. | Alternative/complement to FTP. | Requires specific protocols. |
| anaerobic_work_capacity | Estimated capacity for work above CP/FTP. | Anaerobic profile and repeatability. | Depends on model used. |
| aerodynamic_proxy | Speed relative to power on similar terrain, or CdA estimates. | Flat-road, TT, position analysis. | Requires control of wind/gradient/rolling resistance. |
| repeatability_index | Comparison between intervals in the same workout. | Execution quality and fatigue resistance. | Requires clear interval structure. |
Heart Rate Analysis
Heart rate measures the internal cost of effort. It is most useful when interpreted together with power and RPE.
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| heart_rate | Chest strap or optical sensor. | Real-time cardiovascular response. | Chest strap is usually more reliable. |
| average_hr | Average HR during the session. | Summary of internal load. | May hide peaks and drift. |
| max_hr | Highest recorded HR. | Races and high-intensity work. | May contain sensor errors. |
| hr_drift | HR increase at stable power over time. | Aerobic stability and fatigue. | Requires stable conditions. |
| decoupling | Change in power/HR relationship between first and second half. | Useful in Z2 and long endurance rides. | Affected by heat, hydration, and indoor/outdoor conditions. |
| efficiency_factor / EF | NP / average_HR. | Estimate of aerobic efficiency. | Comparable only under similar conditions. |
| hr_recovery | HR drop 1–2 minutes after an effort. | Acute recovery after intervals. | Not a clinical assessment. |
| hr_response_delay | HR lag relative to power changes. | Helps interpret short intervals. | Not useful to guide sprints. |
RPE and Perception
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| RPE | Athlete input on a 1–10 scale. | Global perception of effort. | Must be read with IF, session_type, and context. |
| session_RPE_load | duration_minutes × RPE. | Simple internal load estimate. | Less specific than TSS. |
| load_perception | Comparison between real IF and expected RPE. | Classifies coherent, over_perceived, under_perceived. | VO2max/anaerobic require session-aware interpretation. |
| high_rpe_low_if | High RPE with low/moderate IF. | Flag for residual fatigue or unfavorable conditions. | Not a diagnosis. |
| low_rpe_high_if | Low RPE with high IF. | Possible underestimated FTP or very good day. | Should be verified across sessions. |
| interval_RPE | RPE for blocks or individual intervals. | Quality of threshold, VO2max, and over-under work. | Requires detailed input. |
Cadence, Torque, and Technique
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| cadence | Cadence sensor, power meter, or smart trainer. | Pedaling RPM; useful for technique, low-cadence work, sprint, endurance. | There is no single ideal cadence. |
| average_cadence | Average RPM. | Controls technical target. | Average hides different phases. |
| cadence_distribution | Time spent in RPM ranges. | Dose of high-cadence or low-cadence work. | Requires continuous cadence data. |
| torque | Estimated from power and angular pedaling velocity. | Specific strength and low-cadence work. | Requires accurate power/cadence data. |
| low_cadence_time | Time below an RPM threshold, e.g. <65 rpm. | Dose of SFR / strength endurance. | Must be contextualized with power and gradient. |
| left_right_balance | Dual-sided power meter. | Left/right power distribution. | Do not make clinical interpretations. |
| pedal_smoothness | Advanced power meter metric. | Pedaling fluidity. | Does not always translate into performance. |
| torque_effectiveness | Advanced power meter metric. | Useful torque in the pedal stroke. | Technical indicator, not an absolute truth. |
Energy, Work, and Metabolism
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| work_kj | average_power × duration_seconds / 1000. | Total mechanical work produced. | Requires reliable average power. |
| estimated_kcal | Estimate from kJ, power, and device models. | Rough indicator of energetic cost. | Not a precise measurement of real calories. |
| energy_per_hour | work_kj / duration_hours. | Mechanical work density. | Similar to average power expressed over time. |
| work_above_threshold | Energy or time above FTP/threshold. | Races, VO2max, anaerobic, over-under work. | Requires detailed data. |
| carbohydrate_demand_proxy | Qualitative estimate from duration, intensity, and zones. | Helps understand general fuel demand. | Not clinical nutrition prescription. |
Environment and Conditions
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| temperature_c | Weather, sensor, or manual input. | Interprets high HR, high RPE, and performance drop. | Perceived temperature may differ, especially indoors. |
| humidity_pct | Weather or environmental sensor. | Affects heat dissipation and perception. | Read together with temperature and ventilation. |
| wind_speed_kmh | Weather or local estimate. | Explains low speed and variable power outdoors. | Actual wind on route can vary greatly. |
| indoor_outdoor | Session input or environment detection. | Indoor sessions may raise HR/RPE at same watts. | Depends on ventilation and cooling. |
| surface_type | Manual or route-based: road, gravel, MTB. | Explains variability in power/cadence/speed. | Hard to fully automate. |
| traffic_interruptions | Notes or stop/start analysis. | Explains inability to hold targets outdoors. | Often qualitative. |
GPS, Speed, Distance, and Elevation
| Data / Statistic | Detection / Calculation | Usefulness | Limits / Notes |
|---|---|---|---|
| gps_track | GPS coordinates. | Route, segments, distance, elevation. | Variable precision in cities, forests, tunnels. |
| speed | GPS or wheel sensor. | Instantaneous speed. | Not a reliable proxy for intensity. |
| average_speed | distance / moving_time or total time. | General outdoor description. | Affected by wind, drafting, traffic, gradient. |
| segment_time | Time over a defined route segment. | Analysis of climbs or specific sections. | Must be contextualized for wind/drafting. |
| elevation_gain | Barometric altimeter or GPS. | Total positive elevation gain. | Pure GPS may be inaccurate. |
| gradient | elevation_change / distance × 100. | Slope of a section. | Noisy over short sections. |
| VAM | meters_climbed / hours. | Average climbing speed. | Depends on gradient, altitude, wind, and duration. |
| climbing_w_kg | Climbing power / body mass. | Climb-specific performance. | Does not include bike mass and external conditions. |
Manual Data Collection
Without Garmin/Strava integration, the system remains usable if the athlete enters a few essential data points.
| Required data | Priority | Use | Fallback / Notes |
|---|---|---|---|
| duration | Mandatory | Base for volume and estimated TSS. | Effective session minutes. |
| actual_np | High | IF and TSS calculation. | If missing, use estimated IF from workout. |
| actual_avg_power | High | kJ calculation and comparison with NP. | Needed for mechanical work. |
| actual_tss | High but derivable | Effective session load. | If missing: duration_hours × IF² × 100. |
| actual_rpe | Mandatory | Internal load and IF–RPE review. | Essential without integrations. |
| interval_quality | High for key sessions | Classifies centered / partially_centered / failed. | Good, acceptable, poor. |
| athlete_notes | Recommended | Explains anomalies. | Short free-text note. |
| strength_systemic_impact | Mandatory if strength was planned | Readiness and adjust. | Low, moderate, high. |
Data Priority
| Priority | Data | Why they matter | Fallback if missing |
|---|---|---|---|
| 1 | FTP, duration, NP/IF, TSS, RPE | They enable load, intensity, and perception analysis. | Estimated IF from session_type and actual duration. |
| 2 | Time in Zone, interval quality, actual minutes at target | They verify the physiological stimulus. | Estimate from completed workout structure. |
| 3 | Average HR, max HR, HR drift, decoupling | They monitor internal response and aerobic fatigue. | Use RPE and athlete notes. |
| 4 | Cadence, torque, pedal metrics | Technical analysis and specific strength. | Execution cues and subjective feedback. |
| 5 | GPS, speed, distance, elevation | Route context and climbing specificity. | Manual route description. |
| 6 | Sleep, stress, HRV, weather | They contextualize readiness and performance. | Simple manual input. |