Cycling Training Stress Score Calculator
Calculate TSS and Intensity Factor for any cycling ride from duration, average power, and FTP.
Includes weekly training load guidance for cyclists.
Training Stress Score (TSS) is a single number that quantifies the physiological load of a ride.
It was developed by Andrew Coggan to account for both duration and intensity — a 1-hour all-out effort and a 4-hour easy ride have very different training effects, and TSS captures that difference.
The formula:
IF = average_power ÷ FTP TSS = duration_hours × IF² × 100
IF stands for Intensity Factor — how hard you rode relative to your threshold.
An IF of 1.0 means you averaged exactly your FTP for the whole ride (extremely hard).
Easy endurance rides typically land at IF 0.55-0.70.
A hard group ride might hit IF 0.85-0.90.
TSS scales with both intensity and duration.
A 1-hour ride at IF 0.75 produces TSS = 1 × 0.75² × 100 = 56.
A 3-hour ride at the same IF produces TSS = 3 × 0.75² × 100 = 169.
Weekly TSS guidelines (from TrainingPeaks and Coggan):
- Under 150: Very light week, recovery or taper
- 150-300: Maintenance, light training load
- 300-450: Typical build phase for most cyclists
- 450-600: High-volume or high-intensity training block
- Over 600: Extreme load — use only periodically; increases injury and burnout risk
Note: this calculator uses average power as a proxy for normalized power (NP).
Normalized power accounts for the physiological cost of variable effort (sprints, hills, surges) and is typically 5-15% higher than average power on a hilly or dynamic ride.
If you have NP from your bike computer or training app, use that instead of average power for a more accurate TSS.