Tuesday, 9 October 2012

The relationship between speed and heart rate on a run

Miles per gallon - or an equivalent?

We are all use to heart beats per minute, but it is not necessarily the best measure to use when looking at running data. In this post I will explain how speed and heart rate are related and why heart beats per km is a much better measure to use.

Some time ago I said I would explain a little bit about how speed and heart rate are related to one another, it is about time I got round to doing it...To help explain I am going to use some of my data from a long run (29 km) that I did at the beginning of the year (Jan 2, 2012). It was a run at a slow pace through Cambridge and along the river Cam. The Garmin Connect data is here. I have chosen this run since the pace was within the aerobic zone (average heart rate ~70 % of maximum), on flat ground, it was long and I had some pace/heart rate variations with several dips in speed at both the start and end of the run. My heart rate started at ~115 bpm and ended at about 140 bpm.

I have extracted the data into Excel and calculated distance (m) using some simple trigonometry (=ACOS(SIN(Lat1)*SIN(Lat2)+COS(Lat1)*COS(Lat2)*COS(Long2-Long1))*6371*1000) and then speed by dividing the distance covered between points by the time taken. I also calculated the cumulative distance covered which works out as 29.12 km (20 m less than the value Garmin Connect reports - the reason for this is unclear, but probably relates to the precise radius ascribed to the Earth and its degree of flattening. The error is small and not significant.). My GPS was collecting data at around 12 points per minute and calculating speed for each point produces a very noisy trace (see orange trace in Figure 1). The noise is due to the inaccuracy of the GPS signal - it is only accurate to about 5 m. On average, for this run, I travelled 14.3 m between samples. Given the 5m inaccuracy of the GPS this means that it is possible that I will appear to have covered just 4.3 m in 5s (3.1 kph) whilst at other times I will appear to have covered 24.3 m in the same time (17 kph) - all with no actual change in pace. In fact this extreme error is relatively rare, but the noise is problematic nevertheless. So, I have used an Excel array formula to smooth the calculation of speed to reduce the noise inherent in GPS signals. More specifically I calculate the speed covered over a period of 1 minute (~180m) which reduces the speed noise to plus or minus ~1.2 kph. In Figure 1 I show a plot of unsmoothed and smoothed speed to illustrate the problem.
Figure 1. Speed data from a run imported into Microsoft Excel displayed as instantaneous speed (orange) and average speed over 1 min (black).

Figure 2 shows the heart rate (magenta) for the run on the same graph as the speed (black). It shows that heart rate fluctuates with speed, but it also rises continually throughout the run. Indeed, it is possible to model - or predict - the heart rate from just the speed and distance covered using a simple bit of maths.
Figure 2. Heart rate (magenta) and speed data from a run. The scales were set to align the traces at the start and show the fluctuations at approximately the same size.
If one adds to a 'resting' heart rate (in this case 56) the speed multiplied by a scale factor (5.8) one gets the blue line shown in Figure 3. So, the measured heart rate (magenta) is similar to a value one might predict with knowledge of two variables: a resting heart rate and a scale factor (i.e. how much heart rate rises for a given increase in speed). In this case the 5.8 means that for every 1 km/hour faster there is a 5.8 beats per minute rise in heart rate.

Figure 3. Heart rate recorded (magenta) and heart rate predicted from speed (blue) using the simple formula:
predicted heart rate = 56+5.8*speed in km/hour
Finally, we need to take care of the continual heart rate rise. This is also easy to do by allowing for a 1% rise in heart rate per km. Thus, predicted heart rate becomes: 5.8*speed*(1+distance*1%)+56). The similarity between this speed predicted heart rate and the measured heart rate is really very close and is shown in Figure 4.
Figure 4. Recorded heart rate (magenta) and heart rate (blue) calculated from speed and distance covered using the formula:  5.8*speed*(1+distance*1%)+56.
The close and simple relationship between speed and heart rate in a run has some interesting consequences. First, one can predicted a maximum speed if one assumes a maximum heart rate. For a maximum heart rate of 180 the equation predicts a peak speed of ~21 km/hour or 16.8 s for 100m at the start of a run. However, one needs to be careful with such predictions. The equation will only work within a certain range, namely the speed and distance of the data on which it is based. Furthermore, the accuracy of the prediction will of course depend upon the heart rate that can be achieved.

