Anyone using HRV? (Heart Rate Variability)

I see really frequently (also in this thread), that people have double-digit HRV numbers. Is something wrong with me? Even when I get super s**t-faced the night before and sleep a cozy 4 hours, getting out of bed and feeling like I was hit by a truck, my HRV is 100ms or above. Usually it is like 180 to 220 and close to 300 when I really have the time to relax.
Why are these numbers so different between cyclists (considering they are all somewhat fit)?

Is there any app for Apple Watch that tracks automatically HRV and gives you a “readiness score”?
Whenever I try to remember to track it first thing in the morning (with the breath app in apple watch) I irremediably fail…

  1. I have garmin ant+ hr strap so is there any app for ant+?
  2. What do you guys think about apps that measure hrv from fingertip (phone camera). Is it accurate?

take a look at

I use it for my AW and a few people here, actually recommended it to me on another thread.

1 Like

It’s supposed to be, yeah:

I’ve recently switched to using the camera on my phone (Huawei Mate 20 Pro) instead of a HR strap and I’ve found it to be accurate.


Just looked at mine, and mine are all double digit (measured in ms, using Oura ring). Best for me is about 90, and goes down from there. Hard days riding back to back gets me down into the teens.

Same. Switched 5 days ago from Wahoo HR strap to my phone camera. Readings seem plausible. I just couldn’t be bothered anymore to put the HR strap on and get poor quality readings, put some water on the contacts and try again for 1-2 times before it worked well. Might just be my weird chest / user error. But for my n=1 the finger and phone camera thing is working well (so far).

In general the HRV4T trends align with first beats body battery.


My experience is the same as yours. Heart rate strap is a nuisance and doesn’t seem to be reliable to connect. Camera and finger work very well. Quick and reliable


Also chiming in to say HR strap (polar) is a bit more fussy than the finger, always had to water the strap a bit and re try once or twice. Finger on the camera seems to be reliable.


Took my first reading with hrv4training (one hour after waking up, so i guess not optimal…?). Rmssd was 98 and this hrv score(?) was 8,8 (i guess i should read what it is lol). Also i found out you can change the time for how long you want to measure (i had 1min) so how long should it be? Is longer better?

First measure so basically tells me nothing, lets see what happens in couple months

1 Like

In the HRV4Training app if you go to “Resources and support” there’s an option for “Camera Instructions and Practice”. You’ll be able to take practice readings and see what the signal quality is like. You want to make sure you’re getting “Optimal” readings.

No - it’s recommended to take the reading first thing in the morning. Keeps it consistent and makes sure other stressors aren’t affecting your score.

Other tips from the HRV4Training camera guidelines page:

  • Make sure the flash turns on . If the flash doesn’t turn on, the app won’t be able to measure with high accuracy (which is the reason why you can’t measure using an ipad, unless you use a bluetooth sensor). If the flash doesn’t turn on and you have an iphone, go under your iphone’s settings (in your phone, not in the HRV4Training app) and make sure that HRV4Training is allowed to access your camera . Android apps also need permission to access the camera, you can enable the app from Settings / Apps / HRV4Training, Permissions on Android.
  • Make sure to cover the back camera completely. In some phones the flash might be quite far from the camera. Try to cover entirely the camera and also the flash as much as you can, using only one finger. See here how to use an iPhone 11 or later.
  • Make sure there is limited light (apart from the flash) in the room you are taking the measurement in. Measuring in dark places provides better measurement as natural light does not interfere with our algorithms, while we measure blood flow using light reflection.
  • If you use a phone cover, remove it when taking the measurement.
  • Place your hand on the camera before tapping the “Measure HRV” button . The app will discard the first few seconds of data regardless, but placing the finger before starting the measurement can still be beneficial during the first few seconds.
  • Try not to move your finger and not to change the amount of pressure on the camera . Keep your finger still and in a comfortable position. This is the most important point. While we have techniques in place to cope with motion artifacts, movement will most likely mess up your data beyond what can be fixed.
  • Do not apply excessive pressure , which might impede blood flow and therefore prevent the app from measuring it correctly. However, do apply some pressure. Especially on Android devices, we found that applying slightly more pressure can provide better signal quality.
  • Do not use earphones while measuring (iPhone only) . Unfortunately due to some incompatibilities with the techniques we use, it has been reported that the app might freeze if you measure using earphones on iPhones.

