ForHosting KIT · Health & fitness

Calories burned by heart rate

A 30-year-old man of 70 kg averaging 140 bpm for 45 minutes burns more than 500 kcal, worked out from his pulse instead of a guessed activity. Enter heart rate, age, weight, sex and duration. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Heart rate
140
Age
30
Weight
70
Sex
Male
Duration
45
You get
Calories burned
572.137786807 kcal
Calories kcal
572.137786807
Heart rate bpm
140
Weight (kg)
70

Heart-rate calorie estimates answer a search that MET tables cannot: how many kilocalories this session cost when you already have a measured pulse, not a named activity. Wearables, gym consoles, and chest straps report beats per minute; coaches still need a transparent total they can log. This calories-burned-by-heart-rate calculator applies the published Keytel linear equations that combine heart rate, age, body weight, biological sex, and workout duration into a kilocalorie total for the bout.

How the Keytel heart-rate calorie formula works

The Keytel equations estimate energy expenditure from a measured heart rate rather than from a named activity MET value. They were fitted on submaximal exercise with heart-rate monitoring and treat biological sex as a change of coefficients, not as a cosmetic label. For males the kilojoule rate per minute is minus 55.0969 plus 0.6309 times heart rate in beats per minute plus 0.1988 times body weight in kilograms plus 0.2017 times age in years.

For females the kilojoule rate is minus 20.4022 plus 0.4472 times heart rate minus 0.1263 times weight plus 0.074 times age. Divide that rate by 4.184 to convert kilojoules into kilocalories per minute, then multiply by workout duration in minutes to obtain the bout total. The conversion constant is the thermochemical factor that maps one kilocalorie to 4.184 kilojoules, so the calculator does not invent a second energy unit.

Age and weight must also be positive and finite because they enter the linear combination directly. Sex must resolve to male or female. When a physiologically low but still positive heart rate would drive the linear combination negative, the calculator clamps the minute rate at zero rather than reporting a negative calorie burn, which cannot occur as energy expenditure.

Where a heart-rate calorie calculator earns its keep

Personal trainers and strength coaches estimate session cost when a client trained with a chest strap or a watch that reports average heart rate but not a MET table row. Endurance athletes compare easy aerobic rides against threshold intervals using the same body weight and age so the difference is the pulse, not a guessed activity code. Physical-education teachers and sports-science labs assign homework that applies the Keytel male and female coefficients so students see sex, mass, age, and intensity as separate levers.

Nutrition coaches combining food logs with exercise estimates want a transparent kilocalorie number rather than a black-box model that drifts between versions. Search intent for calories burned by heart rate is distinct from MET calories, from running-distance calories, and from heart-rate zone calculators that never return energy. Treat basal metabolic rate, TDEE with activity multipliers, VO2-based energy equations, and named-activity MET directories as separate product intents rather than overloading this heart-rate calorie page with every related health formula.

Keep requests small, pin the rounded totals in tests, and you get reproducible energy estimates for widgets, recap pages, and edge workers without standing up a physiology lab of your own.

Wearable workout logs

Turn average heart rate, age, weight, sex, and session minutes into a consistent kcal total for training diaries when the device did not publish a MET.

Coaching and class estimates

Compare two athletes on the same course by swapping only pulse and body mass, using the Keytel male or female coefficients as the sex contract.

What happens if heart rate or duration is zero or negative?

Heart rate and duration must be positive numbers; zero or negative values are rejected and are not billed.

Why do male and female results differ for the same pulse?

Keytel fitted separate linear coefficients by sex. Males use a larger heart-rate slope and a positive weight term; females use a smaller slope and a negative weight term. Sex is not a cosmetic label.

Is this the same as a MET calories calculator?

No. MET calculators multiply a table intensity by kilograms and hours. This landing estimates energy from a measured heart rate plus age, weight, sex, and duration — a different search intent.

How are calories calculated from heart rate?

