What Is HRV (Heart Rate Variability)?
Updated July 9, 2026
Heart rate variability (HRV) is the variation in time between consecutive heartbeats — the tiny, constantly changing gaps between one beat and the next. A healthy heart is not a metronome: even at a steady pulse, the interval between beats fluctuates from beat to beat, largely under the control of your autonomic nervous system. HRV summarizes how much that timing varies, and it is widely used as a general recovery and stress-balance signal.
General information, not medical advice. HRV from a consumer wearable is a wellness signal, not a clinical measurement or a diagnosis. Nothing here describes a medical condition or a treatment. Treat any HRV number as a trend to watch against a person's own baseline, not a verdict about their health, and point users to a professional for anything health-related.
What HRV actually measures
The raw ingredient is the inter-beat interval (IBI) — also called the RR or NN interval — the time in milliseconds between one heartbeat and the next. If your heart beats roughly once per second, those intervals are never exactly 1000 ms; they might read 980, 1010, 995, 1030, and so on. HRV is a statistic that captures the spread of those numbers.
Two time-domain metrics dominate:
- RMSSD (root mean square of successive differences) — the square root of the average of the squared differences between adjacent intervals. It reflects short-term, beat-to-beat changes driven mainly by the parasympathetic ("rest and digest") branch of the nervous system. It can be computed from short windows, which is why most consumer wearables report RMSSD, usually averaged over an overnight window for stability.
- SDNN (standard deviation of NN intervals) — the standard deviation of all the intervals, capturing overall variability (both short- and long-term). It is classically measured over a full 24-hour period.
Both are expressed in milliseconds (ms). Higher variability generally reflects more parasympathetic ("rest and digest") influence; lower variability reflects less. RMSSD is primarily a marker of that parasympathetic (vagal) activity, not a clean measure of sympathetic "fight or flight" tone.
How a wearable measures it
Wearables derive HRV from the same inter-beat intervals, captured one of two ways:
- PPG (photoplethysmography) — the optical method used by most wrist and ring devices. Green LEDs shine into the skin and a photodiode reads the pulsatile change in blood volume with each beat. The device detects each pulse and times the gaps between them.
- ECG (electrocardiography) — the electrical method used by chest straps and ECG-capable watches. It reads the heart's electrical signal directly and is more precise for beat timing.
Because a single reading is noisy — motion, loose fit, ambient light, and poor skin contact all degrade optical beat detection — devices typically compute HRV over a consistent overnight window while you are still. That averaging is what turns a jittery signal into something trend-worthy.
Why it matters when you build
If you surface wearable data, HRV is one of the metrics users care most about, because it is commonly framed as a recovery, stress, and training-readiness signal. An overnight HRV that sits below a person's own recent average can accompany fatigue, stress, illness, alcohol, or incomplete recovery; a higher value can accompany good recovery. That is directional wellness information only — never present it as a diagnosis.
The critical thing to get right in your product is the framing, covered below. Get that wrong and you will mislead users or invite unfair cross-device comparisons.
The critical framing: HRV is intensely individual
This is the single most important rule when you display HRV:
- Compare to the person's own baseline, never across people. Population "normal" HRV bands are extremely wide and strongly age-dependent, so an absolute number tells you little in isolation. What carries signal is how today compares to this user's own rolling average (for example, "your overnight RMSSD is below your 30-day average"), not how they compare to anyone else.
- Values are not interchangeable across brands. Different sensors (PPG vs. ECG), different aggregation windows (a single nightly average vs. continuous), and proprietary algorithms mean the "same" HRV differs between Apple, Garmin, Fitbit, Oura, Whoop, and others. Do not imply that a number from one device is portable to another or comparable against a chart.
- Trends over a consistent window beat single readings. PPG-derived HRV is noisier than ECG. One reading can be an artifact; a multi-day trend measured the same way each night is what you should surface.
A safe pattern for UI copy is directional and personal: "lower than your baseline," not "your HRV is bad."
How HRV appears in a wearable API
In most fitness and wearable APIs, HRV arrives as a daily (usually nightly) value attached to a sleep or daily-summary object — a single number per day rather than a raw stream. Field shapes vary by vendor, but you will commonly see something like:
{
"date": "2026-07-12",
"average_hrv": 48,
"hrv_rmssd": 48
}
Common field names include hrv_rmssd, rmssd, average_hrv, and sometimes hrv_sdnn. Some APIs also expose the raw rr_intervals or ibi arrays (in ms) so you can compute your own metric. The aggregation window matters and differs by vendor — a nightly average is not the same as a spot reading — so always confirm the exact field name, unit, and window in the specific API docs you integrate.
Measured vs. estimated (be honest with users)
HRV sits in an unusual spot: it is measured, but noisy. The device really does time your heartbeats — it is not a pure model like an estimated VO2 max or calorie burn. But PPG beat detection is imperfect, especially for the high-frequency components HRV depends on, so consumer HRV is best treated as a reliable-enough trend, not a precise clinical figure. State that plainly wherever you show it, and keep all copy in general-wellness, non-diagnostic language.
Where this fits
This page defines HRV. When you are ready to actually pull it into a product:
- See wearable data APIs for how devices like Oura, Whoop, Garmin, and Fitbit expose HRV and other recovery metrics, and how aggregators normalize them.
- See the Oura API integration guide for a concrete example of reading nightly HRV from a ring-based device.
- For a related estimated metric with very different honesty caveats, see what is VO2 max.
Frequently asked questions
- What does HRV measure?
- It measures how much the time between consecutive heartbeats varies. The raw input is the inter-beat interval (the RR or NN interval, in milliseconds), and HRV summarizes the spread of those intervals with metrics like RMSSD (short-term, parasympathetic variability), which most wearables report; SDNN (overall variability) is classically a 24-hour clinical measure. Higher variability generally reflects more 'rest and digest' influence. It is a general wellness signal, not a clinical diagnosis.
- How do wearables measure HRV?
- They time the gaps between heartbeats. Most wrist and ring devices use optical PPG sensors (green LEDs reading blood-volume pulses), while chest straps and ECG watches read the heart's electrical signal directly, which is more precise. Because single readings are noisy, devices usually compute HRV over a consistent overnight window while you are still, then report an averaged daily value.
- What is a good HRV number?
- There is no universal 'good' number, and comparing your HRV to someone else's or to a chart is misleading. Population ranges are very wide and strongly age-dependent, so an absolute value means little on its own. What matters is the trend against your own rolling baseline, measured the same way each night. Treat lower-than-your-baseline HRV as directional wellness information, not a diagnosis.
- Can I compare HRV across different devices or brands?
- Not reliably. Different sensors (PPG vs. ECG), different aggregation windows, and proprietary algorithms mean the same person's HRV will differ between Apple, Garmin, Fitbit, Oura, Whoop, and others. HRV values are not interchangeable across brands, so keep a user on one device for trend tracking and avoid implying a number is portable.
- How does HRV appear in a wearable API?
- Usually as a single daily (typically nightly) value on a sleep or daily-summary object, with field names like hrv_rmssd, rmssd, average_hrv, or sometimes hrv_sdnn, expressed in milliseconds. Some APIs also expose raw rr_intervals or ibi arrays so you can compute your own metric. The aggregation window differs by vendor, so confirm the exact field, unit, and window in the specific API docs.
Keep reading
Independent comparison, last reviewed July 9, 2026. Pricing, rate limits, and feature availability change often — confirm current details in each provider’s official documentation before you commit. Product and company names are trademarks of their respective owners; AIFitnessAPI is not affiliated with, endorsed by, or sponsored by any product listed here.
← All concepts · by AIFitnessAPI