Trainingload.ai
MetricsPMC (Performance Manager Chart)

Acute:Chronic Workload Ratio (ACWR)

Understand how Trainingload.ai calculates ATL / CTL, what a change in the ratio means, and why ACWR is not an injury or readiness prediction.

Acute:Chronic Workload Ratio (ACWR)

Acute:Chronic Workload Ratio (ACWR) compares the model's recent-load trend with its longer-load trend. In Trainingload.ai, the displayed A:C value is the current ATL divided by the current CTL.

Use it to locate a change in load context, then inspect the workouts and athlete signals behind that change. ACWR does not directly measure adaptation, fatigue, recovery, readiness, injury probability, or medical risk.

A:C

Example card: values are for UI preview only.

The exact Trainingload.ai calculation

The server first maintains two exponential moving averages of the selected daily training-load input:

CTL_today = DailyLoad × (2 / 43) + CTL_yesterday × (1 - 2 / 43)
ATL_today = DailyLoad × (2 / 8)  + ATL_yesterday × (1 - 2 / 8)

It then calculates:

ACWR_today = ATL_today / CTL_today

If CTL is zero, the product returns 0 instead of dividing by zero. The result is rounded to two decimal places for the status response.

This is a coupled PMC-style ratio: today's load contributes to both ATL and CTL. It is not a pair of simple 7-day and 28-day arithmetic averages, and it is not an uncoupled research variant.

How to read a change

ObservationWhat the model establishesWhat to check next
A:C risesATL increased relative to CTL.Which recent sessions, imports, or load-source changes moved ATL?
A:C fallsATL decreased relative to CTL.Was this planned recovery, missed training, incomplete data, or a taper?
A:C is high after time offThe CTL denominator may be small.Review absolute ATL and CTL, not only their ratio.
A:C changes unexpectedlyOne or both load trends changed.Check duplicate/missing activities, thresholds, and selected load sources.

The client currently displays four bands:

Displayed bandProduct boundarySafe interpretation
Low< 0.8Recent modeled load is below the longer-load trend.
Baseline band0.8–1.3Recent modeled load is closer to the longer-load trend.
Elevated1.3–1.5Recent modeled load is higher relative to the longer-load trend.
Highest band> 1.5The relative increase is larger and deserves context review.

These boundaries explain the current interface. They do not prove that a value is optimal, unsafe, undertraining, overreaching, or predictive of injury for an individual athlete.

A practical review workflow

  1. Confirm the displayed ATL, CTL, and A:C values refer to the same date.
  2. Open the PMC chart and locate when the ratio began to change.
  3. Trace that interval back to completed activities and verify their load values.
  4. Check whether profile thresholds or the load-source priority changed.
  5. Add non-model context: workout quality, subjective fatigue, sleep, pain, illness, and prior injury.
  6. Adjust the plan only when the combined evidence supports a change.

Data-quality checks

An unexpected A:C value is often an input or denominator question before it is a training conclusion. Check for:

  • missing or duplicated activities;
  • activities without usable power, heart-rate, pace, or session-RPE load;
  • recently changed FTP, LTHR, pace thresholds, or load-source priority;
  • a very small CTL after a long break or a new account;
  • a date boundary or timezone mismatch around imported sessions.
  • ATL: the recent-load model used as the numerator.
  • CTL: the longer-load model used as the denominator.
  • TSB: the difference between current CTL and ATL.
  • Training Load: how daily load enters the PMC model.