Skip to main content
Afitpilot®
← Back to Glossary
Strength & Load

EWMA Load Trend

Also known as: Acute:Chronic Load Smoothing, Load Trend Chart

An exponentially weighted moving average (EWMA) of weekly AU, computed nightly. Acute load uses a 7-day window; chronic load uses a 28-day window. The chart is descriptive only — it shows whether your load is rising, falling, or stable over the last 12 weeks.

acuteAU_7d = EWMA(weeklyAU, alpha = 2 / (7 + 1)) chronicAU_28d = EWMA(weeklyAU, alpha = 2 / (28 + 1)) trend in {rising, falling, stable} [computed from the last 7-day slope of acuteAU_7d]

Last 4 weeks: 1,800 -> 2,100 -> 2,300 -> 2,200 AU. Acute (7d) tracks the most recent week, chronic (28d) the rolling average. If acute climbs noticeably faster than chronic, the chart labels the trend "rising."

A nightly batch job (compute_load_trends.py) reads each athlete's weekly load_summary docs and writes a load_trends/current doc with the smoothed values and trend label. The coach drawer renders a 12-week chart with neutral styling: single colour, no severity badges, explicit "descriptive only — does not predict injury risk" legend.

Who / ContextValueNote
Original ACWR research (2016)Spike >1.5 = injury riskInfluential but methodologically criticised — population mean dressed up as individual signal
Impellizzeri (2020)Don't use ACWR for individual predictionComprehensive critique; load monitoring still useful, but for description not prognosis
Impellizzeri (2023)Same conclusion, stronger statistical caseRe-examines original cohorts and finds the predictive signal disappears once methodology is corrected
Afitpilot policyNo risk badges, no automated alertsThe moment a colour ships, it gets read as a risk signal regardless of the disclaimer
  • Per Impellizzeri (2020/2023), the literature does not support acute:chronic ratios for individual injury prediction. The chart deliberately does not surface ACWR as a number, because doing so invites misinterpretation.
  • The 7d / 28d window choice follows convention but has not been validated for self-coached non-elite athletes. We're treating it as v1 and will revisit after 3 months of production data.
  • Trend classification (rising/falling/stable) is computed from a 7-day slope and can flip noisily across small load fluctuations week-to-week.
  • Weeks with very few completed sessions (gaps) underweight chronic load — the EWMA does not distinguish between "low load week" and "didn't train this week."

EWMA-based load smoothing was popularised by Williams et al. (2017) as an improvement on rolling-average ACWR. The smoothing is mathematically sound — it weights recent observations more heavily without abrupt drops at the rolling-window edge. The contested part is what to do with the resulting numbers. Afitpilot's stance follows Impellizzeri 2020/2023: ship the chart for description, do not infer individual risk from it, and never colour it as if you could.