VO2 Max API
VO2 Max & Fitness Metrics data from every wearable, in one schema
Cardiorespiratory fitness estimates, fitness age and walk-test distance across platforms.

3/6
providers connectable today
5
webhook event types
Canonical unit
ml/kg/min for VO2 max; years for age estimates; metres for walk test
What vo2 max & fitness metrics looks like through one API
VO2 max is the closest thing consumer wearables have to a fitness benchmark, and it is an estimate derived from the relationship between pace and heart rate during outdoor activity — not a laboratory measurement. It updates only when a user does the kind of activity the model can read, which means it can sit unchanged for weeks and then jump.
WearLink carries VO2 max as a series alongside the derived age estimates that vendors build on top of it: cardiovascular age and Garmin fitness age are separate streams because they are separate proprietary transformations, not the same number rounded differently.
Six-minute walk test distance is included because it comes from a different tradition entirely — it is a recognised clinical mobility assessment that Apple Health estimates passively, and it is the metric most relevant to older or lower-mobility populations where VO2 max never updates because the qualifying activity never happens.
Where providers disagree
VO2 max only updates on qualifying activity
Most models need steady outdoor running or walking with GPS and heart rate. A cyclist, swimmer or treadmill user may see no update for months. A stale value is not a bug; check the sample timestamp before presenting it as current.
Fitness age is a marketing transformation
Cardiovascular age and fitness age are vendor functions of VO2 max and demographics, computed differently by each. They are not comparable and should not be charted together.
Estimates carry real error against lab testing
Wrist-based VO2 max estimates deviate meaningfully from laboratory measurement, with error largest at the extremes of fitness. They are useful for tracking direction within a user, not for classifying someone against a population norm.
Changing device or profile resets the estimate
VO2 max models are anchored to the device that produced them. A user who switches from one brand to another starts a fresh estimate, often several points different, with no indication that the discontinuity is a device change rather than a fitness change. Editing profile weight or age also shifts the estimate retroactively on some platforms. Before showing a trend line, check whether the samples came from the same source — a step change at a device switch is the most common false alarm in this data.
Webhook events for vo2 max & fitness metrics
Summary: fitness_metrics.created
Series streams:
series.vo2_max.createdseries.cardiovascular_age.createdseries.garmin_fitness_age.createdseries.six_minute_walk_test_distance.created
The full catalogue is in the event catalogue.
FAQ
VO2 Max & Fitness Metrics — frequently asked questions
Why has a user's VO2 max not changed in weeks?
Is wearable VO2 max accurate?
What is six-minute walk test distance doing in a fitness API?
Get vo2 max & fitness metrics from every device your users own
Free for up to 3 connected users. No credit card. Your first API key is issued the moment you sign up.