How to Calculate Heart Rate Training Zones

.hr-calc-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; max-width: 800px; margin: 20px auto; padding: 25px; border: 1px solid #e0e0e0; border-radius: 12px; background-color: #ffffff; color: #333; line-height: 1.6; box-shadow: 0 4px 6px rgba(0,0,0,0.05); } .hr-calc-header { text-align: center; margin-bottom: 30px; } .hr-calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 25px; } .hr-calc-field { display: flex; flex-direction: column; } .hr-calc-field label { font-weight: 600; margin-bottom: 8px; font-size: 14px; } .hr-calc-field input, .hr-calc-field select { padding: 12px; border: 2px solid #edeff2; border-radius: 8px; font-size: 16px; transition: border-color 0.3s; } .hr-calc-field input:focus { border-color: #ff4757; outline: none; } .hr-calc-btn { background-color: #ff4757; color: white; border: none; padding: 15px 30px; font-size: 18px; font-weight: bold; border-radius: 8px; cursor: pointer; width: 100%; transition: background-color 0.3s; } .hr-calc-btn:hover { background-color: #ff6b81; } .hr-calc-results { margin-top: 30px; display: none; } .hr-calc-table { width: 100%; border-collapse: collapse; margin-top: 20px; } .hr-calc-table th, .hr-calc-table td { padding: 12px; text-align: left; border-bottom: 1px solid #eee; } .hr-calc-table th { background-color: #f8f9fa; font-weight: 700; } .hr-calc-article { margin-top: 40px; border-top: 1px solid #eee; padding-top: 30px; } .zone-1 { border-left: 5px solid #bdc3c7; } .zone-2 { border-left: 5px solid #2ecc71; } .zone-3 { border-left: 5px solid #f1c40f; } .zone-4 { border-left: 5px solid #e67e22; } .zone-5 { border-left: 5px solid #e74c3c; } @media (max-width: 600px) { .hr-calc-grid { grid-template-columns: 1fr; } }

Heart Rate Training Zone Calculator

Calculate your personalized aerobic and anaerobic zones using the Karvonen Formula.

Your Calculated Zones

Estimated Max HR: bpm

Heart Rate Reserve: bpm

Zone Intensity Range (BPM) Benefit
Zone 1 50% – 60% Recovery & Warm-up
Zone 2 60% – 70% Fat Burning / Endurance
Zone 3 70% – 80% Aerobic / Cardiovascular
Zone 4 80% – 90% Anaerobic / Speed
Zone 5 90% – 100% VO2 Max / Maximum Effort

How to Calculate Heart Rate Training Zones

Understanding your heart rate zones is the key to training smarter, not harder. Whether you are a marathon runner or just starting your fitness journey, knowing exactly how fast your heart should beat during exercise ensures you are hitting your specific goals—be it fat loss, endurance, or explosive speed.

The Karvonen Formula Explained

While the standard formula (220 – Age) is common, this calculator uses the more advanced Karvonen Formula. This method is considered more accurate because it takes into account your Heart Rate Reserve (HRR), which is the difference between your maximum heart rate and your resting heart rate.

The Math:
1. Max Heart Rate (MHR) = 220 – Age
2. Heart Rate Reserve (HRR) = MHR – Resting Heart Rate
3. Target HR = (HRR × Intensity%) + Resting Heart Rate

Breakdown of the 5 Training Zones

  • Zone 1 (50-60%): Very Light. Great for recovery days. Improves overall health and helps you recover after tougher workouts.
  • Zone 2 (60-70%): Light. The "Fat Burning" zone. This is where you build basic endurance and your body becomes efficient at oxidizing fat.
  • Zone 3 (70-80%): Moderate. The Aerobic zone. Improves your cardiovascular system and breathing capacity.
  • Zone 4 (80-90%): Hard. The Anaerobic zone. You are moving fast, and your body begins to produce lactic acid. Improves speed and power.
  • Zone 5 (90-100%): Maximum. Sprinting and high-intensity intervals. Only sustainable for very short durations.

Example Calculation

Imagine a 40-year-old individual with a resting heart rate of 60 bpm:

  • Max HR: 220 – 40 = 180 bpm
  • HR Reserve: 180 – 60 = 120 bpm
  • Zone 2 Lower Limit (60%): (120 × 0.60) + 60 = 132 bpm
  • Zone 2 Upper Limit (70%): (120 × 0.70) + 60 = 144 bpm

In this example, to stay in Zone 2, the individual should keep their heart rate between 132 and 144 beats per minute.

function calculateHRZones() { var age = parseFloat(document.getElementById('hr_age').value); var restingHR = parseFloat(document.getElementById('hr_resting').value); if (isNaN(age) || age 115) { alert("Please enter a valid age."); return; } if (isNaN(restingHR) || restingHR 125) { alert("Please enter a valid resting heart rate (typically 40-100 BPM)."); return; } // Formulas var maxHR = 220 – age; var hrReserve = maxHR – restingHR; if (hrReserve <= 0) { alert("Resting heart rate cannot be higher than maximum heart rate. Please check your inputs."); return; } // Display basic info document.getElementById('res_max').innerHTML = Math.round(maxHR); document.getElementById('res_reserve').innerHTML = Math.round(hrReserve); // Calculate Zones using Karvonen var z1_low = Math.round((hrReserve * 0.50) + restingHR); var z1_high = Math.round((hrReserve * 0.60) + restingHR); var z2_low = z1_high; var z2_high = Math.round((hrReserve * 0.70) + restingHR); var z3_low = z2_high; var z3_high = Math.round((hrReserve * 0.80) + restingHR); var z4_low = z3_high; var z4_high = Math.round((hrReserve * 0.90) + restingHR); var z5_low = z4_high; var z5_high = maxHR; // Output to table document.getElementById('z1_range').innerHTML = z1_low + " – " + z1_high + " bpm"; document.getElementById('z2_range').innerHTML = z2_low + " – " + z2_high + " bpm"; document.getElementById('z3_range').innerHTML = z3_low + " – " + z3_high + " bpm"; document.getElementById('z4_range').innerHTML = z4_low + " – " + z4_high + " bpm"; document.getElementById('z5_range').innerHTML = z5_low + " – " + z5_high + " bpm"; // Show results document.getElementById('hr_results').style.display = 'block'; // Smooth scroll to results document.getElementById('hr_results').scrollIntoView({ behavior: 'smooth' }); }

Leave a Comment