CTL / ATL / TSB Calculator

Track your fitness, fatigue, and form using the Performance Management Chart model

Current Metrics

Mon
Tue
Wed
Thu
Fri
Sat
Sun
Weekly Total: 490 TSS

Current Form (TSB)

-15.0
Fatigued (Building)

Current Metrics

60.0
CTL (Fitness)
75.0
ATL (Fatigue)
-15.0
TSB (Form)

After Today's Workout

60.5
New CTL
75.7
New ATL
-15.2
New TSB

Race Day Projection (14 days)

57.5
CTL
53.0
ATL
4.5
TSB (Form)

Optimal race day TSB: +15 to +25 for peak performance

Daily TSS Targets

Maintain Fitness60 TSS
Build Fitness (+10%)66 TSS
Recovery Day30 TSS
Weekly Ramp Rate1.7 CTL/week

Safe ramp rate: 3-7 CTL points per week

What Are CTL, ATL, and TSB?

The Chronic Training Load (CTL), Acute Training Load (ATL), and Training Stress Balance (TSB) model — often called the Fitness-Fatigue Model or the Performance Management Chart (PMC) — is the gold standard framework used by endurance coaches and athletes worldwide to quantify training, manage fatigue, and time peak performance for race day.

CTL (Fitness) represents the long-term average of your daily training stress over roughly 42 days. Think of it as your aerobic base or fitness level. The higher your CTL, the more training your body has absorbed over the past six weeks. CTL changes slowly because it tracks a 42-day rolling average, which means it takes weeks of consistent work to raise it meaningfully — and weeks of rest to let it fall.

ATL (Fatigue) reflects your short-term training load over approximately 7 days. It responds quickly to what you have done in the past week. A hard training block drives ATL up rapidly; a few easy days bring it back down within days. ATL is your body's most recent stress signal, and it is the key driver of how tired you feel right now.

TSB (Form) is simply CTL minus ATL. When your fitness exceeds your current fatigue, TSB is positive and you feel good — fresh legs, sharp mind, ready to race. When ATL exceeds CTL, TSB goes negative, meaning fatigue is suppressing your ability to express your fitness. The art of periodization is building CTL high enough while managing ATL so that TSB lands in the optimal positive window on race day.

This calculator implements the standard exponentially weighted moving-average (EWMA) model used by platforms like TrainingPeaks, Strava, and Garmin to power their Performance Management Charts. The inputs are straightforward: your current CTL and ATL values, today's Training Stress Score (TSS), and the number of days until your target event. The calculator then shows your updated metrics and projects your race-day form assuming a standard taper at 50 TSS per day.

CTL, ATL, and TSB Formulas

The Fitness-Fatigue Model uses an exponentially weighted moving average (EWMA) with different time constants for CTL and ATL. Each day, your current values are updated based on that day's Training Stress Score (TSS). The formulas are designed so that CTL decays slowly (42-day time constant) while ATL decays quickly (7-day time constant), capturing the intuition that fitness builds and fades gradually while fatigue accumulates and dissipates rapidly.

After entering your current CTL, current ATL, and today's TSS, the calculator computes your updated metrics. The TSB (Training Stress Balance), also called Form, is then found by subtracting ATL from CTL. A positive TSB means you are fresher than your fitness baseline — the ideal state for racing. A large negative TSB means accumulated fatigue is masking your true capabilities.

For the race-day taper projection, the calculator iterates the same update formulas for each day until your event, assuming a fixed 50 TSS per day during the taper period. This models a light, maintenance-level load that allows ATL (fatigue) to drop quickly toward a positive TSB while preserving most of your CTL (fitness).

CTL, ATL, and TSB Update Equations

newCTL = CTL + (TSS − CTL) / 42 newATL = ATL + (TSS − ATL) / 7 TSB = CTL − ATL

Where:

  • CTL= Chronic Training Load — current fitness value (42-day EWMA)
  • ATL= Acute Training Load — current fatigue value (7-day EWMA)
  • TSS= Training Stress Score for today's workout
  • 42= CTL time constant (days) — controls how slowly fitness changes
  • 7= ATL time constant (days) — controls how quickly fatigue responds
  • TSB= Training Stress Balance (Form) = CTL minus ATL
  • newCTL= Updated CTL after incorporating today's TSS
  • newATL= Updated ATL after incorporating today's TSS

Understanding Your Training Status Zones

Your TSB value tells you exactly where you stand in the training-to-racing continuum. The calculator displays one of five status labels based on your current TSB, each corresponding to a different physiological state and appropriate training response.

