FitMesh Sync

FitMesh Labs

HRV Calculator: RMSSD & RR Interval Analysis

Paste a series of RR/IBI intervals and get RMSSD, standard deviation and heart rate derived from mean RR, computed entirely in your browser. No data ever leaves your device.

To calculate HRV (RMSSD) from a list of RR intervals: paste the values into the field below (one per line, or separated by spaces/commas/semicolons), choose the unit (milliseconds or seconds), and the tool computes RMSSD, standard deviation, average RR interval and derived heart rate in real time, all in your browser, without sending anything to a server.

RMSSD is the square root of the mean of the squared differences between consecutive RR intervals: it's the most widely used time-domain HRV metric because it doesn't require a long recording and mainly reflects parasympathetic nervous system activity.

Unit:

Artifacts, ectopic beats, movement, and missed intervals can strongly alter the result. This tool does not detect or correct them automatically.

Enter at least 2 valid RR intervals to see the results.

What is HRV

Heart rate variability (HRV) measures how much the interval between one heartbeat and the next changes over time. It's not the average heart rate: two people can have the same average heart rate (e.g. 60 bpm) and very different HRV, because HRV describes the variability of those intervals, not their average.

The heartbeat isn't a metronome: the interval between one beat and the next constantly changes under the influence of the autonomic nervous system (its sympathetic and parasympathetic branches), breathing, posture and many other factors. HRV is the tool used to quantify that variability numerically.

This page describes exclusively the mathematical calculation of HRV from data you provide. It is not a diagnostic tool, it does not classify the result as "good" or "bad", and it does not estimate biological age, recovery state or cardiovascular risk.

For a broader guide on what HRV values mean and how to interpret them over time, read the dedicated article β†’

RR, IBI and NN: not interchangeable synonyms

RR interval: the time between two consecutive R peaks on an ECG trace (the R peak is the sharpest deflection of the QRS complex, corresponding to ventricular contraction). It's the technically correct term when the data source is an electrocardiogram or a chest strap with ECG electrodes.

IBI (Interbeat Interval): a more generic term, often used by devices that detect the heartbeat with an optical PPG sensor (photoplethysmography, typical of wrist watches and rings) instead of ECG electrodes. A PPG sensor doesn't measure a true R peak; it estimates the timing of the beat from the change in blood volume in the tissue: the value it returns is conceptually an interval between beats, not strictly an RR interval, even though it's often called that in practice.

NN interval (normal-to-normal): an RR/IBI interval after the series has been cleaned of ectopic beats, motion artifacts, and missed or false peaks, i.e. after only intervals between "normal" sinus beats remain. Clinical standards (ESC/NASPE Task Force, 1996) define the classic HRV metrics, including SDNN, on NN intervals, not on raw RR intervals.

This tool works on the values you enter exactly as they are: it does not automatically distinguish RR from IBI, and above all it does not apply any cleaning to turn them into NN intervals. If your data contains ectopic beats or artifacts, they remain in the calculation: see the Limits section below.

RMSSD formula

RMSSD (Root Mean Square of Successive Differences) is the square root of the mean of the squared differences between consecutive RR intervals:

RMSSD = √[ Ξ£(RRα΅’β‚Šβ‚ βˆ’ RRα΅’)Β² / (n βˆ’ 1) ]

where n is the number of RR intervals in the series, so there are exactly (n βˆ’ 1) successive differences. Squaring each difference before summing it gives more weight to abrupt beat-to-beat changes than to a slow trend, which is why RMSSD is considered particularly sensitive to the high-frequency/parasympathetic component of variability, and is the metric recommended by the ESC/NASPE standards when working with short recordings.

This tool requires at least 2 valid RR intervals to calculate RMSSD (at least one successive difference is needed). With only 2 intervals, RMSSD equals the absolute value of the single available difference.

RMSSD=βˆ‘i=1nβˆ’1(RRi+1βˆ’RRi)2nβˆ’1\mathrm{RMSSD} = \sqrt{ \frac{ \sum_{i=1}^{n-1} \left(RR_{i+1}-RR_i\right)^2 }{n-1} }

Standard deviation formula

This tool also calculates the sample standard deviation of the intervals you entered, with denominator (n βˆ’ 1): Bessel's correction, standard when the entered data is treated as a sample:

Standard deviation = √[ Ξ£(RRα΅’ βˆ’ RRΜ„)Β² / (n βˆ’ 1) ]

where RRΜ„ is the arithmetic mean of the valid intervals. The (n βˆ’ 1) denominator, not n, is stated explicitly because the choice changes the result (especially on small samples) and different sources/tools use different conventions without specifying it.

This value is labeled in the results as "standard deviation of the entered intervals", not "SDNN": see the next section for why.

