Thursday, May 13, 2021

Runalyze vs Kubios DFA a1 agreement

 See also -
Best practices for Runalyze and DFA a1 thresholds 

Although HRV Logger is an option for real time and retrospective DFA a1 analysis, it does have some drawbacks.  The main one is lack of granular detail of the a1 since we are restricted to an every 2 minute data output.  In addition, concurrent power, pace or other graphics are not presented, plus it's agreement with Kubios can be problematic.  A web based training app, Runalyze has a fully featured training/data display and has recently adjusted their a1 calculations to perhaps be more accurate.  This post is going to examine that.

Three separate cycling sessions will be presented. All used the Polar H10 with files containing artifacts below 2%.  The Garmin fit files are simply interpreted either by Kubios or Runalyze.

This session contained a ramp I did just before a Covid vaccine and was part of an older post:

  • The entire 2 hour session does show "rough" agreement between the two methods.
  • However, there are clearly differences.

A zoomed look at the ramp (5w/min):

  • I drew a line to calculate the HRVT (aerobic threshold) and although the points are different, the threshold (.75 intersection) was only off by about 2 minutes or 10 watts.

Bland Altman analysis done on the 2 hour data:

  • Although the mean difference does not look so bad, the scatter is quite large, especially at the low range.
  • Repeat ramp testing may be needed given this degree of scatter.

Another example - A 2 hour cycling session with exploration of the MLSS (15w above and below for 6 minutes each).  Orange is rectus femoris muscle O2 which drops as the MLSS is passed.  The a1 in red is from Kubios.

Entire 2 hour comparison of a1:

  • Broad similarity but certain areas that are obviously different.

Zoomed view around the MLSS plus/minus 15w x 6 minutes each with post HIT a1 suppression:

  • For the most part they look similar with some discrepancy in the center.


Bland Altman analysis of entire session:

  • Again a fair degree of scatter.  Maybe a bit of under reading the a1 at low levels


Lastly, on a different day, a 5 minute, near max effort zoomed:

  • There could be a bit of time stamp difference here, but the "flavor" of the interval and post HIT a1 suppression is definitely captured.
  • Note some of the outliers high and low in red.


  • There has been improvement in the DFA a1 calculation method used by Runalyze, in previous informal comparisons, the a1 was generally too high and falsely overestimated the correlation properties.
  • This implementation does seem reasonable, although the "limits of agreement" between methods are very large, especially at low a1.  The end result could be erroneous estimation of thresholds and relative exercise intensity.  If you use their data, don't be surprised if some values abruptly rise or fall for no reason, but given time, they seem to return back on track .
  • The major advantage of their method is the possibility of a user defined "recalculation interval", which I usually set for every 5 seconds.  This provides a much more granular output and the only other option is using Kubios premium.  Below is the setting change needed to change from every 60s to every 5s recalculation (yellow)

  • I commend the developers for their hard work in improving the a1 algorithm.  In appreciation, I signed up as a "supporter".

Part 2 -
DFA a1 - Runalyze vs Kubios vs Logger results in a cyclist 

Heart rate variability during dynamic exercise

No comments:

Post a Comment