Max heart rate Tanaka calculator
Estimates how high your heart rate can climb at full effort using the Tanaka regression, 208 minus 0.7 times age: 180 bpm at age 40. A research-based alternative to the rough two-hundred-twenty-minus-age rule for planning training zones. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Age
- 40
- Hrmax bpm
- 180 bpm
- Precision
- 2
- Equation
- 208 - 0.7 × age
This Tanaka maximum heart rate calculator estimates how high your heart rate in beats per minute is expected to climb during all-out effort, using only your age and the research regression published by Tanaka, Monahan, and Seals. The closed form is two hundred eight minus zero point seven times age, a widely cited alternative to the classic two hundred twenty minus age rule of thumb. The engine is fully offline and deterministic: the same age always yields the same rounded bpm value, with no network calls, no sampling, and no date-dependent shortcuts.
Where Tanaka HRmax fits in training, teaching, and software
Coaches and athletes often start zone planning with an age-predicted ceiling before refining with field tests or lab data, and the Tanaka regression is a common research-based choice when the simple two hundred twenty rule feels too coarse at older ages. Teachers can pre-generate answer keys for modest ages without trusting opaque apps that silently change coefficients or drop decimals.
Developers call the same contract from scripts to seed deterministic test vectors for heart-rate zone UIs, to normalize user-entered ages before intensity demos, or to satisfy programming-challenge statements that demand the Tanaka HRmax formula rather than a multi-model average. Contest and certification practice sometimes needs a fast, offline source of bpm estimates so solutions can be checked without laboratory equipment. Product and education tools use the estimate when a learner types an age and the UI must show a single textbook formula with a clear equation label.
What you can do with it
Training zone starting points
Estimate HRmax from age with the Tanaka equation so athletes and coaches can sketch intensity bands before field testing.
Homework and fitness education
Generate reproducible bpm answers for textbooks, quizzes, and labs that teach the Tanaka maximum heart rate formula.
FAQ
What does the Tanaka max heart rate calculator cost?
It is free in your browser on this page.
What happens if age is zero or negative?
Age must be a positive finite number; non-positive values are not valid for the Tanaka maximum heart rate equation.
Is this a medical measurement of my true max heart rate?
No. Tanaka is a population regression estimate from age alone. True individual maximums vary; use clinical or supervised testing when precision matters for health decisions.
Why are results rounded to a precision?
Default precision is 2 decimal places; you can set precision from 0 to 15.
Why use Tanaka instead of the two-hundred-twenty-minus-age rule?
The Tanaka equation comes from published research by Tanaka, Monahan and Seals, and coaches often prefer it when the simple two-hundred-twenty rule feels too coarse at older ages. Both remain age-based population estimates, not a measured pulse.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/health/hrmax-tanaka \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"age":40}'const res = await fetch("https://api.kit.forhosting.com/health/hrmax-tanaka", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"age": 40
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/hrmax-tanaka",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"age": 40
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/hrmax-tanaka", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"age":40}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"age":40}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/hrmax-tanaka", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"age": 40
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.hrmax_tanaka",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
What the Tanaka HRmax equation means and what the response contains
Maximum heart rate is an estimate of the highest sustainable pulse in beats per minute that a person of a given age can typically reach under maximal exertion. Trainers and textbooks use it as a reference when sketching intensity zones such as sixty to seventy percent of HRmax for easy endurance or eighty to ninety percent for harder intervals, even though true individual peaks still vary with genetics, medications, and fitness. This calculator does not measure your pulse; it applies the closed-form Tanaka population equation to age alone and returns structured numbers you can cite or wire into software. For each request you get the validated age, hrmax_bpm from two hundred eight minus zero point seven times age, unit tagged as bpm, method tagged as tanaka, the precision used for rounding, plus formula and equation string fields that document the model explicitly. There is no wearable sync path and no random noise: the engine either builds a finite bpm estimate or rejects the input with invalid_input. Rejected cases include missing age, non-finite values, and any non-positive age, because zero or negative years are not meaningful for this model.
How age is read and how the Tanaka path stays reproducible
Optional leading plus signs and scientific notation on age strings are allowed when they parse as finite decimals; embedded spaces, hex prefixes, and non-numeric tokens are rejected with a clear message so a bad cell does not become a wrong heart-rate ceiling. The preferred field is age in years, but aliases age_years, years, and a are accepted so spreadsheets, query strings, and typed forms can reuse the same contract. Age must be strictly positive: zero, negative numbers, and non-finite values fail with invalid_input because the Tanaka equation is not defined for non-positive age. An optional precision field, with aliases decimals and dp, chooses how many decimal places to expose for age and the bpm field, defaulting to two and capped at fifteen so JSON goldens stay stable. Pair the free browser run on this page with the priced API when you need the identical mathematical result inside an automated pipeline without re-implementing the Tanaka regression yourself, and keep the formula string in the response when you document which model a dashboard used.
Where Tanaka HRmax fits in training, teaching, and software
On this page the work runs entirely in your browser; through the API each successful lookup costs $0.002, failed validation is not charged, and nothing is stored after the response returns. That split — free interactive exploration and a priced, identical API — matches the rest of the KIT tier-A catalog and lets you move from a classroom demo to an automated pipeline without changing the mathematical result. Pair it with pace, VO2, or other health endpoints when you are building a small lab of free, deterministic fitness helpers, and always treat population formulas as estimates rather than medical diagnosis or a substitute for supervised exercise testing.
Integration use cases
Deterministic software fixtures
Seed unit tests and coaching apps with stable Tanaka HRmax outputs without re-implementing 208 − 0.7×age.
Technical questions
Which formula is used?
Tanaka only: HRmax = 208 − 0.7 × age (beats per minute). This page does not mix in Fox or Gulati; those live on the multi-formula maximum heart rate tool if you need a side-by-side comparison.