Training Monotony and Training Strain
These Dashboard summaries describe the distribution and amount of TRIMP over seven consecutive daily rows.
EffortSignal’s bounded definition
For seven daily TRIMP values, calculate mean m and population standard deviation s:
Monotony = m / (s + m), when m > 0; otherwise 0
Training Strain = sum(TRIMP) × Monotony / 0.5
The seven rows end on the selected date, including that date’s currently recorded load. They must be consecutive; a missing daily row makes these summaries unavailable. The current day may still accumulate activities. Monotony is dimensionless and bounded; strain is a scaled load summary.
Verified example
Seven equal days of 50 TRIMP have m = 50, s = 0, Monotony = 1 and Training Strain = 700. Seven zero days give both values zero. For 0, 0, 0, 0, 0, 0 and 70 TRIMP, mean is 10, SD is 24.494897, Monotony is 0.289898 and strain is 40.585713.
Different from the original research metric
The original monotony literature uses a different definition, commonly mean daily load divided by its standard deviation. EffortSignal deliberately uses mean/(SD+mean) and scales strain by 1/0.5, so values must not be compared as if the formulas were identical. Imported activities without TRIMP retain an incomplete-history notice even when seven daily rows exist.
These values do not diagnose overtraining or predict injury. See Training Load and the shared history rules before interpreting them.
Sources and implementation scope
Foster (1998), monitoring training and monotony provides background, not a specification of every EffortSignal rule. The formulas, windows, quality gates and examples above describe EffortSignal 0.1.13, checked September 10, 2026. Product-specific thresholds and rounding should not be attributed to the background source.
Content checked September 10, 2026 · EffortSignal release 0.1.13