Skip to main content

I know it is a small thing but it is one of those things that is quite annoying about Strava. You know that situation when you finish a run and notice that it is very close to a round number of miles, than you run a bit further to make it e. g. 5 miles. Then it uploads to Strava and shows as 4.99 miles in some parts of the app and 4.9 miles in other parts of the app (e. g. the training calendar). Can Strava stop doing that? 

Mine does the same thing. I think it has to do with Strava converting the Garmin GPS data into data that works with Strava...since you're not using Strava to record the activity, the data needs to be changed into a form that works on Strava.

 

Not sure if this is helpful: https://support.strava.com/hc/en-us/articles/216919487-How-Distance-is-Calculated

 


@Silentvoyager and I were discussing the same thing in this thread: https://communityhub.strava.com/t5/devices-and-connections/distance-discrepancy-between-strava-and-garmin-concept2/td-p/350

It's so miniscule that most folks don't notice, or aren't bothered by it, but that .01 can be the difference between a half marathon and a "long run".  The article about how STRAVA measures distance attributed some of this to smoothing of GPS tracks, but this .01 seems more systemic.


So this morning I did a short warm-up on treadmill (I do that before strength training sessions). Garmin has measured 1.53 miles using the internal accelerometer. On Strava - it is 1.52 miles. There wasn't even any GPS data in the uploaded file, but Strava has still managed to subtract 0.01 miles.
I think in general that article is misleading. What Strava describes there would apply only when uploading the data in GPX format. Most modern devices upload the data in FIT format, which has a special header that contains activity summary. I am pretty confident that Strava just takes all the data from that activity summary as is including the distance, the elevation gain, etc. Strava can correct the data using the method described in the article, but but that applies only when you choose to do "Distance Correction".

Overall the 0.01 mile distance seems to be systemic. It is some sort of rounding bug which is probably caused by not exactly correct data conversion from meters to miles or perhaps by Strava always rounding all distances down, or the combination of the two.

 


I always thought that was just a rounding issue, but looks like Strava does a lot of post processing on the data. The speed and power are always lower as well.


Hi @Silentvoyager

We know this has been a long-time quirk, and often a frustration for many athletes, including some of our own employees! The reason this happens is that Garmin (both the device and Garmin Connect) rounds up distances, whereas Strava rounds down. Distances are always stored in meters on devices and then shown on Strava in the athlete's preferred units (i.e. miles/yards for imperial and kilometers/meters for metric). So for example, a distance that comes over in a file as 4995 meters will get displayed on Strava as 4.99 km and on Garmin as 5.00 km. Similarly, if on your watch you run until you see 1.00 miles, that might actually be something like 1608.0 meters (0.9994 miles) and Strava will show 0.99 miles.

It is also worth clarifying that most Garmins, even relatively older ones, provide a distance directly in the file that Strava uses. There are cases we calculate distance ourselves from the raw GPS points; for example, if a certain device doesn't provide it. And athletes can also choose to use our calculated distance to override the device one - see How Distance is Calculated for more. 

One other nuance for the question from @MattS_bsb regarding race distances like a half marathon or marathon. There are features like Best Efforts and Challenges based on those Best Efforts that require athletes to complete a certain distance. One thing we have seen is athletes who run 26.2 miles and not receiving credit. This stems from the same issue above - that a marathon is 26.22 miles when converted from its official distance (26 miles and 385 yards), and athletes are often slightly short.

We understand that this is a bit of a philosophical stance we've taken - the digital version of "running all the way to the line". There is a tradeoff here between the consistency with Garmin and satisfaction of the round numbers (because yes, we've all been there), and the care we aspire to take with data correctness and integrity. This is one of an exceedingly long list of nuances around data as we pursue making Strava work for thousands of devices, each with its recording subtleties and differences.

Hopefully that helps clear things up and explains why you might see some crafty athletes running til they see 1.01 on the watch. We will strive to continue using this forum as a place to transparently explain more of these types of situations to athletes.

 


Varun, Thank you for the detailed answer! I think Garmin does a proper rounding and not always rounding up. In other words, 4.995 rounds to 5.0 but 4.994 rounds to 4.99. Personally I think that is the way to go. That is the proper scientific approach that everyone gets taught in school. Always rounding down is arbitrary, especially considering that GPS distance error is typically much greater than the rounding error. Because of that the notion that a user might not have run the distance is simply wrong. Rounding down is even more annoying in some parts of the UI that show only one decimal digit, for example in the week stats or in the training calendar. 

 


@varun  This isn't just an issue with Garmin, as I have friends/fellow runners who experience this with COROS watches.

Also, I would refer you to my post on this topic where I cited non-GPS activities such as indoor rowing where the source data is registered as one distance, but STRAVA arbitrarily rounds down, e.g. 5000 meters on a C2 rower calculated as 4997 on STRAVA.

https://communityhub.strava.com/t5/devices-and-connections/distance-discrepancy-between-strava-and-garmin-concept2/td-p/350


I actually disagree - I think rounding down is the correct approach, rather than rounding up.  Think of it in terms of a race... if your Garmin is rounding up, and you were just about to cross the finish line, would you stop and complain that you are 'done', even though you haven't crossed the line?  Rounding down ensures that you go the FULL distance, not just shy of it.  

Another analogy is in engineering/construction - would you want something to be slightly too small, and compromise the integrity of a structure?  By rounding down, I feel that Strava is maintaining the integrity of the distance reported.

I also recognize that I may be in the minority opinion here - and these are just my opinions.  I too have finished a race (1/2 marathon) to find the distance wasn't long enough, then restarted the Garmin and (looking like a fool) ran around after the finish line to get to the proper distance.

Win Win Option? Maybe Strava could "round down" in "race mode" and then "round up" in non-race mode?  Kind of like it removes the stop time, but this would be a code change, and would also then require recalculating all activities to the current date (not an insignificant amount of computing power)... I'm not sure the cost would be justified for such a little thing, but maybe it could be done going forward... just my 2 cents.


Neither rounding down nor rounding up is correct. It should be a proper scientific rounding as I shown in the example above. And regarding your race example, for most consumer grade GPS devices distance accuracy is 0.5-1% at best, so let's not pretend that we don't want to give someone an extra 0.005 mile that they haven't actually run. 


@Silentvoyager @CreakyCrank I appreciate both of you adding your perspectives, and recognize athletes will continue to disagree on the approach taken. One additional point regarding consumer GPS precision - while it is true that it tends to be in the range of a few meters (and right around 0.005 miles), there is research supporting that in many cases, GPS tends to overestimate true distance. Here are a few links discussing this:

That said, we acknowledge that the approach we are taking here is as much to do with the philosophical reasoning @Silentvoyager mentioned as well about the integrity of "running through the line" as it is the science, and likewise both open and happy to hear more thoughts about this from other members of the community!


@MattS_bsb if you can file a Support ticket with your C2 rowing files, we can take a look into what is going on there, as it is likely (as you and others in the linked post noted) different than the "rounding" issue here.


Thanks @varun 


Hi Varun, thank you for your comment and the links to the articles. I have been a runner for 11+ years and I run a lot on trails. I used 7 different GPS watches.

My personal experience is that all watches, even the best one tend to underestimate distance on trails and even on roads when there are a lot of turns. Basically if you go to any trail race in my area that has a certified distance, mostly everyone would post distances that are typically 3-7% short. Yes, GPS positions wobble side to side compared to the direction of travel, but all modern devices use sensor fusion where the distance comes from a combination of accelerometer data and the GPS data, and when GPS quality isn't great (e. g.) running in a forest, the distance comes primarily from the accelerometer sensor data. Also needless to say that that has a tendency to cut through turns and straighten wavy trails. In other words modern devices already attempt to fix that side-side wobbling of GPS and do that fairly well. So what you mentioned, perhaps, applies to cycling, but that certainly doesn't apply to running. And then on top of the already shortened distance Strava rounds it down some more.

As a supporting evidence, if you try to do distance correction in Strava, in most cases the distance would increase, which proves that the distance isn't based on the GPS track alone. 


I wanted to add two more points to this thread.

1) Strava's rounding down of the distance is well known and disliked on Reddit (e.g. r/running subreddit), and often mentioned and referred to as "Strava Tax". If nobody likes that, why Strava insists on doing that? 

2) The same rounding down seems to apply to elevation gain. 


@Silentvoyager To your first point, I believe what @varun is saying in the response when they refer to "the care we aspire to take with data correctness and integrity. " is that Strava is not going to round up, because they are more concerned with data correctness and integrity, or "running all the way to the line".  - basically, they (Strava) are ensuring that you go the full distance, and not rounding up ensures this... you have to 'cross that virtual finish line'.

Elevation would also apply (but this is even more of a contentious issue, and your elevation will vary wildly from device to device).  I don't count on any device to be accurate with elevation numbers - I can ride next to others and have a variation in elevation between us of 100s of feet (or meters/metres if you prefer metric)... I can complain all day about elevation! (but it really has nothing to do with Strava when the GPS devices are so varied in the numbers it gives).

I know the "Strava Tax" can be frustrating/upsetting, and can cause an athlete to not get a completion of a certain distance, but I don't think Strava will start rounding up anytime in the near future... my best advice is to run/ride a bit further than the distance you are looking to achieve, or climb a little bit higher (also, this is likely not the answer you are looking for, but it is the only solution based on @varun's response on Strava's methodology). 


@CreakyCrank , I understand @varun's answer - there is no need to explain it to me.

My point is that every other GPS device brand does proper rounding. And then Strava says - we know better and we better not award you those extra 0.005 miles (which is about 10 steps) in case you haven't actually run that. By doing that Strava says that it knows better than any other other GPS device brand, which is pretty ignorant.

The points is that it isn't scientifically correct and only causes annoyance for the following two reasons:

1) The GPS distance accuracy is 0.5-1% at best and can easily be up to 5% wrong on a challenging terrain (that is my personal experience), and even worse than that. So if someone has run 5 miles, in reality that may be anything between 5.95 and 5.05 miles in the best case. So always rounding down in that situation in case they didn't run that extra 0.005 miles is simply not scientifically correct. It just introduces a bias for no particular reason.

2) @varun mentioned that GPS devices tend to measure GPS distance long. But that is simply not correct. Perhaps that was the case 10 years ago. It is true that early GPS devices that relied on GPS only had quite a bit of wobbling which could add to the distance. But modern devices use sensor fusion and tend to factor accelerometer and gyroscope heavily in the distance calculation and counteract the wobbling.  If anything, modern devices tend to oversmooth the track, especially around turns, and the distance tends to be too short, especially when running on trails with a lot of turns. If you don't believe me, try searching for Garmin Forums  for "distance short": https://forums.garmin.com/search?q=distance%20short

When I know that my Garmin device already under-measures the distance and then Strava reliably subtracts 0.01 miles from that, that causes nothing but irritation. 

And just to make it clear, I am not saying Strava should round up. It should do proper scientific rounding instead of truncation that it currently does.

 


I have just been discussing this exact issue on Reddit and saw the following comment:

I just looked at several of my runs and on a 10k distance, every one is short anywhere from .01mi to 0.03mi. My watch is uploading in FIT and has the distance embedded in the data. Are we sure it's just rounding? I personally don't care if it's off 0.03mi on a 10K distance.

I understand that the 0.01 mile difference can be explained by rounding, but how the larger differences would be explained? The same reddit thread gives another example of 0.06 mile difference when uploading from Apple watch. Now that I think about that I also recall seeing 0.02 mile difference when uploading from Suunto 9 Baro via FIT format. 

 


This keeps coming up in social networks regularly. There are always a lot of misconceptions about what everyone refers to as "Strava tax", but I think at the end that simply harms reputation of Strava. It would be better for Strava to stop being stubborn about this issue and make distances match to Garmin and other brands by doing proper rounding.

https://www.reddit.com/r/Strava/comments/128fzjh/why_does_strava_apply_a_penalty_of_10m_to_every/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=share_button


The problem could be that internaly the Garmin has recorded more decimal point accuracy than it displays and so therefore rounds the result. For example maybe what the garmin recorded was actually 1.5152 miles. Since Garmin only displays to two decimals it takes the remainder and rounds the value. Since it is above "5" it rounds the 1.51 to 1.52. Strava on the other hand simple truncates at the two decimal position. The Garmin could record 1.519 and it would still show as 1.51 in Strava,

I strongly disagree with Strava's implementation since this supposed adherance to accuracy is based on a flawed assumption that the recorded data is without error itself, which is certainly not the case.

I recall learning "metric" rounding which states that when the remainder is precisly on the "5" with no additional numbers then you round to the nearest even number. 20.515 would round to 20.52 as would 20.525. The caveate is that there can be NO additional digits of signifigance in the number being rounded beyond the 5 being rounded away.


this supposed adherance to accuracy is based on a flawed assumption that the recorded data is without error itself, which is certainly not the case.

Yes, that's the point. Distance from modern GPS devices is accurate to about 0.5-1% at best and tends to actually be on the short side even without rounding down by Strava. So Strava adds salt to the injury. Yes, in the past GPS tracks recorded by devices had a tendency to wobble thus adding the distance. But most modern devices fuse data from multiple sensors to correct the wobbling. I know for sure that distances produced by Garmin Fenix 6 or 7 are nearly always shorter than the sum of distances between consecutive points on the recorded GPS track. If I do distance correction in Strava that always increases the distance. In other words, these devices already do correction for wobbling, and in the process they often cut through corners and do other stuff that overcompensates the correction and makes the distance a bit short. 


Hi Varun,
Your text explains a lot, but it doesn't make it right. When I run an official half-marathon, then a professional company has measured the distance 3 times, just to make sure it's correct. No philosophical stance or roounding should deny me my Best Effords or Challanges reward in such cases. But Strava does. Running just a bit more might be an option (although quite ridiculous) during training, but in competion it just isn't. Get your act together!


This also comes up in group runs where there's a goal distance (say 10 miles), and when folks are approaching the end of the run/distance, I'll usually remind folks to "round up for STRAVA!!".  We've all endured that slight sting of seeing our final distance show up as .99.  Oh by the way, I've seen STRAVA tax become a real thing for myself and others using indoor rowers (no GPS), usually around 3 meters.  Weird right?


Your philosophical stance just cost me a pb on a half marathon that i have been training for for 5 months. Garmin says 21.1km and Strava says 21.09km. What gives you the right to do this? Rounding down is just stupid. I work with data for a living and no dataset is 100% correct anyway, but you are denying athletes pb’s for a couple of meters. I trained, i cried, I covered the distance but yet you deny me a pb. Do you really think that anyone cares about your philosophical stance? Its stupid. Who is the clown making these decisions in your company? Get your act together Strava!


The source of this data is Garmin, not Strava. You dont have the right to change the data. 


So if your sales director has a sales target of say $10k and that person only reaches $9,999.99, would you deny him his bonus ? I dont think so. Match Garmin or dont sync with Garmin


Reply