SD=βˆ‘i=1n(RRiβˆ’RRβ€Ύ)2nβˆ’1\mathrm{SD} = \sqrt{ \frac{ \sum_{i=1}^{n} \left(RR_i - \overline{RR}\right)^2 }{n-1} }
Derived heart rate
HR=60000RRβ€ΎΒ (ms)\mathrm{HR} = \frac{60000}{\overline{RR}\ (\mathrm{ms})}
ln(RMSSD)
ln⁑(RMSSD)\ln(\mathrm{RMSSD})

Why we don't call this value "SDNN" without an explanation

SDNN is, by clinical definition, the standard deviation of NN intervals, i.e. of RR/IBI intervals AFTER removal of ectopic beats and artifacts (see above). SDNN reflects the overall variability of the recording, both the sympathetic and parasympathetic components, and is particularly sensitive to recording duration: an SDNN calculated over 24 hours is not comparable to one calculated over 5 minutes, per the explicit guidance of the ESC/NASPE standards.

This tool does not automatically remove any suspicious interval (see Data quality/Limits): it calculates the standard deviation on exactly the values you entered, artifacts included if present. Calling it "SDNN" without qualification would imply a data cleaning step that doesn't happen here.

The term SDNN is appropriate when: (1) the series has actually been cleaned of ectopic beats/artifacts using a stated method, and (2) the recording duration is known and consistent with the comparison you want to make (short-term with short-term, 24-hour with 24-hour). If both conditions hold for your data, you can legitimately call the value this tool labels "standard deviation of the entered intervals" SDNN.

Why different wearables show different results

If you measure HRV with different devices on the same night, expect different numbers even under identical physiological conditions. The main causes, documented in the consumer wearable literature (see the JACC review cited in the sources):

Sensor technology: an electrocardiogram or ECG chest strap directly measures the heart's electrical activity; an optical PPG sensor on a wrist or ring estimates the beat from blood flow changes in the tissue, with a variable delay (pulse transit time) relative to the actual electrical beat, a source of noise that ECG doesn't have.

Proprietary cleaning/interpolation algorithms: each manufacturer applies different filters and corrections (not publicly disclosed in most cases) before calculating the HRV it shows: how many intervals it discards, how it corrects them, which time window it uses.

Reported metric: some devices show RMSSD, others ln(RMSSD), others SDNN, others still a proprietary composite score (e.g. a "readiness score" combining HRV with other signals), values with different scales and meanings that aren't directly comparable to each other.

Measurement window and context: an overnight measurement, a 1-minute spot-check while awake, and a recording during physical activity produce structurally different numbers, even on the same person on the same day.

Duration, posture, time of day, sensor and artifacts

Recording duration: very short recordings (a few seconds/a few beats) give statistically unstable estimates: this tool shows a warning when the sample is short, without blocking the calculation.

Posture: vagal tone changes between lying down and standing; measurements taken in different postures aren't directly comparable.

Time of day: HRV follows a circadian rhythm; the most reliable comparison is measurement against measurement taken in the same time window (typically overnight, the most standardized in consumer wearable practice).

Sensor: see previous section: ECG vs PPG aren't interchangeable.

Artifacts: movement, ectopic beats, and missed or false peaks strongly alter RMSSD, because the formula squares successive differences: a single large-amplitude artifact can dominate the sum and distort the result more than it would on a metric less sensitive to instantaneous changes.

Full worked example

Four RR intervals in milliseconds: 800, 810, 790, 805.

Successive differences: 810 βˆ’ 800 = 10; 790 βˆ’ 810 = βˆ’20; 805 βˆ’ 790 = 15.

Squared differences: 100; 400; 225. Sum = 725. Number of differences = n βˆ’ 1 = 3.

RMSSD = √(725 / 3) = √241.67 β‰ˆ 15.55 ms.

Mean RR = (800 + 810 + 790 + 805) / 4 = 801.25 ms. Derived heart rate = 60000 / 801.25 β‰ˆ 74.88 bpm.

Standard deviation (n βˆ’ 1 = 3): deviations from the mean βˆ’1.25 / 8.75 / βˆ’11.25 / 3.75; squares 1.5625 / 76.5625 / 126.5625 / 14.0625; sum = 218.75; /3 = 72.92; square root β‰ˆ 8.54 ms.

You can verify this example by pasting "800, 810, 790, 805" into the field above (unit: milliseconds).

Limits of this tool

It does not automatically remove or correct ectopic beats, motion artifacts, or missed/false peaks: the values you enter are used exactly as they are.

It does not calculate frequency-domain metrics (LF, HF, LF/HF ratio): only time-domain metrics (RMSSD, standard deviation, mean, derived heart rate).

