Running Max Heart Rate Calculator

Running Max Heart Rate Calculator

Optimize your training zones using science-backed formulas

Male Female

Your Results

Recommended Training Zones (BPM)

Understanding Your Max Heart Rate (MHR)

Maximum Heart Rate (MHR) is the highest number of beats per minute (BPM) your heart can safely reach during peak physical exertion. For runners, knowing this number is vital for establishing personalized training zones, ensuring you aren't overtraining or undertraining.

The Formulas We Use

  • Fox Formula: The classic "220 – Age" calculation. While widely used, it is often criticized for being less accurate for older or highly fit athletes.
  • Tanaka Formula: (208 – 0.7 × Age). Research suggests this is more accurate across a broader range of ages and fitness levels.
  • Gulati Formula: Specifically designed for women (206 – 0.88 × Age) to account for physiological differences in cardiovascular response.

Training Zones Breakdown

Once your MHR is established, you can divide your running into five intensity zones:

Zone Intensity Purpose
Zone 1 50–60% Recovery and warm-up.
Zone 2 60–70% Aerobic base building and fat burning.
Zone 3 70–80% Improving aerobic capacity (Tempo).
Zone 4 80–90% Anaerobic threshold training.
Zone 5 90–100% Sprints and maximum performance.

Example Calculation

If a 40-year-old male runner uses the Tanaka formula:

Calculation: 208 – (0.7 × 40) = 208 – 28 = 180 BPM.

His Zone 2 (Easy Run) range would be between 108 and 126 BPM.

function calculateMHR() { var age = parseFloat(document.getElementById("runnerAge").value); var gender = document.getElementById("runnerGender").value; var resultDiv = document.getElementById("mhr-results"); if (isNaN(age) || age 110) { alert("Please enter a valid age between 5 and 110."); return; } // Formulas var foxMHR = 220 – age; var tanakaMHR = Math.round(208 – (0.7 * age)); var gulatiMHR = Math.round(206 – (0.88 * age)); // Choose primary based on research (Tanaka is standard, Gulati for women) var primaryValue = (gender === "female") ? gulatiMHR : tanakaMHR; // Update UI resultDiv.style.display = "block"; document.getElementById("primary-mhr").innerHTML = "Recommended Max HR: " + primaryValue + " BPM"; document.getElementById("fox-formula").innerHTML = "Fox Formula:" + foxMHR + " BPM"; document.getElementById("tanaka-formula").innerHTML = "Tanaka Formula:" + tanakaMHR + " BPM"; // Zones Calculation var zones = [ { name: "Zone 1 (50-60%)", low: 0.50, high: 0.60, color: "#cccccc" }, { name: "Zone 2 (60-70%)", low: 0.60, high: 0.70, color: "#87ceeb" }, { name: "Zone 3 (70-80%)", low: 0.70, high: 0.80, color: "#90ee90" }, { name: "Zone 4 (80-90%)", low: 0.80, high: 0.90, color: "#ffcc00" }, { name: "Zone 5 (90-100%)", low: 0.90, high: 1.00, color: "#ff4d4d" } ]; var zonesHtml = '
'; for (var i = 0; i < zones.length; i++) { var lowBpm = Math.round(primaryValue * zones[i].low); var highBpm = Math.round(primaryValue * zones[i].high); zonesHtml += '
'; zonesHtml += '' + zones[i].name + ''; zonesHtml += '' + lowBpm + ' – ' + highBpm + ' BPM'; zonesHtml += '
'; } zonesHtml += '
'; document.getElementById("zones-table").innerHTML = zonesHtml; // Smooth scroll to results resultDiv.scrollIntoView({ behavior: 'smooth', block: 'nearest' }); }

Leave a Comment