Cycling

FTP is a population average. It only matches reality at E ≈ 0.62.

Functional Threshold Power assumes all riders can sustain their lactate threshold for approximately 60 minutes. This is wrong — threshold duration depends on endurance. TrueZone replaces FTP with Lactate Threshold Power (LTP), an individualized metric that separates threshold intensity from threshold duration.

FTP critique

FTP is a 60-minute assumption. LTP is your actual threshold.

Threshold duration depends on endurance — ~35 min for novices, 140+ for elites. TrueZone replaces a population assumption with an individualized fit.

297
Cyclists validated
13,887
Sessions analyzed
6.0 bpm
Median MAE
99.5%
Session success rate
42 avg
Sessions per cyclist

The Problem

FTP assumes everyone's threshold lasts 60 minutes. It doesn't.

Functional Threshold Power is defined as the highest power a rider can sustain for approximately one hour. But how long a rider can actually sustain their lactate threshold depends on their aerobic endurance — and that varies enormously between individuals. FTP conflates two independent physiological qualities: threshold intensity and threshold duration.

FTP overestimates low-endurance riders

38 cyclists with E < 0.65 cannot sustain their lactate threshold for 60 minutes. FTP assumes they can, inflating their threshold estimate and setting zones too high.

FTP underestimates high-endurance riders

186 cyclists with E > 0.75 can sustain threshold well beyond 60 minutes. FTP caps their capacity, setting zones too low and leaving performance on the table.

FTP is only correct at E ≈ 0.62

The 60-minute assumption matches reality for riders whose endurance puts their lactate threshold duration at 60 minutes. Under the full TZPD model this is E ≈ 0.62. For everyone else — the majority — it is systematically wrong.

The Solution

Lactate Threshold Power is individualized.

TrueZone separates threshold intensity from threshold duration. LTP is the power at your actual lactate threshold. How long you can sustain it depends on your endurance (E). The model derives both from ordinary ride data — no 20-minute test, no ramp protocol, no calibration ride.

FTP gets two things wrong, not one. First, the threshold power itself (because duration is assumed, not measured). Second, the zone boundaries around it. FTP-based zones use fixed percentages of FTP — the same ratios for every rider. But endurance shifts where thresholds actually fall relative to each other. A high-endurance rider has their aerobic zones compressed closer to threshold; a low-endurance rider has them spread further apart. TrueZone derives zone boundaries geometrically from each individual's threshold alignment, not from population averages.

LTP sustainable duration by endurance

E = 0.40Low endurance
~36 min
E = 0.50Below average
~46 min
E = 0.62Population average
~60 min
E = 0.75Above average
~81 min
E = 0.90High endurance
~114 min

FTP's fixed 60-minute assumption is only correct at E ≈ 0.62. For the majority of cyclists, it is systematically biased. LTP eliminates this bias by modeling threshold intensity and duration independently.

FTP vs LTP across the endurance spectrum

204060801001201401600.40.50.60.70.80.9Endurance (E)LTP duration (min)FTP overestimatescan't sustain 60 minFTP underestimatessustains well beyond 60 minFTP assumes 60 min
Actual LTP duration
FTP assumption (60 min)

The Zone Problem

Even if FTP were correct, the zones would still be wrong.

Every platform uses the same fixed percentages of FTP to define power zones. Zone 2 is always 56–75%. Zone 4 is always 91–105%. But these boundaries assume everyone's physiology distributes power the same way. It doesn't.

A high-endurance rider's zones compress near the top — their aerobic system dominates, and the gaps between thresholds are narrow. A low-endurance rider's zones spread wide from bottom to top. Same FTP, completely different zone shapes. Fixed percentages can't capture this.

TrueZone's zone boundaries are set at actual metabolic thresholds: Fatmax, LT1, LT2, vVO₂max—not arbitrary percentages of a single number. Each boundary corresponds to a real physiological transition where the body shifts from one energy system to another.

Standard zones vs individualized zones — adjust endurance to compare

Endurance
50%

Standard power zones (fixed % of FTP — same for everyone)

Z1
Z2
Z3
Z4
Z5
Z6
0%50%100% FTP150%

TrueZone individualized power zones (E = 50% — LTP below FTP)

Z1
Z2
Z3
Z4
Z5
Z6
0%50%100% FTP150%

