ForHosting KIT · Developer Utilities

Robergs-Landwehr maximum heart rate calculator

The Robergs-Landwehr maximum heart rate calculator estimates an age-based maximum pulse using one specific equation: 205.8 minus 0.685 times age.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

Enter a positive age and receive a result in beats per minute, rounded to two decimal places for convenient use. The calculation is fully offline and deterministic, so identical inputs always produce identical outputs. It does not contact a wearable, request personal records, or make a medical diagnosis. Use the browser version freely for individual calculations, or call the API for $0.002 per request when a project needs repeatable structured results.

What the Robergs-Landwehr estimate represents

Maximum heart rate, often abbreviated as HRmax, is the highest pulse rate a person is expected to reach during maximal physical effort. The Robergs-Landwehr equation estimates that value from age alone: subtract 0.685 times age from 205.8. For example, the calculation for a forty-year-old begins with the same fixed constants and therefore always returns the same estimate. This makes the method useful when a reproducible age-based reference is needed for a worksheet, training application, classroom example, or software test. The result is expressed in beats per minute and rounded to two decimal places. It is important to interpret the number as a population-level estimate, not as a measurement of an individual heart. People of the same age can have different observed maximum rates because physiology, medication, health conditions, testing method, and ordinary biological variation all matter. This calculator deliberately reports one equation rather than combining several formulas, allowing users to identify exactly which model produced the answer and compare it consistently with research, course material, or an existing training plan that specifically names the Robergs-Landwehr method.

How to enter age and understand the output

Provide age in years as a positive finite number. Whole-number ages are common, but a positive decimal is also valid when a more precise age is appropriate. Zero, negative numbers, missing values, text, infinity, and values that are not numbers are rejected with an invalid-input error instead of being silently converted. After validation, the calculator multiplies age by 0.685, subtracts that product from 205.8, and rounds the resulting heart-rate estimate to two decimal places. The response repeats the age, labels the value as max_heart_rate_bpm, identifies the method as robergs_landwehr, includes the equation text, and states the bpm unit. Those explicit fields make the response easy to audit and reduce ambiguity when it is stored or passed into another system. No random adjustment, current date, user profile, external lookup, or network data influences the answer. Consequently, running the same request in a browser, automated test, or API integration produces the same structured result. If another source gives a different number, first check whether it used the Fox, Tanaka, Gulati, or another equation; different age-based models intentionally have different constants and should not be treated as interchangeable.

Using an estimate responsibly

An estimated maximum heart rate is commonly used as a reference for discussing exercise intensity, but it should not be mistaken for a personalized exercise prescription or a clinical stress-test result. Percentages derived from an estimate inherit the uncertainty of the original formula. That matters especially for people taking medicines that affect heart rate, people with cardiovascular or other relevant medical conditions, anyone returning to activity after illness, and anyone who experiences chest pain, faintness, unusual shortness of breath, or palpitations. In those situations, professional medical guidance is more appropriate than increasing effort to match a calculated target. For ordinary analytical use, retain the method name beside the result so future readers know that the value came from Robergs-Landwehr rather than a generic maximum-heart-rate rule. In software, treat validation errors as input problems and ask for a positive numeric age rather than substituting a default. In coaching or education, explain that the estimate supports comparison and planning but does not prove what a particular person can safely reach. The tool stays intentionally narrow: it does not calculate training zones, resting heart rate, heart-rate reserve, recovery, calories, or fitness level, and it does not infer any missing information.

Training software

Add a reproducible Robergs-Landwehr HRmax estimate to an application while retaining the exact method and unit in structured output.

Exercise science education

Demonstrate how a named linear equation converts age into an estimated maximum heart rate without hidden inputs.

Automated test fixtures

Generate deterministic expected values for systems that specifically implement the Robergs-Landwehr formula.

What equation does this calculator use?

It uses HRmax = 205.8 - 0.685 × age and reports the result in beats per minute.

How much does the API calculation cost?

Each successful API request costs $0.002. The calculation is also available free in the browser.

Can I enter a decimal age?

Yes. Any positive finite numeric age is accepted, including a positive decimal.

What happens if age is zero or negative?

The request returns an invalid-input error because age must be positive.

Is this my measured maximum heart rate?

No. It is an age-based population estimate and can differ from an individual's measured maximum heart rate.

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.

POSThttps://api.kit.forhosting.com/health/hrmax-robergs

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.

curl -X POST https://api.kit.forhosting.com/health/hrmax-robergs \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"age":40}'
{
  "age": 40
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "health.hrmax_robergs",
  "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.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Read the full KIT documentation →