All posts
training loadmetricseducation

CTL, ATL, and TSB Explained: How to Read Your Training Load

April 10, 20267 min read

CTL, ATL, and TSB are three of the most useful numbers in endurance training, and three of the most misread. On most dashboards they look like a tidy graph: a rising blue line, a spiky red line, and a green-to-red oscillation below. In practice they are an early warning system, a pacing aid, and a blueprint for when to rest — if you know how to read them.

The three metrics, in plain English

CTL — Chronic Training Load

CTL is the 42-day exponentially weighted average of your daily TSS. Informally: your current fitness, where "fitness" means "the body's long-term adaptation to training load." A higher CTL means you are absorbing more training day-to-day; a CTL of 80 is a competent club rider, 100+ is a serious athlete, 120+ is racing-fit.

CTL moves slowly. A single hard week might push it up by 3 to 5 points; a week off rarely drops it more than 5. That slowness is the feature — it filters out noise and gives you a stable view of your actual fitness trend.

ATL — Acute Training Load

ATL is the 7-day exponentially weighted average of daily TSS. Informally: your fatigue from the last week. It is reactive — a single big ride can spike ATL by 15 points overnight.

ATL is not automatically bad. A high ATL during a build block means you are accumulating the stimulus you need to raise CTL. A high ATL entering race week is a problem.

TSB — Training Stress Balance (Form)

TSB is simply CTL minus ATL, offset by a day. It is the relationship that matters, not the component numbers. Positive TSB means you are fresher than your average training state; negative TSB means you are fatigued relative to your fitness.

Rough zones to keep in your head:

  • TSB > +15 — tapered. Race-ready, but also detraining if you sit there too long.
  • TSB +5 to +15 — fresh. Good for testing, hard intervals, or a race.
  • TSB −5 to +5 — neutral. Normal training zone.
  • TSB −10 to −30 — productively fatigued. Where build blocks live.
  • TSB < −30 — deeply fatigued. Unsustainable. Back off or something breaks.

How to use them together

Reading the three numbers in isolation is how most people get them wrong. The signal is in the motion:

  • CTL rising, TSB slightly negative — you are building fitness at a sustainable rate. Continue.
  • CTL flat, TSB deeply negative — you are grinding without adapting. Too much junk-mile intensity, not enough recovery, or not enough sleep to consolidate the work. Cut volume or intensity by 20-30%.
  • CTL falling, TSB very positive — taper or unplanned rest. Fine for one to two weeks before a goal event; an alarm if it persists unintentionally.
  • CTL rising fast, TSB swinging wildly — you are overreaching. Monitor HRV and RHR; if those trend the wrong way too, pull back before it becomes overtraining.

Ramp rate: the number most people do not watch

Ramp rate is the week-over-week change in CTL. The old coaching rule is to keep it below 5 to 7 points per week during a build block. Faster than that and injury risk climbs fast.

A common mistake: logging a heroic week of riding, watching CTL jump 8 points, and then trying to hold that volume indefinitely. Your body is still absorbing the previous ramp when the next one lands on top of it. Two or three weeks in a row and something gives — a saddle sore that will not heal, a cold that will not leave, a piece of connective tissue that used to be fine.

Common misreads

  1. "My TSB is +20, I am in great shape." You are fresh, not necessarily fit. CTL tells you fitness. TSB alone tells you you have been resting.
  2. "TSB is negative, I should take a rest day." Not if CTL is climbing. Productive fatigue is part of getting fitter. Rest when you see CTL stall, HRV drop, or TSB cross −30.
  3. "I need more TSS." Arguably the worst way to ride. TSS is the score, not the game. Adding junk miles to inflate a number is the classic path to monotony and overreach.

Automating the read

The real unlock is tying these numbers to a plan that responds. Watching TSB drop below −25 tells you something; having a coach automatically soften tomorrow's intervals when it does is what turns the data into training. That is what VeloSense AI does — it reads your CTL, ATL and TSB every day, cross-references HRV and RHR trends, and writes the plan accordingly.

Try VeloSense AI free for 14 days

Reads your Intervals.icu data. Rewrites your plan when your week changes. Explains its reasoning in plain English.

Start Free Trial

Keep reading