TSB Range Status What It Means
Above +25 Very Fresh (Undertrained) Legs are rested but fitness may be lacking; too little recent training
+10 to +25 Fresh (Ready to Race) Optimal race-day window — peak fitness, manageable fatigue
−10 to +10 Neutral (Maintaining) Training and recovery are roughly balanced; holding fitness
−25 to −10 Fatigued (Building) Accumulating productive training stress; expect fatigue, not peak performance
Below −25 Very Fatigued (Overreaching) Excessive accumulated fatigue; risk of overtraining and injury

The optimal race-day TSB window is +15 to +25. Below +10 and you may still carry too much fatigue to race at your best. Above +25 and the taper has gone too long — your fitness has started to erode faster than fatigue is dropping. The goal of a well-designed taper is to land in that sweet spot where CTL remains high while ATL has fallen enough to produce a meaningfully positive TSB.

During base and build training phases, spending time in the Fatigued or Neutral zones is perfectly appropriate and expected. Elite endurance athletes regularly push their TSB to −30 or lower during intense training blocks, then rely on a structured taper to restore form before their key race. The Fitness-Fatigue Model gives you the numbers to manage this cycle deliberately rather than by feel alone.

Planning Your Race-Day Taper

One of the most powerful features of the CTL/ATL/TSB calculator is the race-day projection. By entering the number of days until your target event, the calculator simulates a standard taper at 50 TSS per day and shows you the projected CTL, ATL, and TSB you can expect on race morning.

The 50 TSS/day taper assumption models a light aerobic load — enough to maintain neuromuscular activation and aerobic pathways without adding meaningful fatigue. Because ATL has a 7-day time constant, it drops very quickly during a taper: in just 7 days of 50 TSS/day, ATL will already be more than halfway to its new equilibrium. CTL, by contrast, barely moves in 7 days thanks to its 42-day time constant. This asymmetry is exactly what makes tapering work — fatigue melts away while fitness stays nearly intact.

Use the projection to answer key periodization questions: How long should my taper be? Will a 10-day taper get me to a +15 TSB, or do I need 14 days? What if I add one more big training day before cutting back? You can experiment with your inputs and watch the projected race-day TSB change in real time.

As a general rule for endurance sports, a 7–14 day taper is appropriate for most athletes targeting a TSB of +10 to +25 on race day. Shorter events like 5 km and sprint triathlons often call for shorter tapers (4–7 days), while Ironman-distance events or marathon races may benefit from a 2–3 week taper period. The calculator lets you dial in your specific numbers rather than guessing from generic recommendations.

Ramp Rate and Safe Training Progression

The weekly ramp rate is how much your CTL changes per week based on your planned training load. The calculator derives this from your weekly TSS plan: it averages your seven daily TSS values, then applies the same EWMA formula to estimate how much CTL will shift per week at that training load.

The formula is: weeklyRamp = (avgDailyTSS − CTL) / 42 × 7. If your average daily TSS equals your current CTL, your ramp rate is zero — you are maintaining. If your average daily TSS is higher than CTL, ramp rate is positive (building fitness). If lower, it is negative (losing fitness or recovering).

The safe ramp rate range is 3–7 CTL points per week. Going above 7 CTL points per week dramatically increases injury and overtraining risk, particularly for runners. Bone stress injuries, tendon overuse problems, and cardiovascular overreaching all become significantly more likely when training volume spikes too fast. The calculator flags your weekly ramp rate in red if it exceeds 7 CTL/week so you can adjust before your body forces you to.

The daily TSS targets panel provides three quick reference values based on your current CTL. To maintain fitness, target TSS equal to your CTL each day. To build fitness by approximately 10%, target CTL × 1.1 per day. On recovery days, aim for CTL × 0.5 — enough to keep the body moving without adding meaningful stress. These guidelines are starting points; actual TSS will vary by workout type, intensity, and individual response.

Tracking your weekly TSS across all seven days in the planner lets you spot imbalances before they become problems. A week heavily loaded on the weekend with nothing in between creates spiky ATL patterns that increase injury risk. Distributing load more evenly — even if the total TSS is the same — generally produces a smoother, more manageable fatigue curve and better long-term adaptation.

How to Use This CTL ATL TSB Calculator

Using the CTL ATL TSB calculator is straightforward. Start by entering your current CTL (Fitness) and current ATL (Fatigue) values. If you use a platform like TrainingPeaks, Garmin Connect, or Today's Plan, these numbers appear directly on your Performance Management Chart. If you are starting fresh, a CTL of 40–60 is typical for a recreational endurance athlete; competitive age-groupers often sit in the 70–90 range; elite athletes may carry 120 or higher.

Next, enter today's TSS for your planned workout. TSS is calculated by your GPS device or training platform based on duration and intensity relative to your threshold. A one-hour ride at threshold is 100 TSS. A 90-minute easy jog might be 60 TSS. A two-hour hard group ride could be 160 TSS or more.

Enter the days until your target event to see the race-day projection. Then fill in your weekly TSS plan for all seven days of the week — this drives the ramp rate calculation and weekly total display.