It does not know your age, sex, health status, posture, time of day, or the source device of your data: it therefore cannot contextualize the result against any of these factors.

A single result says nothing about recovery, stress, fitness, or cardiovascular health: the literature this tool is based on (see Sources) describes HRV as most useful as a personal trend over time, measured under comparable conditions, not as an isolated value.

There is no table of "normal" HRV values by age or sex on this page, deliberately: the available evidence does not support absolute values that are universally applicable across different people, recording durations, and devices.

Privacy

All calculations happen in your browser, in this page's JavaScript code. No RR interval, no result, and no input is ever sent to a server, including a FitMesh server: typing or calculating never generates a network request.

No value ever enters URL parameters, cookies, localStorage, or analytics events. "Copy results" copies text to the clipboard only after you click the button, an explicit action, never automatic. "Download CSV" generates a file locally in your browser: there is no upload.

The "Share" button opens your browser/OS's native share sheet with a text summary of the calculated results and this page's address - never the raw RR intervals you entered. No data ever enters the URL: sharing happens entirely locally, through the operating system, not through a FitMesh server.

How to cite this tool

FitMesh Labs, "HRV Calculator: RMSSD & RR Interval Analysis". FitMesh Sync. https://www.fitmesh.fit/en/labs/hrv-rmssd-calculator (methodology version 1.1, last reviewed 2026-07-17).

Sources

  1. Heart rate variability: standards of measurement, physiological interpretation and clinical use: Task Force of The European Society of Cardiology and The North American Society of Pacing and Electrophysiology, Circulation 93(5):1043-65, 1996. Verified on July 16, 2026 (PMID 8598068)
  2. Consumer Wearable Health and Fitness Technology in Cardiovascular Medicine: JACC State-of-the-Art Review: Journal of the American College of Cardiology, 2023. Verified on July 16, 2026 (PMID 37438010)
  3. Role of editing of R-R intervals in the analysis of heart rate variability: Peltola M.A., Frontiers in Physiology 3:148, 2012. Verified on July 16, 2026

Frequently asked questions

What are RR intervals and where do I find them?+

They are the time intervals (in milliseconds or seconds) between one heartbeat and the next. Some devices (ECG chest straps, some HRV measurement apps, some watches) let you export the raw series of these intervals, often as a text or CSV file. If your device only shows a final HRV value (e.g. "RMSSD: 42 ms") and not the series of intervals, this tool can't verify it: it needs the list of individual intervals, not an already-computed result.

Why does my calculation give a different number than my smartwatch?+

Because your smartwatch almost certainly applies data cleaning (removing ectopic beats/artifacts) before calculating HRV, uses a proprietary algorithm that isn't publicly documented, and may measure over a different time window than the one you pasted here. This tool calculates exactly the RMSSD formula on the values you provide, with no correction: it's normal for the number to differ.

Does this tool tell me if my HRV is good or bad?+

No, deliberately. There is no universally "good" or "bad" HRV value: it depends on age, sex, physical condition, measuring device, posture, time of day, and many other factors, none of which this tool knows. It only shows the mathematical calculation on the data you enter, never an interpretation or classification.

Can I use this tool for a medical diagnosis?+

No. This is a mathematical calculation tool, not a medical device and not a diagnostic service. It does not replace, in any way, the advice of a doctor or healthcare professional. If you have concerns about your cardiovascular health, consult a doctor.

Is my data saved anywhere?+

No. All calculation happens in your browser and is never sent to a server, including FitMesh. There is no storage at all, not even local: if you close or reload the page, the entered data is lost (unless you downloaded the CSV or copied the results yourself).

What's the difference between RMSSD and SDNN?+

RMSSD measures the differences between consecutive RR intervals and is more closely tied to short-term parasympathetic activity; it's commonly used with short recordings, but recording duration and collection conditions must be reported and kept consistent when comparing results. SDNN measures the standard deviation of the entire series of NN intervals (cleaned of artifacts) and is more sensitive to recording duration, reflecting overall variability. This tool always calculates RMSSD; the standard deviation it shows is properly called "SDNN" only if your data is already cleaned of ectopic beats/artifacts: see the dedicated section above.

How HRV connects to other recovery metrics β†’

Want to see your device's HRV alongside the rest of your data?

FitMesh Sync does not import raw RR intervals (most of Health Connect/Apple Health only exposes the HRV value already computed by the device, not the beat-by-beat series): this calculator remains an independent tool. If you want to see the HRV reported by your wearable alongside heart rate, sleep, and other metrics in one dashboard, here's how FitMesh Sync works.

See how sync works

Other FitMesh Labs tools

Methodology version: 1.1Last reviewed: 2026-07-17Technical-editorial review (formulas, sources, automated guardrail): no medical reviewer declared