VO2 Max Calculator

VO2 max calculator: estimate your maximal oxygen uptake from resting heart rate, age, and fitness level for training zones. Free, runs locally, no signup.

Updates automatically as you type.

Calculated in your browser; your inputs are not sent to us. Privacy

Results will appear here.

General estimate for planning only — not medical advice. Consult a doctor about your specific situation.

Calculation details
Every figure above is calculated locally in your browser from the assumptions shown. No inputs are sent anywhere. See the methodology section below for the formulas used.
Use this resultShare the current inputs, or ask ChatGPT to explain the calculation in context.
Ask an AI to explain this result
Share this result

Review the generated output before relying on it.

This tool runs in your browser. Your calculator inputs and results are never transmitted to us or to ad/affiliate partners. Ads and sponsored links may set third-party cookies to serve and measure them, but they never receive your calculation values. If you explicitly save a scenario, its permitted fields stay in local browser storage until you clear them. See our Privacy Policy.

Use this result

Share the current inputs or ask ChatGPT to explain the calculation in context.

More options
Report a calculation issue
Cooper test VO2 max results compared against the Good threshold
A 2,000 m Cooper run scores 33.4 ml/kg/min, Average for most adults.
Method & verification

How This Tool Works

fact-checked against our calculation methodology

Calculation Method

VO₂ max = (12-min distance - 504.9) ÷ 44.73

Site methodology

No unrelated authority link is added merely to make this page look sourced. Tool-specific external sources are shown only when they directly support the method, rate, or rule.

Assumptions to Verify

  • These tools provide general estimates for planning and education only.
  • They are not medical advice and not a substitute for a qualified healthcare professional.
  • Always consult your doctor or another healthcare provider about your specific situation.

Privacy: The calculation runs in this browser. Shared links contain the page address only, not your inputs or results.

Worked example: a 2,000 m Cooper run

Say you run 2,000 m in 12 minutes. The Cooper formula is (distance in meters - 504.9) / 44.73, so the arithmetic is (2,000 - 504.9) / 44.73 = 1,495.1 / 44.73 = 33.4 ml/kg/min. That lands in the Average band (31 to 37.9) for most adults, roughly the fitness level of someone who does regular but moderate cardio.

For contrast, a 1,600 m result gives (1,600 - 504.9) / 44.73 = 1,095.1 / 44.73 = 24.5, right on the Below average / Poor boundary. Every extra 45 m covered adds about 1.0 ml/kg/min, which is why pacing matters: going out too hard in the first 3 minutes and shuffling the last 3 usually scores worse than an even split. If you know your 12-minute distance only roughly, round down; the formula is linear, so a 100 m overestimate inflates VO2 max by about 2.2.

Where the estimate breaks down

The Cooper test was built on healthy male air force personnel running a measured track, and its standard error is around 2.5 to 3.5 ml/kg/min against lab-measured VO2 max. That means a score of 38 could be a true 35 or a true 41, so treat adjacent rating bands as overlapping, not hard walls. Walkers and treadmill users skew low: the formula assumes continuous running, and treadmill belts slightly shorten effective stride versus outdoor track.

Age and sex matter too. The rating thresholds in this tool are unisex adult bands; a fit 60-year-old at 33 ml/kg/min is above average for her age group, while the same score in a 25-year-old male is clearly Average. Elite distance runners exceed 70, but the formula caps out near a 5,000 m input anyway (about 100.5), so it never reaches that range. Weight changes also shift the number without changing your engine: losing 5 kg of body mass mechanically raises the per-kilogram score even at identical oxygen uptake. Re-test under the same conditions, ideally same track, same time of day, after the same warm-up, and track the trend rather than the single reading.