TSS (Training Stress Score)
Training Stress Score (TSS) is a numerical measure of the physiological stress imposed by a cycling workout, calculated from the workout's duration and power relative to the athlete's Functional Threshold Power (FTP). Developed by Dr. Andrew Coggan and Hunter Allen, TSS is the primary training load metric in power-based cycling training and the foundation of the CTL/ATL/TSB fitness and fatigue model.
Deeper Explanation
TSS provides a single number that captures both how hard a workout was (intensity) and how long it lasted (duration), weighted against your personal FTP as the reference for "maximum sustainable effort."
The TSS formula:
TSS = (Duration in seconds × Normalized Power × Intensity Factor) / (FTP × 3600) × 100
Where:
- Normalized Power (NP) is a weighted average of power that accounts for the metabolic cost of variable effort. It weights harder efforts more heavily than equivalent steady efforts, because intermittent high-intensity work is physiologically more costly than the same average power sustained steadily.
- Intensity Factor (IF) = Normalized Power ÷ FTP. An IF of 1.0 means the workout average was equivalent to FTP; 0.75 means it was an endurance-paced ride.
- 3600 converts the hourly FTP reference to a per-second basis.
A perfectly executed 1-hour all-out time trial at exactly FTP yields a TSS of 100 — the benchmark. All other workout types are scaled against this reference.
Practical TSS benchmarks:
- TSS 20–50: Easy recovery or short endurance ride. Negligible fatigue.
- TSS 50–100: Moderate training session. Manageable with standard recovery.
- TSS 100–150: Substantial workout. Expect 24–36 hours for full recovery.
- TSS 150–250: Large training day (long endurance ride + intensity, or very long event). 36–72 hours recovery.
- TSS 250+: Very large day — gran fondo, century ride, or major event. Multi-day recovery.
Weekly TSS ranges:
- Recreational cyclists: 150–350 TSS/week
- Trained enthusiasts: 350–600 TSS/week
- Competitive amateurs: 600–900 TSS/week
- Professional cyclists: 900–1500+ TSS/week
How TSS Relates to Training
TSS is the input metric for the Fitness/Fatigue model (sometimes called the Performance Manager Model), which tracks three rolling averages:
CTL (Chronic Training Load / Fitness): A 42-day exponentially weighted average of daily TSS. Represents your current trained state. Rising CTL = building fitness.
ATL (Acute Training Load / Fatigue): A 7-day exponentially weighted average of daily TSS. Rises quickly with hard training, falls quickly with rest. Represents current accumulated fatigue.
TSB (Training Stress Balance / Form) = CTL − ATL. Positive TSB means you are fresher than your baseline fitness level (good for racing). Negative TSB means you are carrying more fatigue than your fitness level (good for training adaptation). For most athletes, a TSB of −10 to −30 is the optimal training state; TSB of +5 to +20 is optimal for race day performance.
This model enables athletes to objectively plan training blocks and tapers, quantify the fitness cost of missing training, and identify periods of excessive load before overtraining symptoms appear.
How Fitiv Uses TSS
Fitiv Pulse calculates TSS automatically for any cycling workout that includes power data — from a connected power meter (Garmin, Wahoo, Stages, Favero, etc.) or a smart trainer. The calculation requires a current, accurate FTP value stored in your Fitiv profile.
Fitiv displays TSS for each workout in the activity summary and aggregates TSS into the training load dashboard, which shows:
- Daily TSS contributions by workout
- Rolling 7-day ATL (fatigue)
- Rolling 42-day CTL (fitness)
- Current TSB (form) with color-coded indicators
- Historical trend chart of fitness, fatigue, and form
For athletes who run and cycle, Fitiv also calculates TRIMP (Training Impulse) for HR-based workouts and combines them into a unified cross-sport load score, enabling a complete picture of systemic training stress regardless of sport.
Frequently Asked Questions
Q: Do I need a power meter to calculate TSS? A: For the power-based TSS calculation, yes — power data is required. Without a power meter or smart trainer, Fitiv calculates TRIMP from heart rate data instead. TRIMP and TSS are not directly comparable in their raw numbers, but both feed into equivalent CTL/ATL/TSB models and produce similar actionable guidance for training load management.
Q: Why does my TSS seem high even on easy rides? A: TSS scales with duration as well as intensity. A 3-hour Zone 2 endurance ride at 65% of FTP produces a TSS of approximately 130 — not because it was intense, but because the cumulative duration imposed significant metabolic stress. This is physiologically accurate: long easy efforts do create meaningful training stimulus and fatigue, even if the pace felt comfortable.
Q: How often should I retest FTP to keep TSS accurate? A: Every 6–8 weeks, or whenever you notice that prescribed Zone 4 intervals feel significantly easier than they should. An outdated (too low) FTP inflates TSS values, making training appear harder than it is and overstating fatigue in the CTL model. An FTP that is too high artificially deflates TSS and understates training stress.