Plain Words Running data, in plain words.

Metrics, in plain words

How Inertial computes training load

With heart rate, load is Banister TRIMP: each second scores duration times heart-rate reserve times 0.64 times e to the power of k times reserve, with k = 1.92 for men and 1.67 for women. Without heart rate, we fall back to moving minutes times the square of your speed over threshold speed.

The numbers on this page, in one place.
WhatNumberThe qualifier
Formula with heart rateBanister TRIMPexponentially weighted by heart-rate reserve
k, the weighting constant1.92 male, 1.67 femalefrom Banister's original work
Fallback without heart rateminutes x (speed / threshold)^2threshold defaults to 3.33 m/s, about 5:00/km (8:03/mi)
Which one was usedshown on every runlabelled hr or pace

The formula, with heart rate

We use Banister's TRIMP, published in 1980. Every sample contributes:

dtMin x HRr x 0.64 x e^(k x HRr)

HRr is heart-rate reserve, which is (hr - rest) / (max - rest), clamped between 0 and 1. k is 1.92 for men and 1.67 for women. dtMin is the gap between samples, in minutes.

The exponential is the important part. It means a minute at 90% of reserve scores far more than three minutes at 30%. That matches how recovery cost actually behaves.

EffortHRrScore per minute
easy0.450.68
steady0.651.45
threshold0.802.38
very hard0.953.74

The fallback, without heart rate

If a run has no usable heart-rate stream, we do not silently skip it and we do not pretend. We compute:

movingMinutes x (v / vThreshold)^2

v is your average moving speed. vThreshold is your threshold speed if you have set one, or 3.33 m/s by default, which is 5:00/km (8:03/mi).

The quadratic weight is a deliberate approximation of the same shape the exponential gives. It is not as good. Every run tells you which method it used.

What this gets wrong

Three things, stated plainly.

It inherits your maximum and resting heart rates. If your maximum is a formula guess that is 10 bpm too low, every reserve figure is too high and every load is inflated.

It cannot see heat. A run at 30 °C (86 °F) costs more beats at the same pace, so it scores higher. Physiologically that is partly right and partly an artefact.

The pace fallback ignores terrain. A hilly run at slow pace scores low, even though it was hard.

Relative effort

Relative effort is this run's load as a percentile of your own trailing 90 days of runs with a non-zero load. A value of 0.5 is a typical day for you. A value of 1.0 is the hardest in the window.

We use a percentile rather than a ratio on purpose. Percentiles do not blow up when your recent training has been light, and they cannot be dragged around by one outlier session.

Sources

Changelog

  • — First published.