Whilst we are very use to seeing our heart beats displayed as beats per minute it may be of some utility to calculate heart beats per km after the run. When we consider fuel economy in cars, it is common to talk about miles per gallon - a measure of the amount of fuel taken to travel a distance. Equally (to a first approximation) each heart beat provides an amount of blood to muscles (or an amount of oxygen) and thus the number of heart beats is equivalent to the amount of 'fuel'. Thus, heart beats per km might well be a useful measure of fuel efficiency in much the same way as miles per gallon for a car. The only difference being that we are using the reciprocal since km per heart beat is a rather small number (although I think meters per beat would work). The madness of beats per minute as a metric becomes obvious with this analogy - who would ever talk about how much fuel a car takes per minute? It makes no sense at all since the amount of fuel used will depend upon the demand put upon the engine. In the same way heart rate on a run is dependent upon the demand imposed by the legs....Figure 5 shows heart beats per km for the run. At the start of the run it took about 600 beats to cover 1 km. By the end of the run, it was taking about 800 beats to cover 1 km. Since there was no general trend of increasing speed during the run, it seems likely that the number of heart beats required per km rises with distance covered. Indeed, this is the same phenomenon as in Figure 2.
Figure 5. Heart beats per km.
We can correct for this rise in the same way as we did before for heart rate by reducing the heart beats per km by 0.45% per km (this number seems to work well for most of my runs). Using this simple correction the heart rate per km profile no longer shows a rising trend, but it does vary a small amount with speed.
Figure 6. Distance corrected heart beats per km (magenta) and speed plotted for the run. The heart beat per km trace no longer shows a rising trend but fluctuates around 650. It is also obvious that the number of heart beats per km is depends on speed - it rises as speed falls.
This suggests that is takes slightly more fuel to travel the same distance slowly as it does to travel it faster. So, in much the same way as we define a fuel efficiency for a car we also have a measure of running efficiency. Equally, we have to define the speed that the test was done at and the terrain. Nevertheless, heart beats per km can be used to track changes in efficiency. Improvements in heart beats per km will occur both as run speeds increase with training and as stroke volume rise.
Over the past year I have calculated single average values of heart beats per km for every run I have done. During training I can see a clear decline in heart beats per km and a rise after longer periods of reduced training. The metric also seems very sensitive to fatigue (probably because both speed and efficiency drop) and I have used rises in heart beats per km as a signal to take rest days.
I know that to complete a 3:15 marathon I need a heart beat per km of under 600. I haven't yet calculated what my next marathon goal requires - but, what I do know is that achieving it is going to take a serious amount of training.


  1. Really interesting view to read. At the end you explain you compensate for distance to get a flat performance line, however didn't compensate for speed changes? If I'm right, if you can compensate for speeddeltas also here, you can use this metric for every training, slow or fast, doesn't matter to compare, to know the value of your shape. What's the reason you didn't do that speedcorrection in this metric?

  2. Dear Marc, you are correct that "distance corrected heart beats per km" (dHBpKm) changes with pace. Faster runs will produce lower dHBpKm than slow runs. Since the relationship between dHBpKm and pace is fairly linear, one could make a pace correction to produce a single performance value. Eye-balling Figure 6 it looks like a 20% rise in speed drops the dHBpKm by about 10%. I think the reason why I have not made that correction is that the relationship between dHBpKm and pace changes with training (and most of the runs where I gather the metric are reasonably close to my race pace). Of course, if you do a run with different paced sections (~1 km) that relationship could be calculated and applied. I did try tracking the gradient and offset of the relationship between dHBpKm and pace within a run for a set of runs but it become difficult to decide which datasets are producing unreliable data because of insufficient pace variations. I am sure that it is possible - and the metric must indicate fitness.

  3. This article is really interesting and provides an unusual view. The relationship between heartrate and speed can be really helpful in many scenarios.
    As you have mentioned, the data being used has pace in aerobic zone. Would the relationship be similar in other zones like fat burning and anerobic zones.
    Also, is the data generic enough to be applied to people with different weights.Lastly, is this analysis approved by NIH or any other standard institute?

  4. Very interesting article!
    How did you calculate that you need a heart beat per km of under 600 to do a 3:15 marathon? Is this just an extrapolation of the relationship between previous marathon times you have run and your corresponding heart beats per km. Or are you using a more fundamental method which is not specific to you?

  5. Dear Sam, Many apologies for the delayed reply. I have not been tracking the comments recently. Back in 2012 I developed a distance corrected formula for predicting marathon finishing times. The formula extrapolates a performance (average heart rate, pace and distance) to another. It depends upon both the rate at which heart rate rises per unit distance and the maximum heart rate which can be achieved over a given distance. Since then we have been refining that formula to try and produce a more 'general' result. Since maximum sustainable heart rates do vary within the population - both because of size and training history - it is always going to require some knowledge of your own physiology (which may also change as you train). However, by tracking your own race and training data it is possible to work out what those numbers are. For instance in my blog just before Frankfurt I looked at my heart rate prediction exptrapolated to race pace. I knew that an extrapolated 148 bpm was something I could easily average for a marathon (obviously since the marathon is longer than my training runs my average heart rate is higher for the marathon) - but 148 beats at about 12km is a pace that I can sustain for a marathon. I am currently producing a web-based calculator that enables an estimation of pace from heart rate data.

  6. Fascinating stuff. I've been tracking this kind of metric for a while myself. Have you determined roughly at what sort of pace within your range you are at your most 'efficient'? For me it's clearly when racing, flat out. My lowest ever readings (since I started tracking heart rate in May last year) were in a 5K race last August, but the figure was climbing kilometre by kilometre. Interestingly, it seems to level out for 10 mile or half marathon races, by about 60-70% of the way in, at which point I tend to be (on my fastest races) a little over 600 beats/km.

    1. It depends upon how you calculate efficiency. If you don't subtract off a 'resting' heart rate value then I agree with you that racing flat out gives the best heart beats per km value. The reason is that it takes the least time to cover the distance and so there are fewer heart beats that are just associated with basic metabolism (not running). If, however, you subtract off a nominal or resting heart rate first then you will probably see very little change in heart beats per km until things start to rise at very high pace. Incremental running efficiency is pretty constant over quite a wide pace range.

    2. That makes sense. I just used the figures from the training log on fetcheveryone.log, but I'll try to do a recalculation with the resting heart rate taken into account. It's a useful figure to know, I think, just as with MPG, because it seems to imply the least overall stress on the system (for distance covered, that is, rather than time).

  7. Christof,

    I was directed to your work via a friend and clubmate that you are 'working with', Ryan. Very interesting, and i am currently using your methods to train for London this year; including a very sweaty run this morning as the outside temperatures have become much milder!

    In the comment above dated Feb 2016 you mention that you were working on a pace/HR predictor. Have you got any closer to refining (and publishing) this?

    I have always had, as far as i believe, unusual HR data so have to be careful with any generic HR calculations. For example in my one marathon to date (well almost a marathon - the fateful Manchester 2015!!) i ran with an average HR of 182 as a 31 year old with a max of about 196-8 - about 92% of max!!! On all of my races my HR has always shot up very quickly, yet i can somehow sustain it for a long time.

    This has subsequently made choosing aerobic/easy/Z2 type HR ranges rather tricky, and i've had to go on intuition more than anything else. Though since starting with your 'no speedwork' methodology (i tried it out for a half in the autumn) i am finally seeing my HR coming down at steady, sensible paces.

    Any thoughts on this kind of variability? Do you think it is just down to individual differences, or am i missing the point of the training and running too hard i.e. i need to REALLY slow down to be running in the appropriate zones?

    For info, 70% of my max would probably be about 137. I could probably sneeze and see a higher hr than that - I would have to run at around 6.30/km pace to maintain that sort of HR.

    Sorry ... a bit rambly, but i hope you find your way to my unintentionally veiled comments, questions and queries!


  8. Dear Pete,
    Close to 200 max for a 31 year old is indeed quite high - but, not unheard of. The heart rate versus speed relationship is sensitive to how you train. My guess is that you have spent a good deal of time training fast and short. By adding in more miles at slower pace you will bring your heart rate down for a given pace - but, you will also bring down your max. However, the overall effect should be an improvement in race performance (i.e. max declines less that heart rate at a given - near race - pace. If you know roughly - for a given type of training - what HR you can maintain in a marathon race, then a simple extrapolation/interpolation of the heart rate versus speed plot can allow a decent prediction of race performance. Or, you can do a calibration run, in race kit at marathon heart rate, in the week before the marathon (Tuesday/Wednesday works well for a Sunday race). We don't have any intention of publishing anything on this - it isn't really novel!
    As for training paces, running slowly helps save the legs and allows for more running - if time allows. In general more distance will cause a gradual expansion of stroke volume - high heart rates may makes this less effective. So, if you want to increase your maximum blood pumping capacity then run a lot and run hot. But, running quickly also helps strengthen the legs etc. By the looks of your performances with the higher miles you should be able to knock a good chunk (15 mins or more) off your Manchester 2015 time.