Read your results in the output panels. The large TSB number and status label tell you your current form at a glance. The "After Today's Workout" panel shows how this session will move your metrics. The race-day projection shows where you will land if you taper at 50 TSS/day from today. And the daily TSS targets give you concrete numbers to target in your upcoming training days.

Worked Examples

Mid-Season Cyclist — Baseline Check

Problem:

A cyclist has CTL = 60, ATL = 75, and completes a 90-minute moderate ride for a TSS of 80. What are the updated metrics?

Solution Steps:

  1. 1Current TSB = CTL − ATL = 60 − 75 = −15 (Fatigued/Building phase — expected mid-block)
  2. 2newCTL = 60 + (80 − 60) / 42 = 60 + 20 / 42 = 60 + 0.476 ≈ 60.5
  3. 3newATL = 75 + (80 − 75) / 7 = 75 + 5 / 7 = 75 + 0.714 ≈ 75.7
  4. 4newTSB = 60.5 − 75.7 = −15.2 — virtually unchanged because the workout TSS is close to current ATL
  5. 5The slight ATL increase shows that today's session added a small amount of additional fatigue, keeping the athlete in the Fatigued (Building) zone

Result:

Updated CTL: 60.5 | Updated ATL: 75.7 | New TSB: −15.2 (Fatigued — Building)

Triathlete on a Big Training Day

Problem:

A triathlete has CTL = 85 and ATL = 70 heading into a high-volume brick session. The combined swim/bike/run produces a TSS of 180. What happens to their form?

Solution Steps:

  1. 1Current TSB = 85 − 70 = +15 (Fresh — the athlete started the day in peak form)
  2. 2newCTL = 85 + (180 − 85) / 42 = 85 + 95 / 42 = 85 + 2.26 ≈ 87.3
  3. 3newATL = 70 + (180 − 70) / 7 = 70 + 110 / 7 = 70 + 15.71 ≈ 85.7
  4. 4newTSB = 87.3 − 85.7 = +1.6 (Neutral — the big day wiped out almost all form)
  5. 5CTL rose meaningfully (+2.3 points) — this session made a real fitness contribution; ATL spiked sharply, so the athlete needs easy days to recover before the next quality session

Result:

Updated CTL: 87.3 | Updated ATL: 85.7 | New TSB: +1.6 (Neutral — significant fatigue accumulated)

Marathon Runner — 14-Day Taper Projection

Problem:

A runner has CTL = 70 and ATL = 80 with 14 days until race day. Today's easy shakeout is 50 TSS. What does the race-day projection look like?

Solution Steps:

  1. 1Current TSB = 70 − 80 = −10 (Neutral/Maintaining — borderline, fatigue slightly elevated)
  2. 2After today: newCTL = 70 + (50 − 70) / 42 ≈ 69.5; newATL = 80 + (50 − 80) / 7 ≈ 75.7
  3. 3Taper projection: for 14 days at 50 TSS/day, ATL decays rapidly (7-day constant) toward 50 while CTL barely moves (42-day constant)
  4. 4Approximate race-day CTL ≈ 50 + (69.5 − 50) × (41/42)^14 ≈ 50 + 19.5 × 0.717 ≈ 64.0
  5. 5Approximate race-day ATL ≈ 50 + (75.7 − 50) × (6/7)^14 ≈ 50 + 25.7 × 0.118 ≈ 53.0
  6. 6Projected TSB = 64.0 − 53.0 ≈ +11.0 — right in the Fresh (Ready to Race) zone

Result:

Projected race-day CTL: ~64 | ATL: ~53 | TSB: ~+11 (Fresh — Ready to Race)

Calculating Weekly Ramp Rate

Problem:

An athlete has CTL = 60 and plans the week: Mon 80, Tue 100, Wed 60, Thu 90, Fri 0, Sat 120, Sun 40 TSS. Is this a safe ramp rate?

Solution Steps:

  1. 1Weekly TSS total = 80 + 100 + 60 + 90 + 0 + 120 + 40 = 490 TSS
  2. 2Average daily TSS = 490 / 7 = 70 TSS/day
  3. 3Weekly ramp = (avgDailyTSS − CTL) / 42 × 7 = (70 − 60) / 42 × 7 = 10 / 42 × 7 ≈ +1.67 CTL/week
  4. 4A ramp rate of +1.67 CTL/week is well within the safe range of 3–7 CTL/week — this is a gentle, conservative load increase

Result:

Weekly ramp rate ≈ +1.67 CTL/week — safely within the recommended 3–7 CTL/week window

