How to Calculate Workout Heart Rate

Workout Heart Rate Calculator .whr-calculator-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; max-width: 800px; margin: 0 auto; padding: 20px; background: #ffffff; border: 1px solid #e0e0e0; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); } .whr-header { text-align: center; margin-bottom: 30px; background: #ff4757; color: white; padding: 20px; border-radius: 6px 6px 0 0; margin: -20px -20px 30px -20px; } .whr-input-group { margin-bottom: 20px; } .whr-label { display: block; font-weight: 600; margin-bottom: 8px; color: #333; } .whr-input { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 4px; font-size: 16px; box-sizing: border-box; } .whr-input:focus { border-color: #ff4757; outline: none; } .whr-btn { width: 100%; padding: 15px; background-color: #ff4757; color: white; border: none; border-radius: 4px; font-size: 18px; font-weight: bold; cursor: pointer; transition: background-color 0.3s; } .whr-btn:hover { background-color: #e8414e; } .whr-result-section { margin-top: 30px; padding: 20px; background-color: #f9f9f9; border-radius: 6px; display: none; } .whr-stat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 25px; } .whr-stat-box { background: white; padding: 15px; border-radius: 6px; text-align: center; box-shadow: 0 1px 3px rgba(0,0,0,0.1); } .whr-stat-value { font-size: 24px; font-weight: bold; color: #ff4757; } .whr-stat-label { font-size: 14px; color: #666; margin-top: 5px; } .whr-zone-table { width: 100%; border-collapse: collapse; margin-top: 20px; font-size: 15px; } .whr-zone-table th, .whr-zone-table td { padding: 12px; border-bottom: 1px solid #ddd; text-align: left; } .whr-zone-table th { background-color: #f1f1f1; font-weight: 600; } .whr-zone-badge { display: inline-block; padding: 4px 8px; border-radius: 4px; color: white; font-size: 12px; font-weight: bold; } .zone-1 { background-color: #a4b0be; } .zone-2 { background-color: #7bed9f; color: #333; } .zone-3 { background-color: #eccc68; color: #333; } .zone-4 { background-color: #ffa502; } .zone-5 { background-color: #ff4757; } .whr-content { max-width: 800px; margin: 40px auto; line-height: 1.6; color: #444; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } .whr-content h2 { color: #2c3e50; border-bottom: 2px solid #ff4757; padding-bottom: 10px; margin-top: 30px; } .whr-content p { margin-bottom: 15px; } .whr-content ul { margin-bottom: 20px; } .whr-content li { margin-bottom: 8px; } @media (max-width: 600px) { .whr-stat-grid { grid-template-columns: 1fr; } }

Target Heart Rate Calculator

Optimize your workout intensity

Leave blank to use the standard Max Heart Rate method.
Max Heart Rate (MHR)
Method Used

Target Heart Rate Zones

Zone Intensity Target Range (BPM) Benefit

How to Calculate Workout Heart Rate

Calculating your workout heart rate is essential for maximizing the efficiency of your exercise routine. Whether your goal is fat loss, cardiovascular endurance, or peak athletic performance, training in the correct "zone" ensures you are stimulating the right energy systems in your body.

This calculator uses two primary methods to determine your target heart rate zones:

1. The Standard Method (Age-Based)

This is the simplest way to estimate your zones. It first calculates your Maximum Heart Rate (MHR) using the formula 220 – Age. The target zones are then calculated as simple percentages of this maximum.

  • Example: For a 40-year-old.
  • MHR = 220 – 40 = 180 BPM.
  • 50% Intensity = 180 × 0.50 = 90 BPM.

2. The Karvonen Formula (More Accurate)

If you know your Resting Heart Rate (RHR), this calculator automatically upgrades to the Karvonen formula. This method is superior because it takes your fitness level into account. It calculates your Heart Rate Reserve (HRR) first.

The Formula: Target Heart Rate = ((Max HR − Resting HR) × %Intensity) + Resting HR.

  • Example: 40-year-old with a RHR of 60 BPM.
  • MHR = 180 BPM.
  • HRR = 180 – 60 = 120 BPM.
  • 50% Intensity = (120 × 0.50) + 60 = 120 BPM.

