SDNN vs. RMSSD: the difference in HRV
SDNN and RMSSD are two ways of calculating the same thing: the variation in the time between your heartbeats. SDNN is the standard deviation of all beat intervals within a measurement window. RMSSD is the root mean square of the differences between successive intervals. Apple Health reports HRV as SDNN – the data type in Apple's own interface is named exactly that. In practice that means an SDNN value and an RMSSD value from the same night are two different numbers, and there is no factor that converts one into the other.
What SDNN and RMSSD each calculate
Both start from the same raw quantity: the time between two normal heartbeats, in milliseconds. From a sequence of those intervals – say 900, 870, 910, 880 – you can answer two very different questions.
SDNN asks: how widely do all intervals in this window spread around their own mean? The number therefore captures the entire variation inside the measurement window, including the slow part – the variation that rides along with your breathing, for instance, or trends across several minutes. That has one important side effect: SDNN depends on the length of the window. Across five minutes the value typically comes out differently than across one minute, because a longer window leaves room for more slow variation.
RMSSD asks something narrower: how much does one interval differ from the one immediately after it? The differences between neighbouring intervals are taken, squared, averaged, and the square root of the result is drawn. Because only direct neighbours are compared, RMSSD describes short-term beat-to-beat variation and barely reacts to slow trends. Squaring has the side effect that large jumps weigh more than small ones – a single dropout or measurement error stands out more clearly in RMSSD.
In short: the same underlying quantity, two different slices of it. That is why both are in common use, and why they are two metrics rather than two names for one.
Which metric Apple Watch reports
Apple Health carries HRV as SDNN. The evidence sits at the point where apps collect the values: the HealthKit data type is called heartRateVariabilitySDNN and is delivered in milliseconds. In the Health app itself it just says "Heart Rate Variability" – but the metric behind it is fixed, not selectable.
That is precisely the value LeibFit reads, and only that one: the app does not calculate RMSSD, nor does it derive one. The values arrive not as a continuous curve but as individual samples spread across the day – what that means for the meaning of a single value is covered in What Apple Watch measures as HRV at night.
Why the numbers cannot be converted into each other
Three reasons stack up here:
- A different formula. SDNN measures the spread of all intervals, RMSSD the differences between neighbouring intervals. Those are different quantities, not different units of the same quantity.
- Different behaviour with the window. SDNN tends to grow with window length, RMSSD barely does. A conversion factor would have to be a different one for every window length – which makes it no factor at all.
- Different measurement circumstances. When measurements happen (spread across the day or continuously through the night), how still you lie while they do, and how the signal is produced in the first place all feed into every value.
So comparing two numbers from two systems tells you nothing – not even "roughly", not even with a rule of thumb.
What this means when you switch systems
One point that rarely appears anywhere: your score history cannot be transferred, and that is not down to missing interfaces. Different systems calculate with different HRV metrics and different measurement windows, and each derives its own norm from them. A "recovery value of 68" from one system means nothing at all in another – not because nobody bothered, but because the number has no meaning outside its own calculation.
A freshly started norm is therefore more honest than pretended comparability. LeibFit starts from zero when you switch: after seven nights with data there is a first recovery value, and the 30-day window becomes solid after about a month. That is inconvenient, but it is the only version in which the number means something afterwards.
What actually counts: your own trend
For everyday use, the question "SDNN or RMSSD?" is secondary. What matters is that a system stays with one metric and one method, so that your own trend remains comparable across weeks. What carries meaning is not the height of the number but its distance from what has been normal for you over the past weeks – and that distance works with SDNN just as it does with RMSSD, as long as you do not switch measurement methods halfway through the period. What that switch looks like in practice when two devices are involved – an Apple Watch reporting SDNN and an Amazfit band computing RMSSD – is covered in Whoop alternative: reading the Amazfit band directly on your iPhone.
For the same reason, tables of "normal HRV values" are of little use: they do not say which metric was used or across which window, and even if they did, the values would barely be comparable between two people. How a usable value emerges from the distance to your own norm is covered in How a recovery score works and what it tells you.