Low endurance (50%): Zones spread wide below threshold. This rider's real lactate threshold is well below FTP, so every standard zone overestimates their intensity. What Zwift calls “Zone 2” is actually above their real threshold — they're burning carbs when they think they're building base.

Validation

297 cyclists. 13,887 sessions. Median MAE 6.0 bpm.

Validated on the GoldenCheetah OpenData dataset — real-world cycling data from a diverse population of riders. The model achieved a 99.5% session success rate, with 71% of riders reaching full parameter convergence.

0.771

Mean endurance (E)

The GoldenCheetah population skews toward experienced cyclists. Mean E well above the 0.62 population average confirms that FTP systematically underestimates their threshold durability.

456 W

Mean peak aerobic power

Peak aerobic power (~VO₂max intensity) derived from the model. Sprint power is estimated separately using an endurance-dependent multiplier.

6.0 bpm

Median MAE

Median absolute error in heart rate prediction across all fitted sessions. Comparable to running validation and sufficient for accurate zone and threshold derivation.

Bayesian Learning

Parameters converge from ordinary rides.

No FTP test required. Each ride refines the model's estimate of the rider's endurance. The confidence interval narrows as evidence accumulates, stabilising within 3–10 rides.

Cyclist — 49 rides, GoldenCheetah dataset
0.750.800.850.900.951.0011121314149SessionEndurance (E)
Bayesian convergence
Confidence interval

Interactive

Power-duration explorer

Set your lactate threshold power and endurance to explore how the model predicts sustainable power across durations. See how LTP and FTP diverge as endurance moves away from the population average.

Lactate Threshold Power
250 W
Endurance
70%

LTP vs FTP

W/kg shown @ 75 kg
250 W· 3.33 W/kg

LTP (Lactate Threshold)

Sustainable for 1:12:08

260 W· 3.47 W/kg

FTP (60-minute power)

Sustainable for exactly 60 min

349 W· 4.65 W/kg

VO₂max power

~5 min sustainable

1349 W· 17.99 W/kg

Sprint power (est.)

3.0× aerobic peak

This rider's high endurance (E = 0.70) means they can sustain their lactate threshold for 72 minutes — well beyond 60. Their true 60-minute power is 10 W above LTP. FTP underestimates this rider's threshold durability.

Power-duration curve

Predicted sustainable power from 30 sec to 3 hr, derived from your lactate threshold power and endurance via the full TZPD inversion. LTP sits where the rider can actually sustain threshold; FTP sits at 60 min. Under the full TZPD model they only coincide at E ≈ 0.62; the empirical population mean (E ≈ 0.70) puts FTP slightly above LTP. Sub-30-sec sprint power is summarized in the iLevel zones table below (Pmax / Pmax-FRC / FRC).

20030040050060070030s1m2m5m15m1h3hDuration (log scale)Power (W)FTP 260 W60-min powerLTP 250 Wsustains 1.2 hr
Your curve
Population average (E = 0.70)
LTP — actual lactate threshold
FTP — 60-minute power assumption
DurationPower% of LTP
5 min449 W180%
10 min387 W155%
20 min332 W133%
30 min303 W121%
60 min(FTP)260 W104%
90 min238 W95%
2 hr224 W90%
3 hr206 W82%

Power zones (Coggan iLevels)

Hunter Allen's individualized iLevel zones, used in WKO5/TrainingPeaks and surfaced by Zwift workouts. Power ranges are computed from FTP per the standard %-of-FTP boundaries; Z5–Z7 are short-duration interval zones with characteristic time ranges. W/kg shown at the same 75 kg reference mass used above.

ZoneiLevel% FTPPower (W)W/kgDuration
Z1Recovery0–56%0–1460.00–1.94All day
Z2Endurance56–76%146–1981.94–2.64Multi-hour
Z3Tempo76–88%198–2292.64–3.0560–180 min
Z4aSweet Spot88–95%229–2473.05–3.3030–90 min
Z4Threshold (FTP)95–105%247–2733.30–3.64~60 min
Z5FRC/FTP105–150%273–3903.64–5.211:15–13:48
Z6FRC150–215%390–5605.21–7.460:23–1:15
Z7aPmax/FRC215–290%560–7557.46–10.060:08–0:23
Z7Pmax290%+755+10.06+<0:08

Replace estimated FTP with measured LTP.

Give your cyclists individualized threshold power and endurance-adjusted zones. TrueZone is SDK and API ready today.