All about TSS (Stress Points) in Zwift

All about TSS (Stress Points) in Zwift

When you begin a workout in Zwift you may notice a “stress points” rating. And when you finish any Zwift ride you’ll see a guy at the top-right telling you how hard you worked.

Where do those numbers come from, and how are they useful?

Zwift’s “stress points” are really just TSS–the same number you see when you end a ride. Training Stress Score was developed by TrainingPeaks as a key workout metric. It combines both time and intensity into one metric which indicates how much stress your workout is putting on your body.

Let’s dig into TSS a bit more to learn how it is calculated and used.

First, a Big Nod to the Creators

The TSS (Training Stress Score) and IF (Intensity Factor) metrics were created by Dr. Andy Coggan and Hunter Allen. Coggan also created NP (Normalized Power). TSS, IF and NP would eventually be purchased by TrainingPeaks and trademarked.

Coggan, Allen, and TrainingPeak’s Joe Friel have done amazing work developing metrics and tools that help us train smart. They deserve kudos for the many ways they have helped cyclists take their training to the next level.

(Side note: if you’re ever looking for good books on training with power, pick up Coggan and Allen’s Training and Racing with a Power Meter and/or Friel’s The Cyclist’s Training Bible. Both incredible resources for anyone interested in getting faster on the bike!)

Power Required

It’s worth noting that calculating TSS requires power numbers. Twenty years ago these numbers weren’t accessible to most cyclists, but nowadays with affordable power meters and smart trainers many cyclists have power data for every ride. It’s a great time to be alive and training!

Connect to TrainingPeaks

If you haven’t yet done so, I recommend heading to (or downloading their app) and creating a free account. Upload all your ride data to this account and you will have TSS and other metrics stored for every ride.

  • Link your Zwift account to TrainingPeaks by logging into and clicking “Connect” under Profile>Connections.
  • Outdoors I use (and love!) my Wahoo Elemnt bike computer which uploads my rides to TrainingPeaks as well as Strava. If you have a power meter for outdoor rides, set up your bike’s computer to upload to TrainingPeaks. This way you’ll have all your rides analyzed by TrainingPeaks.

The Formula

Here is the formula for calculating TSS:

TSS = [(sec x NP x IF)/(FTP x 3600)] x 100

Where “sec” is how many seconds your workout lasted, NP is normalized power, IF is intensity factor, and FTP is your functional threshold power. Most of those numbers will be familiar to you, but “Intensity Factor” may be new. It’s simple though: IF is the ratio of Normalized Power to your FTP for any given workout. So if an athlete with an FTP of 300 watts completed a workout averaging 200 NP their IF would be .67.

TSS calculation examples (assuming FTP of 250 watts):

  • Ride at FTP for 1 hour: [(3600 x 250 x 1)/(250 x 3600)] x 100, or 100.
  • Ride at 75% FTP for three hours: [(10800 x 187.5 x .75)/(250 x 3600)] x 100, or 169.
  • Ride at 50% FTP for five hours: [(18000 x 125 x .5)/(250 x 3600)] x 100, or 125.

Once you understand the formula you will see that you can earn more than 100 TSS within a single workout, but only if the workout is longer than an hour.

It’s All Relative

Since TSS is based on your personal FTP, a TSS of 100 is relatively the “same” for a professional athlete as it is for a beginner. This is the genius of the TSS metric.

As an example, if a pro cyclist “Pro Joe” went out and did a 1-hour ride that resulted in a TSS of 100, this would be a max effort for him. In simplified terms, if Joe’s FTP was 350 watts, this means he would have held 350 watts for the full hour. Animal!

Then a mere mortal, let’s call him “Cycling Bob”, comes along with an FTP of 225. Bob goes out and hammers for an hour, holding 225 watts the whole time. His TSS will be 100 as well.

Even though Joe and Bob moved at very different speeds during their rides, they both gave it their all for that hour. Their relative effort levels were the same, which is why their TSS is the same.

What’s the Use?

This is a massive topic, and one in which I’m no expert. What I can say with confidence is it’s the best metric I’ve found for how hard a day’s effort really was, and that helps inform my recovery needs that follow.

Many coaches and athletes also use cumulative TSS (per week or per month) to figure out the volume of training which will leads to improvements but avoid overtraining. Athletes might ramp up their TSS leading into a big event, building each week from (for example) 600 TSS to 700 then 800.

There is much more to this topic, but we’ll leave it here for today. I’m curious: do you pay attention to TSS? How have you found it useful in your training? Comment below!

About The Author

Eric Schlange

Eric runs Zwift Insider in his spare time when he isn't on the bike or managing various business interests. He lives in Northern California with his beautiful wife, two kids and dog. Follow on Strava

Notify of
newest most voted
Inline Feedbacks
View all comments
Perry Alan McFall
Perry Alan McFall
1 year ago

TSS only show up for me on workouts – not group rides or races. Where the score would appear I have the climbing challenge and and not able to find a way to change this.

Tanya Clark
Tanya Clark
1 year ago

I have just started with a coach and they have asked me to do a Zwift ride for 1hr30min with a T75, how do I manage my TScore while training so that I get that result

1 year ago

I can see my TSS at end of ride, but don’t know how to access that information once that screen goes.

Tom Scanlon
Tom Scanlon
1 year ago

Any way to get Zwift rides to show TSS and IF in Garmin Connect. They show up for TrainerRoad rides.

1 year ago

Had previously only been looking at wattage zones for recovery rides but now using the TSS more now to help keep myself in-check for recoveries and to curb enthusiasm for doing hard/long rides every single day.

Wish the TSS was embedded and displayed permanently in our Zwift Activity feed but make it’s a licensing issue?

Jerome Lawther
Jerome Lawther
9 months ago
Reply to  Cr.Rand

I wish it showed up in the activity feed too.

11 months ago

The formula could be simplified to this, am I right?
TSS = 100 x hours x IF^2
(because sec/3600 = hours, and NP/FTP = IF)
But if I use this formula on each interval in any zwift workout and make the total, it never ends up on the zwift stress points. Do you have an explanation?

Free Zwift Trial

Newsletter Subscription

Would love your thoughts, please comment.x