How to Calculate Anaerobic Threshold Heart Rate

Anaerobic Threshold Heart Rate Calculator :root { –primary-color: #0056b3; –secondary-color: #e9ecef; –accent-color: #28a745; –text-color: #333; –border-radius: 8px; } body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.6; color: var(–text-color); margin: 0; padding: 20px; background-color: #f4f7f6; } .container { max-width: 800px; margin: 0 auto; background: #fff; padding: 40px; border-radius: var(–border-radius); box-shadow: 0 4px 6px rgba(0,0,0,0.1); } h1, h2, h3 { color: #2c3e50; } h1 { text-align: center; margin-bottom: 30px; } .calculator-box { background-color: #f8f9fa; padding: 30px; border-radius: var(–border-radius); border: 1px solid #dee2e6; margin-bottom: 40px; } .form-group { margin-bottom: 20px; } label { display: block; margin-bottom: 8px; font-weight: 600; } input, select { width: 100%; padding: 12px; border: 1px solid #ced4da; border-radius: 4px; font-size: 16px; box-sizing: border-box; } button { display: block; width: 100%; padding: 15px; background-color: var(–primary-color); color: white; border: none; border-radius: 4px; font-size: 18px; font-weight: bold; cursor: pointer; transition: background-color 0.3s; } button:hover { background-color: #004494; } #results-area { display: none; margin-top: 30px; animation: fadeIn 0.5s; } .main-result { text-align: center; background-color: var(–primary-color); color: white; padding: 20px; border-radius: var(–border-radius); margin-bottom: 20px; } .main-result h3 { color: white; margin: 0; font-size: 1.2rem; } .main-result .value { font-size: 3rem; font-weight: bold; margin: 10px 0; } .zones-table { width: 100%; border-collapse: collapse; margin-top: 20px; font-size: 0.95rem; } .zones-table th, .zones-table td { padding: 12px; text-align: left; border-bottom: 1px solid #dee2e6; } .zones-table th { background-color: var(–secondary-color); color: #495057; } .zones-table tr:last-child td { border-bottom: none; } .zone-badge { display: inline-block; padding: 4px 8px; border-radius: 4px; font-size: 0.8rem; font-weight: bold; color: white; } .zone-1 { background-color: #6c757d; } .zone-2 { background-color: #17a2b8; } .zone-3 { background-color: #28a745; } .zone-4 { background-color: #ffc107; color: #333; } .zone-5 { background-color: #dc3545; } .article-content { margin-top: 50px; padding-top: 30px; border-top: 2px solid #eee; } .hidden { display: none; } @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } @media (max-width: 600px) { .container { padding: 20px; } .main-result .value { font-size: 2.5rem; } }

Anaerobic Threshold Heart Rate Calculator

I have 30-min Time Trial Data (Most Accurate) Estimate based on Age (Approximation)
Enter the average BPM from the final 20 minutes of a 30-minute all-out effort.

Estimated Anaerobic Threshold (LTHR)

0 BPM

Your Heart Rate Training Zones

Based on Joe Friel's Training Zones for running/cycling.

Zone Intensity Heart Rate Range

How to Calculate Anaerobic Threshold Heart Rate

Your Anaerobic Threshold (AT), often synonymous with Lactate Threshold (LT) in athletic training contexts, is arguably the most critical metric for endurance athletes. It represents the intensity level at which lactic acid begins to accumulate in the bloodstream faster than your body can flush it out.

Why AT Matters More Than Max HR

While many fitness trackers focus on Maximum Heart Rate, your Anaerobic Threshold is a better predictor of performance. It defines the "red line" of your endurance. Training just below this threshold raises it, allowing you to run or cycle faster for longer periods without fatigue setting in.

Method 1: The 30-Minute Time Trial (Field Test)

The most accessible and accurate way to determine your threshold without a lab coat is the 30-minute Time Trial, popularized by coach Joe Friel. Here is how to perform it:

  1. Warm-up: 10-15 minutes of easy activity followed by a few 30-second bursts of speed.
  2. The Test: Run or cycle for 30 minutes at the maximum sustained effort you can maintain for the full duration. It should be hard, but steady.
  3. The Measurement: Press the "Lap" button on your heart rate monitor 10 minutes into the test. You only want the average heart rate for the last 20 minutes.
  4. The Result: The average heart rate of those final 20 minutes is your estimated Lactate Threshold Heart Rate (LTHR).

Method 2: Age-Based Estimation

If you cannot perform a strenuous field test, you can estimate your threshold using age-based formulas. This calculator uses the Tanaka formula (208 – 0.7 × Age) to estimate Maximum Heart Rate, and then assumes the Anaerobic Threshold falls at approximately 90% of that maximum for trained individuals. Note that this is a generalization and individual physiology varies widely.

Understanding the Training Zones

Once you have your AT/LTHR, you can establish training zones to target specific physiological adaptations:

  • Zone 1 (Recovery): Very easy effort, promotes blood flow and recovery.
  • Zone 2 (Aerobic): The "all day" pace. Builds endurance and fat-burning efficiency.
  • Zone 3 (Tempo): Comfortably hard. Requires focus but isn't an all-out sprint.
  • Zone 4 (Sub-Threshold): Just below your red line. This is the "sweet spot" for raising your threshold.
  • Zone 5 (Capacity): Above threshold. Used for interval training to improve VO2 max and anaerobic capacity.
function toggleInputs() { var method = document.getElementById('calculationMethod').value; var testInput = document.getElementById('testInput'); var ageInput = document.getElementById('ageInput'); if (method === 'test') { testInput.classList.remove('hidden'); ageInput.classList.add('hidden'); } else { testInput.classList.add('hidden'); ageInput.classList.remove('hidden'); } } function calculateThreshold() { var method = document.getElementById('calculationMethod').value; var lthr = 0; var msg = ""; if (method === 'test') { var inputHr = document.getElementById('avgHeartRate').value; if (!inputHr || inputHr 250) { alert("Please enter a valid Average Heart Rate (between 30 and 250 BPM)."); return; } lthr = parseFloat(inputHr); msg = "Based on 30-min Time Trial data"; } else { var age = document.getElementById('age').value; if (!age || age 100) { alert("Please enter a valid Age (between 10 and 100)."); return; } // Tanaka Formula for Max HR var maxHr = 208 – (0.7 * parseFloat(age)); // Estimate LTHR at roughly 90% of Max HR for generic fit individuals // Cycling LTHR is often slightly lower, Running slightly higher relative to max, // but 90% is a standard population estimate. lthr = Math.round(maxHr * 0.90); msg = "Estimated from Age (Tanaka Formula)"; } lthr = Math.round(lthr); // Display Result document.getElementById('lthrResult').innerText = lthr; document.getElementById('methodUsed').innerText = msg; document.getElementById('results-area').style.display = 'block'; // Calculate Zones (Joe Friel Running Zones Logic) // Z1: < 85% // Z2: 85 – 89% // Z3: 90 – 94% // Z4: 95 – 99% // Z5: 100% + (Specifically 5a, 5b, 5c but simplified here for clarity) var z1_limit = Math.floor(lthr * 0.85); var z2_limit = Math.floor(lthr * 0.89); var z3_limit = Math.floor(lthr * 0.94); var z4_limit = Math.floor(lthr * 0.99); var tableHtml = ` Zone 1 Recovery Below ${z1_limit} bpm Zone 2 Aerobic ${z1_limit + 1} – ${z2_limit} bpm Zone 3 Tempo ${z2_limit + 1} – ${z3_limit} bpm Zone 4 Sub-Threshold ${z3_limit + 1} – ${z4_limit} bpm Zone 5 Supra-Threshold Above ${z4_limit} bpm `; document.getElementById('zonesBody').innerHTML = tableHtml; }

Leave a Comment