Tips & Best Practices

  • Target a TSB between +15 and +25 on race morning — this range balances peak fitness with minimal fatigue.
  • Keep your weekly CTL ramp rate below 7 points per week to significantly reduce injury risk during build phases.
  • ATL drops fast during taper — even 3–4 easy days will measurably improve your TSB heading into a race.
  • Use CTL × 0.5 as your recovery-day TSS target to promote adaptation without adding cumulative stress.
  • If your ATL stays persistently higher than your CTL for more than 2 weeks, consider a planned recovery week before continuing to build.
  • Track your TSB at peak performance across multiple races to learn your personal optimal form number — it varies between athletes.
  • Distribute weekly TSS evenly across days when possible; weekend-heavy spikes create ATL volatility that increases overuse injury risk.
  • A CTL of 0 and ATL of 0 is the starting point — build gradually from zero rather than jumping to high TSS values if you have had a long break.
  • Aim to complete your final quality session at least 10 days before your A-race to allow ATL to recover while CTL stays high.
  • If your ramp rate shows red (above 7), reduce intensity or volume on your lighter days before cutting your hard sessions.

Frequently Asked Questions

For recreational cyclists, runners, and triathletes training 6–10 hours per week, a CTL between 40 and 70 is typical. Competitive age-group athletes who train 12–15 hours per week often reach 70–100, while elite and professional endurance athletes can sustain CTL values above 120–150. CTL is specific to the sport and platform measuring it, so comparing raw numbers across different athletes or sports is not always meaningful — what matters is the trend in your own numbers over time.
The widely recommended optimal race-day TSB range is +10 to +25. Most coaches and athletes aim for approximately +15 to +20, which balances high fitness (CTL) with low fatigue (ATL). Values above +25 may indicate an overly long taper where fitness has started to decay; values below +10 mean the body is still carrying meaningful fatigue that can dampen race performance. Individual responses vary, so tracking your TSB across multiple races helps you learn your personal sweet spot.
Training Stress Score (TSS) is a number that quantifies the overall training load of a workout, combining both duration and intensity relative to your current threshold. For cycling, TSS is calculated from power data using your Functional Threshold Power (FTP). For running, it uses pace or heart rate relative to lactate threshold. As a rough guide: an easy 1-hour ride is around 40–50 TSS, a moderate 1-hour effort is 60–80 TSS, and a hard 1-hour threshold session is close to 100 TSS. Values above 150 TSS in a single session represent very long or very intense efforts.
ATL uses a 7-day time constant while CTL uses a 42-day time constant. Because ATL's time constant is much shorter, it reacts to each new workout much more dramatically — a single big training day can push ATL up by 10–15 points while only nudging CTL by 1–2 points. Similarly, a few easy days will drop ATL rapidly while CTL stays nearly the same. This mathematical asymmetry is what makes the model physiologically meaningful: acute fatigue genuinely does accumulate and clear much faster than chronic fitness adaptations build and fade.
Most sports science research and experienced coaches recommend keeping your CTL ramp rate between 3 and 7 points per week for most athletes. Going above 7 CTL per week substantially increases the risk of overuse injuries such as stress fractures in runners, tendinopathy in cyclists, and general overtraining syndrome. New or returning athletes should stay closer to the 3–5 range. More experienced athletes with a long base of consistent training may be able to sustain 7 or slightly above for short periods during a specific build block, but should always be monitoring for warning signs like persistent fatigue, declining performance, and elevated resting heart rate.
Yes. The CTL/ATL/TSB model is sport-agnostic as long as you are using a consistent TSS-equivalent metric. Cycling uses power-based TSS directly; running platforms often provide an equivalent called rTSS or run-TSS based on pace and heart rate; swimming and other sports have their own equivalents. For triathlon, your training platform combines TSS from all disciplines into a single daily total. This calculator works with any TSS input regardless of sport — just ensure your CTL, ATL, and daily TSS values all come from the same measurement system.
The 50 TSS/day taper assumption represents a light but active maintenance load — roughly the equivalent of a 60–70 minute easy aerobic session for a moderately fit athlete. This value was chosen because it keeps the athlete moving and maintains neuromuscular readiness without adding meaningful fatigue. You can think of it as the physiological floor of productive training. In practice, your actual taper may differ based on your sport, fitness level, and race distance, but 50 TSS/day provides a reasonable baseline projection for planning purposes. Athletes targeting very short events often taper to lower TSS; those preparing for ultra-endurance events may stay slightly higher.

Sources & References

Last updated: 2026-06-05

💡

Help us improve!

How would you rate the CTL / ATL / TSB Calculator?

<>

Editorial Note

MyCalcBuddy Editorial Team

This page is maintained as an educational calculator reference.

Source

Formula Source: Standard Mathematical References

by Various

UpdatedLast reviewed: May 2026
CheckedFormula checks are based on standard references and internal QA review.

Privacy choices

MyCalcBuddy uses necessary storage for the site to work. Optional analytics, notifications, and future advertising features stay off unless you allow them.