GPS Accuracy Test: GPS vs. Smartphone vs. Cyclocomputer (Round 2)

We test two smartphone apps and four dedicated GPS devices to see how accurate they are for recording bike rides.
photo: Aaron Chamberlain
photo: Aaron Chamberlain

Two and a half years ago we conducted a test to see which was more accurate for recording distance and elevation data: a standalone GPS unit or a smartphone running a GPS app like Strava. In that test we found that GPS apps, running on a smartphone or even a tablet device, can record very accurate data. In fact, the Strava app on an iPhone and an Asus tablet reported more accurate data than any of the standalone GPS devices we tested.

We also found that most GPS devices overreport distances, though usually by less than 3%. Elevation data collection, on the other hand, is much more variable, and the use of online services like Garmin Connect and Strava can have a big influence on the accuracy of that data.

After reading through all the comments on our previous test, we knew we needed to perform a follow-up test, and since it’s been more than two years since the first test, we would need to bring in a new crop of GPS devices. This time around, we added a wheel-based cyclocomputer for comparison, and performed multiple rounds of testing to get a sense of both accuracy and consistency among the devices.

Set Up and Calibration

We used the same running track as in our 2014 test to ensure a course of known distance in a controlled environment. There was some question last time as to whether our track was a metric, 400m track or a quarter-mile track. Well, after this second round of testing, we can confirm the track is indeed a quarter-mile track, as more than one device measured 4 laps at exactly 1 mile.

Warming up for the test. photo: Aaron Chamberlain
Warming up for the test. photo: Aaron Chamberlain

The wheel-based cyclocomputer we used for this test is a simple Cateye Velo 7. Like most cyclocomputers on the market, the Cateye Velo 7 measures the frequency and number of revolutions the bike wheel makes to determine speed and distance. In fact, official running events require the use of a similar, wheel-based device for certifying course distances, because this method is generally known to be quite accurate. However, it’s crucial that the correct wheel circumference is programmed into the cyclocomputer to achieve a high level of accuracy.

While we did our best to calibrate the Cateye Velo 7, we were unable to get definitive accuracy based on our wheel setting. The included documentation suggests a circumference value based on wheel diameter and tire size, which in the case of our test bike, was 233cm. We double-checked this value by running a piece of tape along the circumference of the tire, then measuring the tape, which gave us a value of 233.3cm–not too far off! (The Cateye Velo only accepts whole numbers, so we used 233cm.) The result: the Cateye Velo 7 reported our 1-mile test circuit was 1.02 miles long, or 2% longer than the actual length.

Now, keep in mind that mountain bike tires aren’t perfect circles due to tire deflection. So, it’s possible our actual riding tire circumference was less than 233cm. According to my calculations, the cyclocomputer clocked 706 revolutions during the test. So, to get exactly 1 mile from our test, we should have set the wheel circumference to 228cm, which seems like a big difference from 233cm–more than the amount I would expect the tire to deflect.

The alternative explanation is that the track is actually 2% longer than a quarter mile, or that I didn’t stay completely true to my line around the track. The latter sounds more plausible, but the other two explanations could also be at play here as well. However, averaging all the device readings across all the rounds of testing shows an overall average reading of 1.003 miles, which makes a strong case for saying the true length of the test route is indeed 1.0 miles.

This time around we ran three, one-mile tests instead of a single, 10 lap, 2.5-mile test. Each test took place with a short rest in between to stop and restart all the devices. The test took place at around 4pm local time with partly to mostly cloudy skies.

Distance Accuracy

I was actually pretty shocked to see how well each device did in our test.

DeviceTest 1Test 2Test 3Average error
iPhone 6s Plus, Endomondo1.000.990.99-0.67%
iPhone 6s, Strava1.
Garmin Edge 5201.
Lezyne Mini GPS*
Bryton Rider 3300.970.970.97-3.00%
Trywin D11.003

All the devices we tested were within 3% of our one-mile benchmark, and all but the iPhone apps were completely consistent from test to test. That second part blows my mind. Of course we need to do more testing, but this suggests that two riders, with the exact same device riding the same course at the same time, should get nearly identical results. In reality, this hasn’t been my observation, but again, I’d be really interested to test this.