Thank you - I did try it, but got frustrated with it because I didn’t find it to be very reliable. Also, I realized I wouldn’t change my plans because of it, (I’m not going to flunk a group ride or planned indoor ride because of a low reading) so I just took it off.

1 Like

hi! I would not recommend this approach unfortunately as a sporadic data point (even several data points) collected in the night will be affected by circadian rhythm and sleep stage, hence the only way to make use of night data correctly, would be to use a device that measures the entire night (currently only the Oura ring does so, which can be connected to HRV4Training to improve data analysis / interpretation)

You can learn more about these issues here:

1 Like

hi! Normally 1 minute is sufficient, I would not measure for more than 2.

Your HRV score, what in the app we call Recovery Points, is simply a transformation of rMSSD, hence it will show you the exact same trends (it is a logarithmic transformation as typically done in research papers as rMSSD is not normally distributed, long story short it makes the data easier to interpret).

As mentioned by others, try to measure first thing in the morning, and collect a few weeks of data, so that the app learns what are normal day to day variations in your physiology, and which deviations are outside of your normal and therefore something to be more cautions about


It’s the man himself! Thank you. I Have measured it first thing in the morning (for one minute). No problems with measuring. So i have mostly been looking at the value of rmssd, but what are these other metrics and what to do with them? What does they tell me (sdnn, LF/HF, pnn50)? I really want to deep dive in to this. Have you wrote articles about other metrics?

1 Like

Hey Marco. I just wanted to say thanks for posting here as well. Keep up the good work with HRV4T!

1 Like


My take is the following: many HRV features are simply statistical ways to look at the same thing (variability between heart beats, or changes in heart rhythm), hence they tend to be highly correlated.

Historically, a few features had been used more than others, for different reasons:

  • SDNN: this was used in the context of 24 hours measurements, so that we would get an understanding of cardiac variability changes throughout the day, as a response to circadian rhythm and acute stressors. It was mainly about distinguishing no variability at all (the inability of the system to react to any stressor, as it can happen in case of severe chronic conditions / disease) vs a healthy cardiovascular system — as SDNN mathematically computes the amount of variability in our 24 hours of RR intervals (beat to beat differences). This method allows to quantify macro-differences in physiology between specific medical conditions and healthy controls (between-individual studies). This method is also highly dependent on physical activity and other confounding factors that affect physiology during the day. Personally, I would speculate that most differences between groups detectable by SDNN over 24 hours are also captured by morning or night measurements (well contextualized resting physiology) in terms of clear markers of parasympathetic activity such as rMSSD or HF. When the Apple Watch started reporting SDNN a few years back, I looked at it a bit more in detail, and wrote this: - while again all metrics tend to capture variability, SDNN is not ideal as it captures mathematically deviations from the mean, not high frequency beat to beat changes due to vagal activity (see next points)
  • Frequency domain features: probably the most misunderstood features. There is not such a thing as measuring autonomic balance or sympathetic activity via these measurements. In my opinion, the only thing we can do well is to measure parasympathetic activity (or vagal activity), which I would argue is what matters (at rest). While we finally moved away from LF as a marker of sympathetic activity, HF is still considered a good marker of parasympathetic activity. This is correct as vagal activity happens real fast (a matter of milliseconds), and therefore can be captured by high frequency changes in heart rhythm. The main challenge with this feature (and all frequency domain features) is that they highly depend on breathing rate (and are computed differently by everyone as there are various choices to be made from a mathematical point of view on interpolation, windowing, FFT, etc.). Note also that these thresholds (like all thresholds) are just estimates and fail frequently. My favorite example is the following: say you are doing a deep breathing exercise to strengthen the parasympathetic system (biofeedback / meditation, etc.). In this case you are “as parasympathetic as you can be” and yet your deep breathing will move the dominant frequency to the LF frequency band (if you breathe around 6 breaths per minute for example, as recommended for these practices), and therefore your LF will increase, HF decrease, and none of these metrics will make sense. On the contrary, rMSSD will reflect the increase in parasympathetic activity.
  • rMSSD: finally, in the last decade the scientific community (across many fields, not only sports science) started using a lot more rMSSD, as mathematically it also captures these beat to beat variations we are interested in (siimlarly to HF), but is not as dependent on breathing frequency, hence we can consider it the best marker we have of parasympathetic activity.