With the Keytel equations. For men, the energy rate per minute is -55.0969 + 0.6309 × heart rate + 0.1988 × weight + 0.2017 × age, in kilojoules; divide by 4.184 for kilocalories and multiply by the minutes.

Which heart rate should I enter?

Enter the average exercise heart rate your watch, chest strap or gym console reported for the session, in beats per minute, together with the duration of that same session. Values up to 250 beats per minute are accepted.

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/sports/calories-burned-by-heart-rate

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/sports/calories-burned-by-heart-rate \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"heart_rate":140,"age":30,"weight":70,"sex":"male","duration":45}'
{
  "heart_rate": 140,
  "age": 30,
  "weight": 70,
  "sex": "male",
  "duration": 45
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "sports.calories_burned_by_heart_rate",
  "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.

max_heart_rate250
max_age120
max_weight_kg500
max_duration_min10080
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.

Heart rate and duration must be positive numbers; zero or negative values fail with invalid_input instead of inventing a burn. Successful calls cost $0.002; invalid input is not billed.

How the Keytel heart-rate calorie formula works

Heart rate and duration must be strictly positive finite numbers: a zero pulse, a negative session length, or a non-numeric string fails with invalid_input rather than a silent absolute value. The pipeline is deterministic floating-point arithmetic with no random seeds, no wall-clock timestamps, and no outbound network, so identical inputs always produce identical JSON. This is an estimate of activity energy cost, not a metabolic-chamber measurement and not a promise of fat loss, which also depends on diet, recovery, and total daily expenditure.

Input contract, response shape, and validation

Age or weight that is not positive, sex that does not resolve to male or female, and values above the published maxima of two hundred fifty beats per minute, one hundred twenty years, five hundred kilograms, or ten thousand eighty minutes are likewise rejected. A typical check is a thirty-year-old male at seventy kilograms, one hundred forty beats per minute, for forty-five minutes. Wire the free browser form for coaching logs, then call the identical contract from scripts when you need bulk session estimates. POST a JSON body with five required fields. heart_rate is the measured exercise pulse in beats per minute, a finite number strictly greater than zero, with aliases hr, bpm, pulse, and heart-rate. age is age in years, finite and strictly greater than zero, with aliases age_years and years. weight is body mass in kilograms, finite and strictly greater than zero, with aliases weight_kg, kg, mass, and body_weight. sex is biological sex for the Keytel coefficients and must be male or female; aliases gender, m, f, man, and woman are accepted and canonicalized. duration is workout length in minutes, finite and strictly greater than zero, with aliases duration_min, duration_minutes, minutes, time, and mins. Each numeric field may arrive as a JSON number or as a numeric string. Missing fields, empty strings, non-finite values, NaN, Infinity, and any non-positive heart_rate or duration fail with invalid_input naming the field and are not billed. On success the body includes calories_burned and calories_kcal as the same cleaned total, unit set to kcal, cleaned heart_rate_bpm, age, weight_kg, canonical sex, duration_minutes, kcal_per_minute, kcal_per_hour, a formula string documenting the sex-specific Keytel identity, and method keytel_2005. Pricing for successful API calls is the published base of $0.002 per item; validation failures do not consume prepaid balance.

Where a heart-rate calorie calculator earns its keep

Curriculum authors building interactive lessons need the same JSON shape offline and online so worksheets and auto-graders stay aligned. Because this capability is a pure parse engine, API pricing is the published base of $0.002 per successful item and failed validation does not consume balance.

App and API session burns

Bulk-estimate calories for uploaded heart-rate rows with the same formula as the free browser tool; reject non-positive heart rate or duration with invalid_input.

How do I estimate calories burned from heart rate?

Send heart_rate in bpm, age in years, weight in kilograms, sex (male or female), and duration in minutes. The API applies the Keytel 2005 equations, converts kJ/min to kcal with 4.184, and returns the bout total.

What does the calories burned by heart rate calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →