Calorie tracking for indoor vs outdoor = discrepancies


I have only recently begun to ride outdoors, after a long period of indoor Sufffering. I understand the basics behind effort, weight, heart rate etc all working together to calculate how many calories are burned during a workout. However, I have noticed that my Wahoo Elemnt is reporting far greater calorie burns during an hour of outdoor cycling than an hour of intense suffering.

In both cases, I was using the Wahoo heartrate monitor, plus a cadence and speed sensors.

For example, here we have Who Dares Wins:

I can tell you now that was a hard workout for me. 403 kcals.

Now let’s look at a short morning ride outside:

I had a good ride and pushed a bit, but it was nowhere near as tough as Who Dares. 1,023 kcals.

Could anyone suggest why there is such a big difference? I have tried checking my settings and they all seem right, although I’m not exactly an expert in this.

Having done some googling, it looks more normal to burn around 7-900 kcals in an hour or so, although of course it’s the internet…

I realise there is a tendency here to tell people to ignore calorie counting, but for me right now this is proving a very useful method of controlling weight loss, so I am trying to work out what’s going on.




Ah yes, calorie counting. Depending on the firmware revision, I’ve had my Wahoo reports go from way under to way over the calories counted by the sufferfest. Sometimes by up to 500+ calories in either direction. It is honestly the only thing I don’t like about that head unit. I think they use heart rate to calculate it and ignore power data. And I don’t think Garmin is any better.

To make matters worse, depending on the platform you upload to, they may or may not overwrite the calorie count uploaded by the device. I think strava fairly recently switched to trusting the upload rather than re-doing the calculation.

Like you, I also use the calorie counts to adjust my food intake for the day but I’ve had to ignore the calorie counts and instead just look at the kJ of work done for the ride. They don’t line up exactly but I find they’re close enough and the calorie reports coming out of the Sufferfest workouts seem to reflect this.

If you look at your two rides above you’ll see the kJ energy output line up nicely with the different ride durations and efforts. If you ever get a power meter for outdoor riding, you’ll get even closer! I find that an hour ride with an avg of 200w is hovering around 700 kJ. So your numbers above look about right to me.

I will also preface this by saying I am just an amateur plodding along and have no scientific background in this. But using this rule I’ve been able to successfully fuel my workouts, avoid bonking and keep my weight steady.


Thanks Nick for the comprehensive and very lucid explanation - that makes a hell of a lot of sense to me. I’m going to keep a little log of this stuff and see what happens. Really appreciate the reply.


The most recent firmware update on Wahoo head units all Wahoo head units will calculate calories based on kJ if that head unit is paired to a power meter. If there is no power meter connected to the head unit, calories are based on heart rate. We also updated the HR equation used by the head units to make it improve accuracy. If neither heart rate or power are paired with the head unit, no kcal value will be calculated.

When looking at your outdoor ride, the duration and estimated power would calculate out to about 500kj.

[1 Watt = 1 j per second. 1:11:35 = 4295 seconds, 4295 seconds * 116 Watts = 498,220j = 498kJ - they probably calculated avg power to be 116.4 but rounded it for obvious reasons]

Once you update the firmware on your ELEMNT compare the head unit values to the Strava values after your next ride. If the calorie count on Strava matches the calorie count on your head unit Strava is trusting the head unit value. If the values differ, then Strava has their own heart rate based calorie calculation.
Hope that all made sense!

If you are not interested in why we use kJ to estimate power you can stop reading here!

Now technically speaking, 4.184kJ = 1 kcal, however, we use a 1 to 1 ratio when using the kJ recorded during a ride.
We can say that 1 kcal = 1kJ thanks to the efficiency of humans. When converting food energy into movement (like pedaling), humans are only around 24% efficient. Meaning your body needs to use 4.184 kJ of energy internally to get 1kJ of energy into your pedals. The rest of that energy turns into heat, which is why exercise makes you sweat; your core body temperature is increasing. To put the heat production in another context, riding at 250W creates roughly 750W of heat, which is the same as most toasters.
Now not everyone is 24% efficient.
We have measured the actual conversion rates in our lab from 0.9 kJ = 1 Kcal up to 1.12kJ = 1 kcal.
Using this 1:1 formula can still underestimate (and overestimate) calories for some people. Still, it is significantly more accurate and consistent from user to user than the heart rate based calculations.


Thank for the actual scientific explanation @Coach.Mac.C, it’s great to hear from someone who actually knows what they’re talking about.

And a new firmware update on this exact topic! I’ll get that installed and check it out for the next ride.


That’s incredibly interesting - thank you for the detailed breakdown. It’s also rather pleasing that Wahoo would kick out a firmware update just for moi :smile:


FYI, just did a ride this morning with the new firmware and there is still something a little off. On my wahoo bolt, both the Kj and calories lined up exactly as promised at 1277. However when I check Strava and Training Peaks they report 1277 calories as uploaded from the wahoo but do their own Kj calculation based on power data and report 1670 Kj.


In any case, that is close enough for me so I’ll aim for somewhere in the middle.

1 Like

Interesting, did you have a power meter for this ride? Or are the Strava power values the estimated power that Strava calculates?
Based on the 189W average (189 j/sec) that Strava is showing, for 2:26:36 which is (8856 seconds x 189 j/sec = 1673784 j = 1674 kJ.

1 Like

Hi @Coach.Mac.C

Thanks for the reply! The ride was tracked with a Favero Assioma Duo power meter. If you need any more details such as the ride files, just let me know.

1 Like

If you could send the workout file in a direct message on here that would be fantastic.

1 Like

I wonder if anyone could confirm the firmware update that I can expect results to be a bit less enthusiastic? I’ve just done a pretty easy two hour ride outdoors and it’s reporting 1700 calories in the ELEMNT bolt app. The app and bolt are up to date.

The Bolt firmware is version WB-15 8214.


1 Like

Still reporting the discrepancy using ELEMNT Bolt for me - double the calories on Bolt than you would expect when comparing kJ output during a ride.

1 Like