cancel
Showing results for 
Search instead for 
Did you mean: 

Why Strava distance is always 0.01 mile shorter than Garmin distance?

Silentvoyager
Kilimanjaro

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? 

2 ACCEPTED SOLUTIONS

varun
Strava
Strava

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 | Staff Software Engineer - Geo Team
https://www.strava.com/athletes/varun

View solution in original post

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!

View solution in original post

44 REPLIES 44

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.

 

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.

Always rounding ...5 up means you round up more often than down. That's why most scientific journals require their authors to round ...5 to the nearest even number to prevent a systemic error.

On the other hand, World Athletics requires all distances to be rounded down because official race distances are minimum distances. Similarly, all measured times get rounded up.

The reasoning being that running a marathon in 3:00:00 means you ran a course of at least 42.195k (and not a fraction of a nanometer less, as measured by a Jones Counter), and it took you 3 hours at most and not a nanosecond more (as recorded by the electronic timing system).

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. 

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

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.

Ready, Get Set, Go!

Welcome to the Community - here is your guide to help you get started!


Know how to use Community


Understand Community Settings