tracé

VAM in cycling: the metric, the formula, and its one big limitation

VAM is the cleanest number in climbing analysis: metres of ascent per hour, computable from nothing but elevation and time. It is also routinely misused — because ranking your climbs by VAM tells you that you were strongest on the steepest one, every single time.

What VAM is

VAM is short for velocità ascensionale media, average ascent speed. It is the vertical component of your climbing rate, expressed per hour:

VAM (m/h) = elevation gain (m) ÷ time (h)

600 m of climbing in 45 minutes is 800 m/h. It requires no power meter, no weight and no calibration — only that the file carries timestamps, which is why it is the first real performance number any GPS recording can yield.

One detail matters when a figure is compared against another tool's: which time you divide by. tracé uses the climb's elapsed time, pauses included, on the grounds that a rider who stopped halfway up genuinely did take longer to climb it. A moving-time VAM would be a different number, and the app deliberately keeps only one — there is one VAM in the app, and every feature reads it.

Why VAM cannot compare two climbs

This is the limitation nearly every "my VAM was higher on X" comparison walks into.

A rider putting out identical effort records a higher VAM on the steeper climb. The reason is where the power goes: on a shallow gradient, a larger share of the same watts is spent on air resistance and rolling resistance instead of lifting the rider vertically. Steepen the road and more of the same effort converts into altitude.

So "which climb was I strongest on?" simply cannot be answered by ranking VAM. It needs a quantity that is normalised for gradient.

Ferrari's formula: from VAM to relative power

The cycling convention for exactly this normalisation, attributed to Michele Ferrari:

relative power (W/kg) ≈ VAM (m/h) / (200 + 10 × gradient%)

The denominator grows with gradient, and that is what removes the steepness advantage:

VAMAverage gradientEst. relative power
1000 m/h6%≈ 3.85 W/kg
1000 m/h10%≈ 3.33 W/kg

Same ascent rate, two very different rides: the shallower climb was the harder one.

It needs no rider weight. The power required to lift a rider scales with their mass, so mass cancels — the formula yields watts per kilogram and never watts. That is what makes it usable in a tool with no accounts and no inputs. It also means the formula cannot produce an absolute wattage, and no tool should pretend it can.

This is an estimate, and it is explicitly a rule of thumb. It assumes no wind, no drafting, and a single lumped coefficient for rolling and aerodynamic losses. It models neither bike weight, nor rider frontal area, nor road surface. It is least reliable on shallow gradients, where aerodynamic drag dominates and a light headwind or a fast group changes the answer completely.

tracé's climbs all average at least 3% by construction, which is the low end of where the formula is usable at all — a further reason the figure is labelled "est." wherever it appears, and used only for comparison within one ride, never as an absolute claim about a rider.

Output is not cost: reading heart rate alongside it

Estimated W/kg tells you what a climb produced. Heart rate tells you what it cost, and the interesting rides are the ones where the two disagree — the third climb matching the first's W/kg at 13 bpm more is the finding.

Average heart rate over a climb is worth computing carefully. tracé time-weights it over the climb's moving pairs rather than taking a mean of samples: a recorder that samples faster while stopped would otherwise weight the coffee stop over the col.

Ranking, though, is always by output, never by output-per-heartbeat — because plenty of ride files carry no heart rate at all (most of tracé's own reference recordings don't), and a ranking that changed meaning depending on whether a strap was worn would not be one metric.

Heart-rate recovery after a climb

HRR60 — the drop in heart rate in the 60 seconds after an effort ends — is a genuinely established measure, unlike most things in this corner of the sport. It is defined as peak heart rate at cessation minus heart rate 60 seconds later. Reference values for adults: a fall of 18 bpm or more is a common "good" benchmark, 12–23 bpm is typical, and trained athletes reach around 29 bpm and above. A faster fall indicates a fitter, better-recovered cardiovascular system.

The caveat nobody should paper over. The clinical definition measures recovery after exercise stops. A cyclist cresting a col does not stop — they descend, often pedalling. So a per-climb HRR read off a ride file is a proxy: the heart-rate drop in the 60 s after the summit, over whatever the rider did next. It is comparable between climbs of the same ride, and it should not be read as the clinical figure or compared against the population benchmarks above.

tracé reports no HRR at all when the window cannot answer the question honestly: no heart rate, the ride ending inside the 60 s, samples missing across the window, or another climb starting inside it — a rider already climbing again was never recovering. Peak is read as the highest sample in the climb's closing 30 seconds rather than the single sample at the summit point, so one dropped beat cannot halve the reported recovery.

How the comparison is actually presented

Three numbers in tracé's climb comparison are ours, not conventions — no governing body, coach or paper prescribes them, and they are chosen to be honest rather than precise:

Reading fatigue across the whole ride rather than climb by climb is a different question, with a different method and different confounds — see the companion guide on aerobic decoupling.

Sources

VAM and Ferrari's relative-power formula: Wikipedia — VAM (bicycling), VeloViewer, and Watt Matters, which assesses the formula's error bars against a full physical model. Heart-rate recovery reference values: Medical News Today, ScienceDirect.

Drop in a recorded ride and get per-climb VAM, estimated W/kg and HRR — analyzed in your browser, never uploaded.

Open tracé