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.

All explanations · All features