How to Calculate the Heart Rate from an Ecg

ECG Heart Rate Calculator

Professional EKG Analysis Tool

Small Squares Method (Most Accurate for Regular Rhythm) Large Squares Method (Quick Count for Regular Rhythm) 6-Second Method (Best for Irregular Rhythms)

Count the small boxes between two consecutive R-waves.

Count the large boxes between two consecutive R-waves.

Count the R-waves (peaks) across 30 large squares.

Standard (25 mm/s) Fast (50 mm/s)
Estimated Heart Rate
0 BPM

How to Calculate Heart Rate from an ECG Strip

Interpreting an electrocardiogram (ECG/EKG) is a fundamental skill in clinical medicine. To calculate the heart rate, you must first determine if the rhythm is regular or irregular by measuring the distance between consecutive R-waves (the sharp upward peaks).

1. The Small Square Method (The 1500 Rule)

This is the most accurate method for regular rhythms. ECG paper typically moves at 25 mm/s. In one minute (60 seconds), the paper travels 1500 mm (1500 small squares).
Formula: 1500 / Number of small squares between R-waves.

2. The Large Square Method (The 300 Rule)

Each large square consists of 5 small squares. In one minute, the paper moves 300 large squares.
Formula: 300 / Number of large squares between R-waves.

3. The 6-Second Method

If the heart rhythm is irregular (like in Atrial Fibrillation), the methods above will provide an inaccurate snapshot. Instead, identify a 6-second segment of the strip (which is 30 large squares at standard speed). Count the number of R-waves in that segment and multiply by 10.
Formula: Number of R-waves in 6 seconds × 10.

Calculation Example:

  • Scenario: Regular rhythm, 15 small squares between R-peaks.
  • Calculation: 1500 / 15 = 100 Beats Per Minute (BPM).
function toggleInputs() { var method = document.getElementById("ecgMethod").value; document.getElementById("smallSquaresInput").style.display = (method === "small") ? "block" : "none"; document.getElementById("largeSquaresInput").style.display = (method === "large") ? "block" : "none"; document.getElementById("sixSecInput").style.display = (method === "sixsec") ? "block" : "none"; document.getElementById("ecgResult").style.display = "none"; } function calculateECGHR() { var method = document.getElementById("ecgMethod").value; var speed = parseFloat(document.getElementById("paperSpeed").value); var bpm = 0; var isValid = false; // Speed multiplier (Standard is 25mm/s. At 50mm/s, we double the numerator) var multiplier = speed / 25; if (method === "small") { var smalls = parseFloat(document.getElementById("smallCount").value); if (smalls > 0) { bpm = (1500 * multiplier) / smalls; isValid = true; } } else if (method === "large") { var larges = parseFloat(document.getElementById("largeCount").value); if (larges > 0) { bpm = (300 * multiplier) / larges; isValid = true; } } else if (method === "sixsec") { var peaks = parseFloat(document.getElementById("peaksCount").value); if (peaks > 0) { // This method is usually done for 6 seconds. // If paper speed is 50mm/s, 30 large squares is only 3 seconds. // We adjust for speed accordingly. bpm = peaks * 10 * multiplier; isValid = true; } } if (isValid) { var roundedBpm = Math.round(bpm); var interpretationText = ""; var detailText = ""; if (roundedBpm 100) { interpretationText = "Tachycardia"; } else { interpretationText = "Normal Heart Rate"; } if (method === "small") { detailText = "Based on " + document.getElementById("smallCount").value + " small squares at " + speed + " mm/s."; } else if (method === "large") { detailText = "Based on " + document.getElementById("largeCount").value + " large squares at " + speed + " mm/s."; } else { detailText = "Based on R-wave count in 6-second strip at " + speed + " mm/s."; } document.getElementById("bpmOutput").innerText = roundedBpm + " BPM"; document.getElementById("interpretation").innerText = interpretationText; document.getElementById("details").innerText = detailText; document.getElementById("ecgResult").style.display = "block"; } else { alert("Please enter a valid number of squares or peaks."); } }

Leave a Comment