Training load calculator

TSS calculator

Enter your power data below to calculate the training stress score (TSS) and intensity factor (IF) for this ride.

e.g. 45min, 1h 30m, or 1:30:00

TSS (Training Stress Score) captures how hard a session was by combining how long you went and how hard you pushed, relative to your threshold power.

Load = (Duration × NP × IF × 100) / FTP
  • Duration: workout time in hours
  • NP: Normalized Power
  • IF (Intensity Factor): NP / FTP
  • FTP: Functional Threshold Power

By definition, one hour all-out at your FTP equals 100 TSS, so everything else scales from there.

Intensity Factor is how hard a session was relative to your own threshold, as a single number. On the bike it is Normalized Power divided by FTP, so 1.0 means you held threshold for the whole session and 0.65 means you rode endurance.

It is the intensity half of TSS, and it is squared: TSS = hours × IF² × 100. That squaring is why an hour at 1.1 costs more than ninety minutes at 0.8, and why chasing weekly TSS with junk miles works so badly.

It depends entirely on what the session is for. Rough ranges for a whole ride:

  • Under 0.65 - recovery spin
  • 0.65 to 0.80 - endurance, the bulk of most weeks
  • 0.80 to 0.90 - tempo and sweet spot work
  • 0.90 to 1.00 - threshold sessions, and long time trials
  • Over 1.05 - short races and hard interval days

A whole-session IF above 1.0 is only possible over short durations, since IF 1.0 for an hour is the definition of FTP.

FTP (Functional Threshold Power) is roughly the average power you can hold for an hour at full effort. The simplest way to test it: do a 20-minute all-out effort and take 95% of that average. Most smart trainers and cycling apps can also estimate it automatically from your ride data.

It depends on the session, but rough ballparks:

  • Under 50 - recovery spin, you'll feel fine tomorrow
  • 50 to 100 - solid endurance, normal training day
  • 100 to 150 - hard session, you'll feel it
  • 150 to 300 - long ride or race-level effort, plan recovery
  • Over 300 - gran fondo or century territory

Honestly, it varies a lot. A recreational cyclist might do 200-400 TSS/week, a committed amateur 400-700, a racing amateur 700-1000, and pros can push past 1,000. The number matters less than the trend: try not to jump more than 10% week over week, as that's usually where niggles and burnout start showing up.

Yes. In Shape Calendar you can describe a session in plain English like "90 minute ride around 120 TSS" or "threshold intervals, moderate load" and we'll build the structured workout, predict the load, and push it to your Garmin or Apple Watch. Plan by feel or by number, whichever fits.

A single TSS number only tells you so much. The real value is seeing how your load builds week over week and whether your fitness is keeping pace with your fatigue. Shape Calendar calculates TSS for every workout and shows planned, completed and missed sessions on one load chart. Useful whether you're building toward a race, coming back from injury, or just trying not to overcook a big training block.

Yes, that's exactly what this calculator is for. Plug in your target duration and expected power and you'll get a TSS estimate before you ride. Shape Calendar takes it further: describe a workout in plain English like "5×5min at threshold with 3min rest" and we'll generate the structured session, predict the TSS upfront, and sync it straight to your watch.
Shape on iPhoneApple Watch
Shape Calendar

Plan workouts by TSS, not by guesswork.

Describe a session in plain English, see the predicted TSS before you ride, and sync it to your Garmin, Apple Watch or Wahoo.

Download on the App Store