Long story, but in my view, rMSSD (or recovery points) are the only metric we should look at, in terms of HRV features for short morning measurements taken at rest, as our goal is to quantify baseline physiological stress in response to acute and chronic stressors (both training and lifestyle related), which is reflected very well in parasympathetic activity. If our goal is to look at things like deep breathing, then by all means LF is the best candidate, but this is a different application (make sure in this case to use at least 2 minutes of data, as otherwise LF cannot be computed correctly).

The way I use the data is normally the following:

  • rMSSD: more subtle changes in “stress”, in my case as I am not an athlete, these are often tightly coupled to work stress (example here: I consider HRV useful for day to day adjustments and continuous feedback, not much as “fitness marker” or something to optimize in the long term (if you are healthy and have a healthy lifestyle, your baseline is unlikely to change)
  • resting heart rate: informative for huge stressors (e.g. getting sick), as well as seasonal changes and changes in fitness over periods of many weeks / months
  • add training load and subjective feeling for context, and you tend to have a decent overview of what is going on and when it is a good idea to slow down a little to prevent larger setbacks

Hope this helps a little!


just a quick follow up, I ended up writing a blog covering the different features a bit more in detail in case someone is interested:

Thank you again for your input and all the questions, I am sure this will be useful to others as well.


@marco_alt Hi Marco, could you comment on the accuracy/validity of Garmin’s Stress Score as a proxy for HRV? Thanks a lot.

1 Like

hi there! A bit of a difficult one as this approach is not standard and depends on many variables. Some thoughts:

  • Some of Garmin’s HRV-related estimates come from firstbeat, that’s a great start as firstbeat is a serious company with plenty of publications backing up and describing their work
  • the first challenge comes from taking something that firstbeat used to do with their custom sensor (ECG patch that you’d wear for a few days) and then putting it in a watch, where the acquired data is certainly of lower quality. The biggest question here is how low is the quality, as for HRV, any artifacts make the data unusable. I haven’t seen any validations (not even internal white papers or blogs, but I haven’t really looked either, so hopefully they have something to show if you reach out to them). However, I would give anyone the benefit of the doubt in terms of detecting HRV during sleep. When you do not move, it is certainly possible to acquire high-quality HRV data (provided the watch is tight to your skin, this might be an additional issue of this form factor). During the day I have strong doubts as I have strong d
  • The second (and maybe biggest) issue is the non-standard, undocumented approach. They used to have a morning test, now they have the stress score, the body battery, and it all uses “HRV” but in what way? what metrics? when are they measured? This unfortunately matters as the ANS is continuously adjusting to maintain things in balance, and we really don’t care about changes in parasympathetic activity because you had coffee, we care about underlying changes in baseline stress in response to large acute stressors or chronic ones. That way you can get an understanding of when your body is more or less stressed, and make adjustments. This is why we do the morning check or why others do a night check, you are assessing how your body responded, and then you take it from there. I find this process difficult with Garmin’s metrics. I do have a fenix myself but ended up disabling the HR sensor, as I found sleep staging inaccurate, and for stress / HRV, as you can imagine I use other tools.

Normally there are two steps:

  • measure (morning or night)
  • interpret the data (understand when a change is meaningful and what it means, especially given the large day to day variability in HRV that is perfectly normal)

It seems both points are really confusing and unclear in Garmin’s case unfortunately. The main point here maybe is really the issue of “when to measure” more than the custom metric which I would assume (or hope) is still derived from rMSSD, the most commonly used index of parasympathetic activity. Night measurements need to be done in a certain way, using either all the data or the first 4-5 hours (see here for a discussion of this topic: Morning measurements are another valid way to do it because you are conscious (no effect of different sleep stages) but you need to do them before you start your day (so before other stressors confound the measurement), but during the day?

I am in general skeptical of using HRV “continuously” or during the day unless it is for a very specific task (e.g. meditation / biofeedback or training, see the DFA conversation), because our physiology changes all the time and I feel that looking at those changes without any context (which is what a wearable does) is of little use. The watch doesn’t know what’s good stress and bad stress, what’s transitory and what’s chronic.

I’d love for them to take a step back and try to do things in a more standard way, say reporting rMSSD of the night (or a few hours of the night), and then look at day to day changes with respect to one’s historical values (see: When looking at the data this way, the effect of various stressors, is fairly obvious:

Less is more in my view when it comes to HRV, and of course there are many nuances, but considering all the confusion still out there, I would really try to keep it as simple and as effective as possible, with standard approaches.

Hope this makes sense!