Notice the difference? The Karvonen method often prescribes slightly higher, more appropriate targets for fit individuals.

Understanding Heart Rate Zones

Training across different zones provides specific metabolic benefits:

  • Zone 1 (50-60%): Very Light. Used for warm-ups, cool-downs, and active recovery. Helps with blood flow and muscle recovery.
  • Zone 2 (60-70%): Light (Fat Burn). The "conversation" pace. This zone is optimal for building basic endurance and burning fat as a primary fuel source.
  • Zone 3 (70-80%): Moderate (Aerobic). Improves blood circulation and skeletal muscle efficiency. This is where cardiovascular fitness is built.
  • Zone 4 (80-90%): Hard (Anaerobic). Increases the lactate threshold. This is high-intensity interval training (HIIT) territory, hard to maintain for long periods.
  • Zone 5 (90-100%): Maximum. For short bursts only. Improves maximum speed and power (sprinting).

How to Measure Resting Heart Rate

To get the most accurate results from this calculator, measure your resting heart rate (RHR) immediately after waking up in the morning, before getting out of bed. Count your pulse for 60 seconds. Do this for 3-4 days and take the average.

function calculateWorkoutZones() { // Get Inputs var ageInput = document.getElementById('whr-age'); var rhrInput = document.getElementById('whr-rhr'); var resultSection = document.getElementById('whr-result'); var mhrDisplay = document.getElementById('display-mhr'); var methodDisplay = document.getElementById('display-method'); var tableBody = document.getElementById('whr-table-body'); var age = parseFloat(ageInput.value); var rhr = parseFloat(rhrInput.value); // Validation if (!age || isNaN(age) || age 120) { alert("Please enter a valid age between 10 and 120."); return; } // 1. Calculate Max Heart Rate (Standard Formula) var maxHR = 220 – age; // Determine Method (Standard vs Karvonen) var useKarvonen = false; if (rhr && !isNaN(rhr) && rhr > 30 && rhr < maxHR) { useKarvonen = true; } // Prepare Zones Data // Zones: 1 (50-60), 2 (60-70), 3 (70-80), 4 (80-90), 5 (90-100) var zones = [ { id: 1, minPct: 0.50, maxPct: 0.60, name: "Very Light", css: "zone-1", benefit: "Warm up / Recovery" }, { id: 2, minPct: 0.60, maxPct: 0.70, name: "Light", css: "zone-2", benefit: "Fat Burning / Endurance" }, { id: 3, minPct: 0.70, maxPct: 0.80, name: "Moderate", css: "zone-3", benefit: "Aerobic Fitness" }, { id: 4, minPct: 0.80, maxPct: 0.90, name: "Hard", css: "zone-4", benefit: "Anaerobic Capacity" }, { id: 5, minPct: 0.90, maxPct: 1.00, name: "Maximum", css: "zone-5", benefit: "Max Performance" } ]; var tableHTML = ""; for (var i = 0; i < zones.length; i++) { var z = zones[i]; var minBPM, maxBPM; if (useKarvonen) { // Karvonen: ((MHR – RHR) * %) + RHR var hrr = maxHR – rhr; minBPM = Math.round((hrr * z.minPct) + rhr); maxBPM = Math.round((hrr * z.maxPct) + rhr); } else { // Standard: MHR * % minBPM = Math.round(maxHR * z.minPct); maxBPM = Math.round(maxHR * z.maxPct); } tableHTML += ""; tableHTML += "Zone " + z.id + ""; tableHTML += "" + Math.round(z.minPct * 100) + "% – " + Math.round(z.maxPct * 100) + "%"; tableHTML += "" + minBPM + " – " + maxBPM + " bpm"; tableHTML += "" + z.benefit + ""; tableHTML += ""; } // Output Results mhrDisplay.innerHTML = maxHR + " BPM"; methodDisplay.innerHTML = useKarvonen ? "Karvonen Formula(Personalized)" : "Standard Age-Based(Estimate)"; tableBody.innerHTML = tableHTML; // Show result section resultSection.style.display = "block"; // Scroll to results resultSection.scrollIntoView({ behavior: 'smooth' }); }

Leave a Comment