Home › Health › Heart Rate Zone Calculator
Heart Rate Zone Calculator
Estimates maximum heart rate from age (Tanaka or Fox formula) and computes the five training zones, using the Karvonen heart-rate-reserve method when resting heart rate is supplied.
When to use
You need training heart-rate ranges (zones 1–5) for an adult from age, optionally refined by resting heart rate.
Do not use when: The person takes heart-rate-limiting medication (e.g. beta blockers) or has a measured maximum heart rate from a test (use that instead of an age formula).
Formula
max_hr = 208 − 0.7·age (Tanaka) or 220 − age (Fox). Percent-of-max: zone = max_hr × %. Karvonen: target = (max_hr − resting) × % + resting. Zones: 50–60, 60–70, 70–80, 80–90, 90–100%.
Inputs
| Parameter | Type | Unit | Required | Description |
|---|---|---|---|---|
age_years | number | years | yes | Age in years. Range: ≥ 5, ≤ 120 |
resting_heart_rate | number | bpm | no | Optional resting heart rate; when given, zones use the Karvonen (heart-rate reserve) method. Range: ≥ 25, ≤ 150 |
max_hr_formula | enum: tanaka | fox | default tanaka | Formula for maximum heart rate. Tanaka (2001) is more accurate across ages than the classic 220 − age. |
Outputs
| Output | Type | Unit | Description |
|---|---|---|---|
max_heart_rate | number | bpm | Estimated maximum heart rate. |
method | string | 'karvonen' when resting HR provided, otherwise 'percent_of_max'. | |
zones | list | Five zones with intensity range, lower and upper bpm and purpose. |
Example
Age 30, Tanaka, no resting HR: {"age_years":30} → {"max_heart_rate":187,"method":"percent_of_max"}
Age 40, resting 60, Fox: {"age_years":40,"resting_heart_rate":60,"max_hr_formula":"fox"} → {"max_heart_rate":180,"method":"karvonen"}
GET https://tttkmbb.com/api/v1/calculate/heart-rate-zones?age_years=30
Machine access
- API:
GET https://tttkmbb.com/api/v1/calculate/heart-rate-zones(query parameters) orPOSTwith a JSON body{"inputs": {...}} - Schema: https://tttkmbb.com/api/v1/calculators/heart-rate-zones · Markdown: https://tttkmbb.com/health/heart-rate-zones.md · JSON definition: https://tttkmbb.com/health/heart-rate-zones.json
- MCP: server
https://tttkmbb.com/mcp, toolrun_calculator with calculator_id="heart-rate-zones" - OpenAPI operationId:
calculate_heart_rate_zones - Freshness:
static. Authentication: none. Rate limit: fair use (see rate limits).
Sources
FAQ
Why use Karvonen?
It scales zones by heart-rate reserve (max − resting), so fitter people with low resting rates get more realistic targets than a plain percentage of max.
How accurate are age formulas?
Individual maximum heart rate varies by about ±10–12 bpm around any age formula. A supervised maximal test gives the real value.
Related calculators
- Running Pace Calculator — Pair heart-rate zones with pace targets.