The Trywin GPS listed in the results is an inexpensive GPS we picked up online and reviewed several months ago. Unfortunately the button combos and menus are so complicated I failed to correctly start and/or stop the device during our first two tests. It’s a shame, too, because in the third test when the GPS actually worked, the Trywin turned out to be the most accurate, off by just 0.3%.

Interesting to note how messy the iPhone tracks look, yet the distances they report are quite accurate, perhaps due to additional processing and error correction within the apps. Click to view full size image.

Officially, the iPhone 6s running Strava and the iPhone 6s Plus running Endomondo were the most accurate in our test (±0.67%), followed closely by the Garmin Edge 520 (+1%). The Garmin Edge 520 does deserve props, however, because it was more consistent than the iPhones. Also, it should be noted that the Strava app itself only reports distances to the nearest 0.1 miles, so we had to run the iPhone 6s data through an online tool to get more precision, meaning that result is not 100% verified.

The least accurate device in our test was the Bryton Rider 330, which consistently underreported our control distance by 3%.

Elevation Accuracy

Click to view full size image.
Click to view full size image.

Measuring elevation is notoriously tricky for any device, whether the device is using GPS signals, a barometric altimeter, or both. Our cyclocomputer, the Cateye Velo 7, doesn’t measure elevation data, so it’s not included in the test results. And while the Trywin GPS does measure elevation data, we don’t have a way to get the raw data off the device to analyze it, making it impossible to compare to the other devices. (Again, this is a shame because the on-device summary for the single test we were able to complete with the Trywin shows zero elevation gain or loss, which is pretty much spot-on correct.)

DeviceAverage ElevationAverage Elevation Change
iPhone 6s, Strava1014.41.20
Garmin Edge 5201021.32.40
iPhone 6s Plus, Endomondo1013.512.33
Bryton Rider 330733.77.23
Lezyne Mini GPS*1017.529.70

Using data and research from our previous test on this track, the correct elevation for the track should be between 1,014 and 1,015 feet above sea level. For the devices we tested this time around, the Strava and Endomondo apps on iPhone reported the closest average elevation to actual (1014.4 and 1013.5, respectively) while the Bryton Rider 330 reported the least accurate elevation, averaging 733.7 feet across the three rounds of testing.

While knowing the actual elevation above sea level during a ride is interesting, most mountain bikers are more interested in knowing how much elevation change was experienced during the ride. For this measure, we would expect elevation variation (that is, the difference between the minimum and maximum elevations) during the tests to be essentially zero since the track is flat, though to account for a slight variation in elevation around the track, we’ll say that 1 foot of elevation variation is just as accurate. The chart above shows the elevation profiles generated by each app and device.

On this measure, the Strava App on iPhone 6s is the most accurate, averaging just 1.2 feet between the minimum and maximum elevations reported. The Garmin Edge 520 comes in close behind, adding just another foot or so to the variation. The Lezyne Mini GPS had a real problem here, showing wild elevation variations of up to 53 feet in a single test. The Endomondo app had problems as well, showing an average of 12 feet of variation per test.

It should be noted that neither the Strava or Garmin data was taken directly from the device, allowing those respective online services to potentially correct the data in the cloud. However, the same can be said of the Endomondo data, which ended up with the second worst performance in our test.


Compared to our first test, it seems GPS devices and apps are becoming even more accurate than they were even just a couple years ago. Of course this could be due to the mix of devices we used in the two tests or even the weather, but it does seem plausible that GPS hardware and software are continuing to improve.

Smartphone apps still dominate in terms of accuracy, and inexpensive GPS units appear to report the least accurate data. Even the stalwart of cycling distance measurement, the cyclocomputer, clearly has its flaws and can’t be considered much more or less accurate than GPS and smartphone devices**.

So, as always, take your ride data with a grain of salt and realize that it will never be 100% accurate, no matter which device you use.

* The Lezyne Mini GPS we tested is an older model, and is not the same device that is currently on the market

** This does depend heavily on the layout of the course, which we will detail in a future article. But for the purposes of this simple test, the cyclocomputer isn’t much more or less accurate than the others.