Required for Karvonen formula. Measure first thing in the morning.
Results Summary
Estimated Max Heart Rate:0 BPM
Heart Rate Reserve:0 BPM
Zone
Intensity
Target Heart Rate (BPM)
Benefit
Optimizing Performance with Heart Rate Training
Heart rate training uses your specific cardiovascular physiology to prescribe exercise intensity. Instead of training at a random pace, you divide your effort into five specific zones based on your maximum heart rate (MHR). This calculator allows you to determine these zones using three different scientific methods.
Calculation Methods Explained
Standard (Fox Formula): The most common formula (220 – Age). It provides a simple baseline but can be less accurate for older adults or very fit individuals.
Tanaka Formula: Considered more accurate for a wider age range. It uses the equation (208 – 0.7 × Age).
Karvonen Method: The gold standard for athletes. It takes your Resting Heart Rate (RHR) into account to calculate your Heart Rate Reserve (HRR). This method customizes the zones based on your actual fitness level, not just your age.
Pro Tip: To get the most accurate results with the Karvonen method, measure your resting heart rate immediately after waking up, before getting out of bed, for three consecutive days and take the average.
Understanding the 5 Training Zones
Zone 1: Very Light (50-60%)
Used for warm-ups, cool-downs, and active recovery. Training in this zone improves overall health and helps recovery from harder workouts without adding fatigue.
Zone 2: Light (60-70%)
Often called the "Fat Burning Zone." Here, your body learns to use fat as its primary fuel source. It builds basic endurance and aerobic capacity. Endurance athletes spend up to 80% of their training time here.
Zone 3: Moderate (70-80%)
The aerobic zone where you improve blood circulation and skeletal muscle efficiency. Rhythmic breathing becomes harder here, and lactate begins to accumulate in the bloodstream.
Zone 4: Hard (80-90%)
Also known as the "Anaerobic Threshold." Training here improves your ability to sustain high-speed efforts and increases your VO2 max. It is physically demanding and mentally taxing.
Zone 5: Maximum (90-100%)
Redline effort usable for very short bursts (sprints or intervals). This zone develops maximum speed and neuromuscular power but carries a higher risk of injury if overused.
When to Re-Test
As you get fitter, your resting heart rate will likely drop, which changes your Heart Rate Reserve. If you are using the Karvonen method, we recommend re-calculating your zones every 4 to 8 weeks to ensure your training intensities remain accurate.
function toggleRHRField() {
var method = document.getElementById('hr-method').value;
var rhrGroup = document.getElementById('rhr-group');
if (method === 'karvonen') {
rhrGroup.style.display = 'block';
} else {
rhrGroup.style.display = 'none';
}
}
function calculateHeartZones() {
var ageInput = document.getElementById('hr-age');
var rhrInput = document.getElementById('hr-rhr');
var method = document.getElementById('hr-method').value;
var age = parseFloat(ageInput.value);
var rhr = parseFloat(rhrInput.value);
// Validation
if (isNaN(age) || age 120) {
alert("Please enter a valid age between 1 and 120.");
return;
}
var maxHR = 0;
var zones = [];
// Calculate Max HR based on Method (except Karvonen logic is handled inside zone gen)
if (method === 'tanaka') {
maxHR = 208 – (0.7 * age);
} else {
// Standard and Karvonen both use 220-age as base MaxHR usually,
// though Karvonen applies it differently. We will use Standard MaxHR for Karvonen base
// unless specified otherwise, but standard implies 220-age.
maxHR = 220 – age;
}
maxHR = Math.round(maxHR);
// Check RHR for Karvonen
if (method === 'karvonen') {
if (isNaN(rhr) || rhr 120) {
alert("Please enter a valid Resting Heart Rate (typically between 30 and 120).");
return;
}
if (rhr >= maxHR) {
alert("Resting Heart Rate cannot be higher than or equal to Max Heart Rate.");
return;
}
}
// Generate Zones
// Array structure: [Min%, Max%, Name, Description, Class]
var zoneDefs = [
[0.50, 0.60, "Zone 1", "Warm up / Recovery", "zone-row-1"],
[0.60, 0.70, "Zone 2", "Fat Burning / Endurance", "zone-row-2"],
[0.70, 0.80, "Zone 3", "Aerobic Fitness", "zone-row-3"],
[0.80, 0.90, "Zone 4", "Anaerobic Threshold", "zone-row-4"],
[0.90, 1.00, "Zone 5", "Maximum Effort", "zone-row-5"]
];
var html = "";
for (var i = 0; i < zoneDefs.length; i++) {
var minPct = zoneDefs[i][0];
var maxPct = zoneDefs[i][1];
var zoneName = zoneDefs[i][2];
var benefit = zoneDefs[i][3];
var rowClass = zoneDefs[i][4];
var minBPM, maxBPM;
if (method === 'karvonen') {
// Target Heart Rate = ((max HR − resting HR) × %Intensity) + resting HR
var hrr = maxHR – rhr;
minBPM = Math.round((hrr * minPct) + rhr);
maxBPM = Math.round((hrr * maxPct) + rhr);
} else {
// Standard Methods: Target = Max HR * %Intensity
minBPM = Math.round(maxHR * minPct);
maxBPM = Math.round(maxHR * maxPct);
}
html += '