Free tool
VO2max calculator
Estimate your VO2max from a race, a steady run with heart rate, or five hard minutes on a bike, with the same equations the hybridAF app uses.
Estimated VO2max
Enter a race, a steady run with heart rate, or your 5-minute power. Each one you add tightens the range.
An estimate from field equations, not a lab test. A training metric, not a medical assessment.
The hybridAF app works this out every day from your runs, heart rate and rides, as the engine side of your Hybrid Score.
Download on the App StoreThe math runs in your browser. Nothing you type is sent or saved.
01
What VO2max is
VO2max is the most oxygen your body can take in and use per minute in all-out exercise, divided by your bodyweight: millilitres per kilo per minute, or ml/kg/min. It is the ceiling of your aerobic engine, and the standard measure of cardiorespiratory fitness, which the American Heart Association calls a clinical vital sign.6
It is measured directly only in a lab, with a mask on, running or riding to exhaustion. Everything else, this calculator and your watch included, is an estimate from an equation. That is fine as long as the estimate says how sure it is, which is why every result here comes with a range.
In the hybridAF app, your VO2max graded against your age and sex is the Engine Index, the engine half of your Hybrid Score.
02
How the calculator works
Race pace
Daniels and Gilbert’s VDOT reads a VO2max off a race: the oxygen cost of the pace you held, divided by the share of VO2max a runner can sustain for that long.10 Climbing is converted to flat-equivalent distance with the measured cost of running on slopes.11 With only a total climb to go on, we assume a course that finishes where it started, every metre up matched by one down at 5 percent. That assumption is ours.
Add the race’s average heart rate and it can confirm the effort was all-out. If it does not, or there is none, the race only proves you are at least that fit, so it counts as a floor: it lifts the estimate when it is the highest reading, and is set aside when your other numbers say you are fitter.
Steady run heart rate
The share of your heart-rate reserve a steady run uses tracks the share of your oxygen reserve,12,13 so the pace and the heart rate it cost extrapolate to a ceiling. The oxygen cost of the pace comes from Daniels’ running curve, not the common ACSM equation, which overestimates trained athletes.14 It reads runs between 60 to 85 percent of heart-rate reserve and 15 to 75 minutes long: easier than that, a few beats of watch error swing the answer too far.
It needs your max heart rate. If you leave it blank, your age predicts it as 208 minus 0.7 times age,15 which is typically off by about 11 beats a minute,16 and the range widens to match. A max you type in is treated as measured.
5-minute power
Best 5-minute power per kilo of bodyweight predicts VO2max in road cyclists: VO2max = 16.6 + 8.87 × watts per kilo.17 The equation is for an all-out 5 minutes. The app only counts a ride when heart rate shows it was near-maximal; here we take your word for it, so a ride counts but never overrules a race that heart rate confirms.
Resting heart rate ratio
Max heart rate divided by resting heart rate, times 15.3 for men or 14.5 for women, predicts VO2max in trained adults in a lab.20,21 We show it and do not count it: on our own athletes it read higher than their training data every time we could check, most likely because a wrist resting heart rate runs below the lying-down value the method was built on. It also never stands alone, so it only appears beside an estimate from training.
Putting them together
Each estimate is weighted by the inverse of its error, so the precise ones count for more. When heart rate confirms a hard race, it anchors the result: any other method more than two combined errors away is set aside rather than averaged in. What you demonstrably ran outranks what a heart rate implies. The way we combine the methods is our design, and the science page says so.
03
How accurate it is
The error each method carries, as one standard deviation (SD) in ml/kg/min. These are the numbers the app weights by, sourced where a verified figure exists and labelled as ours where it does not.
| Method | ±1 SD | Where it comes from |
|---|---|---|
| Race pace, all-out confirmed by heart rate Our choice. No study we could verify reports VDOT’s error against lab VO2max. | 4.5 | Our choice. No study we could verify reports VDOT’s error against lab VO2max. |
| Race pace, not confirmed Our choice, wider because the effort may not have been all-out. | 5.5 | Our choice, wider because the effort may not have been all-out. |
| Steady run heart rate Exercise-based estimates in the 2022 INTERLIVE meta-analysis: 95% limits of ±9.83 ml/kg/min.18 The error in your max and resting heart rate is added on top, and one or two runs count 25% wider (our choice). | 5.0+ | Exercise-based estimates in the 2022 INTERLIVE meta-analysis: 95% limits of ±9.83 ml/kg/min.18 The error in your max and resting heart rate is added on top, and one or two runs count 25% wider (our choice). |
| 5-minute power Sitko 2022’s own fit, R² 0.61 to 0.77, in road cyclists.17 | 5.0 | Sitko 2022’s own fit, R² 0.61 to 0.77, in road cyclists.17 |
| Resting heart rate ratio Resting-based estimates in the same meta-analysis, bias included.18 Not counted, for the reason above. | 8.1 | Resting-based estimates in the same meta-analysis, bias included.18 Not counted, for the reason above. |
| Apple Watch reading (in the app) Lambe 2025: a mean bias of about 6 below the lab, folded into the error rather than subtracted.19 | 8.7 | Lambe 2025: a mean bias of about 6 below the lab, folded into the error rather than subtracted.19 |
A max heart rate you type in is taken as accurate to 3 beats a minute (our choice); one predicted from age, to 10.8. The methods read the same heart, so their errors are not independent: we assume they correlate at 0.3 when combining them, also our choice. The range on your result is plus or minus one combined standard error. If the errors behave as assumed, the true value sits inside it about two times in three.
04
What is a good VO2max for your age?
These are the cut points the calculator and the app grade against, drawn from established fitness registries9 and rounded. Each sits on the app’s one ladder: untrained scores 20, novice 40, intermediate 60, advanced 80 and elite 95, with the Engine Index interpolated in between and capped at 100. Intermediate is what the app treats as typical for the age band, and it is also what fitness age is read against.22
| Level | Under 30 | 30-39 | 40-49 | 50-59 | 60+ |
|---|---|---|---|---|---|
| Untrained | 34 | 31 | 29 | 26 | 22 |
| Novice | 42 | 39 | 36 | 33 | 30 |
| Intermediate | 48 | 45 | 42 | 39 | 35 |
| Advanced | 54 | 51 | 48 | 45 | 41 |
| Elite | 60 | 57 | 54 | 51 | 47 |
| Level | Under 30 | 30-39 | 40-49 | 50-59 | 60+ |
|---|---|---|---|---|---|
| Untrained | 28 | 26 | 24 | 21 | 18 |
| Novice | 35 | 33 | 31 | 28 | 24 |
| Intermediate | 41 | 39 | 36 | 33 | 30 |
| Advanced | 47 | 45 | 42 | 38 | 35 |
| Elite | 53 | 50 | 47 | 44 | 41 |
The cut points are approximate on purpose and will be recalibrated as real athlete data comes in. Read them as bands, not verdicts.
05
How to raise it
The reliable lever is aerobic training, done consistently. Across 28 controlled trials in healthy adults, both steady endurance training and high-intensity intervals raised VO2max, and intervals raised it somewhat more (Milanović 2015). In one trial of 40 moderately trained men, four 4-minute intervals at 90 to 95 percent of max heart rate, three days a week for eight weeks, raised VO2max more than the same total work done at an easy or threshold pace (Helgerud 2007).
Two honest caveats. People respond very differently to the same program, and much of that is inherited: in the HERITAGE study, 20 weeks of identical training left some people with little or no gain and gave others large ones (Bouchard 1999). And every estimate carries noise, so retest the same way, on a similar course in similar conditions, and watch the trend rather than one reading. We do not promise a number.
06
Questions
How is VO2max calculated?
In a lab it is measured directly: you run or ride to exhaustion while a mask measures the oxygen you breathe in and out. Everything else is an estimate from an equation. This calculator runs the equations the hybridAF app uses: race pace (Daniels and Gilbert's VDOT), a steady run's heart rate against its pace, and your best 5-minute cycling power (Sitko 2022). Each estimate carries an error, and they are blended by giving the more precise ones more weight.
Can I calculate VO2max from a 5K time?
Yes, if the 5K was close to all-out. Daniels and Gilbert's VDOT turns a race time into the VO2max that pace implies, from the oxygen cost of the pace and how long you held it. A 20:00 5K works out to about 49.8 ml/kg/min. Climbing is converted to flat-equivalent distance. If the race was not all-out, the result is a floor: you are at least that fit.
How do I estimate VO2max from heart rate?
Use a steady run of 15 to 75 minutes with its average pace and heart rate. The share of your heart-rate reserve a run uses tracks the share of your oxygen reserve (Swain 1998), so pace and heart rate together extrapolate to a maximum. It needs your max heart rate, or your age to predict it, which widens the range. The resting heart rate ratio (Uth 2004) is shown too but not counted, because on wrist readings it ran high in our own data.
Is Apple Watch VO2max accurate?
It is a useful estimate, not a precise one. In a 2025 validation study of 30 adults (Lambe and colleagues), Apple Watch read about 6 ml/kg/min below lab-measured VO2max on average, with wide differences between people. A 2022 meta-analysis of consumer wearables found exercise-based estimates within about 10 ml/kg/min of lab values for 95 percent of people. The hybridAF app counts a watch reading as one input with that error, so it weighs less than a well-measured race.
What is a good VO2max for my age?
It depends on age and sex. On the reference table this calculator and the hybridAF app grade against, the middle of the range (intermediate) is 48 ml/kg/min for men and 41 for women under 30, 42 and 36 in their 40s, and 35 and 30 at 60 and over. The elite anchor under 30 is 60 for men and 53 for women. The full table is on this page.
How can I improve my VO2max?
Train your aerobic system consistently and include hard intervals. Across 28 controlled trials in healthy adults, both steady endurance training and high-intensity intervals raised VO2max, and intervals raised it somewhat more (Milanović 2015). In one trial, four 4-minute intervals at 90 to 95 percent of max heart rate, three days a week, raised VO2max more than the same total work done at easier intensities (Helgerud 2007). How much any one person responds varies widely.
How accurate is this calculator?
Each result comes with a range of one combined standard error, built from each method's published error or, where no verified figure exists, a stated choice of ours. A single race gives a range of about 5 to 6 ml/kg/min either way; two methods that agree narrow it. It is a field estimate, not a lab test, and a training metric, not a medical assessment.
Or let the app keep it current.
hybridAF estimates your VO2max from the runs, heart rate and rides it already syncs, updates it as you train, and grades it as the engine side of your Hybrid Score, next to your strength.