Baseline
Training

Training load explained: CTL, ATL, TSB - what they mean and how to use them

If you've used TrainingPeaks, Intervals.icu, Golden Cheetah, or Baseline, you've seen three numbers: CTL, ATL, and TSB. They look intimidating. They're not. Here's everything you need to know.

The short version

  • CTL (Chronic Training Load) = your long-term fitness. Think of it as your engine.
  • ATL (Acute Training Load) = your recent fatigue. How tired you are right now.
  • TSB (Training Stress Balance) = CTL minus ATL. Your "form" - when it's positive, you're rested and ready; when it's negative, you're carrying fatigue.

That's it. The rest of this article explains the details, how it's calculated, how to read it, and (most importantly) what it can and cannot tell you.

Where these numbers come from

The model was developed by Dr. Andrew Coggan (the same physiologist behind TrainingPeaks) in the early 2000s. It's also called the Performance Management Chart (PMC).

The core idea: every workout has a "training stress" value - a single number representing how hard that session was on your body. Over time, these accumulate. Your body adapts to the long-term average (fitness) while being affected by the short-term load (fatigue).

How it's calculated

1. Training Stress Score (TSS) per workout

Every workout gets a TSS. It's calculated differently by sport:

  • Cycling: based on power (Normalized Power vs FTP) and duration
  • Running: based on pace (Grade-Adjusted Pace vs threshold pace) and duration
  • Swimming: based on pace vs threshold pace and duration

A TSS of 100 = 1 hour at threshold. A hard 3-hour ride might be 200–250 TSS. An easy 30-minute jog might be 20–30 TSS.

2. CTL (fitness)

CTL is the exponentially-weighted moving average of your daily TSS over ~42 days (the default time constant, configurable). Older workouts count less; recent workouts count more. It rises when you train consistently and falls when you stop.

Most amateur athletes have a CTL between 40 and 80. Pros might hold 120+. A CTL of 50 means your body has adapted to handling about 50 TSS/day on average.

3. ATL (fatigue)

ATL is the same calculation but over ~7 days. It responds quickly - a big workout spikes your ATL immediately. It drops just as quickly when you rest.

4. TSB (form)

TSB = CTL - ATL (yesterday's values, before today's workout).

  • TSB > 0: you're fresh. This is where PRs happen. You've rested more than you've trained recently.
  • TSB between 0 and -10: you're training productively. Some fatigue, manageable.
  • TSB between -10 and -30: you're in a training block. Normal for building phases.
  • TSB < -30: you're significantly fatigued. Risk of overtraining increases, especially if sustained.

How to actually read it

The ramp rate

Your CTL shouldn't rise too fast. A safe ramp rate is 5–8 CTL points per week. More than that and injury risk increases. If your CTL went from 40 to 60 in two weeks, you're overreaching - back off.

The taper

When you reduce training before a race (a taper), your ATL drops faster than your CTL. TSB goes positive. You feel good. That's the point. A well-executed taper leaves you with a TSB of +5 to +15 on race day.

The negative TSB spiral

If your TSB stays below -20 for more than 2–3 weeks, your body isn't recovering. Performance plateaus. You get sick. This is overtraining. The fix: a recovery week where you drop volume by 30–40%.

What CTL/ATL/TSB can't tell you

The model has limitations:

  1. It doesn't account for non-training stress. Work deadlines, poor sleep, illness - these all affect your actual readiness but don't show up in TSB.
  2. It assumes all TSS is created equal. A 100 TSS from a gentle Z2 ride is different from 100 TSS from 400m repeats. The model doesn't distinguish.
  3. It's a lagging indicator. TSB tells you what has happened, not what will happen. Pair it with subjective feel (RPE, mood, motivation) and recovery data (HRV, resting HR).
  4. It needs consistent data to be accurate. If you miss workouts or don't record them, the model loses accuracy.

How Baseline uses it

Baseline shows CTL/ATL/TSB on the Training Load screen. It's computed from your connected data sources - Strava activities, Garmin workouts, Apple Health runs. The default constants are 42/7 days, but you can customise them in Settings.

We also overlay recovery data (HRV from WHOOP, sleep from Garmin, resting HR from Apple Health) so you can see the full picture - not just the training numbers but how your body is actually responding.

The daily AI insights card flags when your TSB is trending down dangerously or when you're peaking and ready to race.

Common mistakes

1. Chasing CTL without respecting ramp rate. The most common mistake with the CTL/ATL/TSB model is pushing CTL as high as possible without monitoring how fast it gets there. A safe ramp rate is 5-8 CTL points per week. Going faster than that significantly increases injury risk, illness susceptibility, and the likelihood of accumulated fatigue that takes weeks to recover from. A CTL of 80 built steadily over 12 weeks is far more sustainable and productive than a CTL of 80 reached in 6 weeks through aggressive overreaching.

2. Reading TSB in isolation. TSB is powerful but incomplete. It does not account for non-training stress - work deadlines, family obligations, poor sleep, illness, or dietary changes. A TSB of +5 with 4 hours of sleep and a high-stress week at the office is not the same as a TSB of +5 with great sleep and low life stress. Always pair TSB with subjective readiness, HRV, resting heart rate, and your own sense of how your body feels. TSB tells you about training load balance; it does not tell you everything about readiness.

3. Expecting the model to be predictive. The CTL/ATL/TSB model describes what has happened to your body based on past training. It is a lagging indicator, not a leading one. Athletes who treat TSB as a crystal ball for race performance often get it wrong because they ignore the subjective and recovery data that completes the picture. Use the model to understand your training history and time your taper, but combine it with a structured taper plan, subjective readiness checks, and morning recovery readings to dial in your race-day timing.

How Baseline handles this

Baseline computes CTL/ATL/TSB from your connected data sources with customisable time constants so you can adjust the model to your sport and physiology. The Training Load screen shows your fitness and fatigue trends alongside overlays for HRV, sleep, and resting heart rate - giving you the full readiness picture, not just the training numbers. The daily AI insights card flags dangerous ramp rates, prolonged periods of deeply negative TSB, and when your recovery metrics suggest you are ready to perform.

Further reading

The bottom line

CTL/ATL/TSB is the closest thing endurance sports have to a universal training language. Learn to read these numbers. They won't replace listening to your body, but they'll give you a framework for understanding what your body is telling you.

See your own CTL/ATL/TSB - connect Strava and view the demo →