How to Calculate the Rate on Ecg

Professional ECG Heart Rate Calculator

Select your measurement method:

Measure the distance between two consecutive R-waves in large 5mm grid squares.
Measure the distance between two consecutive R-waves in 1mm small squares.
Count the number of QRS complexes (R-waves) across 30 large squares (6 seconds).
Beats Per Minute (BPM)

How to Calculate the Rate on ECG Correctly

Calculating the heart rate from an Electrocardiogram (ECG) is a fundamental skill in clinical practice. The standard ECG paper moves at a constant speed of 25 mm per second. This consistency allows us to translate physical distance on the paper into time and heart rate.

1. The 300 Rule (Large Squares Method)

This is the most common method for regular rhythms. Since there are 300 large squares in one minute of ECG paper (60 seconds / 0.2 seconds per square), you divide 300 by the number of large squares between two R-waves.

Formula: 300 ÷ (Number of Large Squares)

Example: If there are 4 large squares between R-waves, 300 / 4 = 75 BPM.

2. The 1500 Rule (Small Squares Method)

For more precision, especially with faster heart rates, use the small squares. There are 1,500 small squares in one minute.

Formula: 1500 ÷ (Number of Small Squares)

Example: If there are 20 small squares between R-waves, 1500 / 20 = 75 BPM.

3. The 6-Second Method (Irregular Rhythms)

If the heart rhythm is irregular (like in Atrial Fibrillation), the square-counting methods are inaccurate. Instead, count the number of R-waves in a 6-second interval (30 large squares) and multiply by 10.

Formula: Number of QRS Complexes in 6s × 10

Normal Heart Rate Ranges

  • Normal: 60 – 100 BPM
  • Bradycardia: Less than 60 BPM
  • Tachycardia: Greater than 100 BPM
function toggleECGMethod(method) { document.getElementById('largeMethodInput').style.display = 'none'; document.getElementById('smallMethodInput').style.display = 'none'; document.getElementById('sixSecMethodInput').style.display = 'none'; if (method === 'large') { document.getElementById('largeMethodInput').style.display = 'block'; } else if (method === 'small') { document.getElementById('smallMethodInput').style.display = 'block'; } else if (method === 'sixsec') { document.getElementById('sixSecMethodInput').style.display = 'block'; } } function calculateECGRate() { var method = document.querySelector('input[name="method"]:checked').value; var bpm = 0; var resultArea = document.getElementById('ecgResultArea'); var output = document.getElementById('heartRateOutput'); var interpretation = document.getElementById('interpretation'); if (method === 'large') { var squares = parseFloat(document.getElementById('largeSquares').value); if (squares > 0) { bpm = 300 / squares; } else { alert('Please enter a valid number of large squares.'); return; } } else if (method === 'small') { var smallSquares = parseFloat(document.getElementById('smallSquares').value); if (smallSquares > 0) { bpm = 1500 / smallSquares; } else { alert('Please enter a valid number of small squares.'); return; } } else if (method === 'sixsec') { var count = parseFloat(document.getElementById('rWaveCount').value); if (count >= 0) { bpm = count * 10; } else { alert('Please enter a valid R-wave count.'); return; } } var roundedBPM = Math.round(bpm); output.innerText = roundedBPM; resultArea.style.display = 'block'; resultArea.style.backgroundColor = '#f0f4f8'; if (roundedBPM 100) { interpretation.innerText = "Tachycardia (Fast Heart Rate)"; interpretation.style.color = "#c62828"; } else { interpretation.innerText = "Normal Heart Rate"; interpretation.style.color = "#2e7d32"; } }

Leave a Comment