GPS technology: is your watch lying to you?

Rick Lovett explains why GPS technology is far from perfect, and what this means for runners when monitoring pacing and performance

I can’t remember how many times I’ve seen it happen. Runners complete a race and huddle together, comparing readings from their GPS watches. “Mine says 13.24 miles,” one says after a half-marathon. “I’ve got 13.29.” “I’ve got 13.30. Was this course too long?” The normal answer, if you don’t really believe the course was mismeasured, is to blame trees, tall buildings, and other things that might interfere with the GPS signal – or to chalk it up to the ‘deliberate error’ involved in measuring certified courses. You may even assume you didn’t do a great job of running the bends, adding distance to that supposedly certified course.

However, the difference between 13.1 miles and 13.24 is a lot of messed up tangents. And the deliberate allowable error in a half-marathon (technically called the ‘Short Course Prevention Factor’) should only be 21 meters (0.013 miles) at most(1,2). Nor are trees and skyscrapers always to blame. I’ve seen GPS watches make similar errors in wide-open terrain on straight-line courses. This begs the question: what’s happening?

GPS basics

GPS at its best is an exquisitely sensitive technology. Geophysicists use it to measure the slow progress of plate tectonics, in which continents move at about the rate your fingernails grow. They even use it to measure changes in these motions, looking for miniscule variations that might indicate increased risk of an earthquake or volcanic eruption(3).

The GPS sensor in your watch however isn’t that good. It’s not a research instrument, and it’s constrained both by the need to fit in your watch and not to drain the batteries before your workout is over. In part for these reasons, it works by taking a series of fixes at discreet time intervals – ie now-now-now-now-now – rather than by monitoring your more instantaneous position. The frequency with which these fixes are taken varies (and may be adjustable for some watches), but it generally appears to fall somewhere between once every second and once every five seconds. These fixes aren’t perfect. One might be a bit ahead of you and to the right. Another might be behind and to the left. Even if you run in a straight line at constant pace, the watch may see your movement as a variable-speed zigzag (see figure 1).

Figure 1: GPS deviation ‘bounce’ caused by tall buildings

Real data recorded from downtown San Francisco. The GPS watch wearer has walked in a straight line but signal reflections from buildings has resulted in scattered trackpoints, leading to an inflated estimate of distance covered.

The easiest way to spot this deviation is by looking at your watch’s report on how much you gained in altitude. Years ago, I coached a runner who liked to run a rail-trail conversion path along a river. The course was about as flat as it can get, but her GPS watch always reported her as doing about 50 feet per mile of climbing. and then another 50 feet per mile of descent. On a 3½ mile out-and back, that was a whopping 700 feet of total elevation change, up and down, on a course with no visible gradient. It was that same zigzag-type deviation, but in an up-and-down direction rather than lateral. One fix might have levitated her two meters above the ground. Another might have put her neck-deep in asphalt. Add it up, and the watch thought she was running a series of tiny rollers!

Smoothing algorithms

GPS watchmakers are aware of scatter problems, so they take measures to counteract them. I’m not privy to the details, but the obvious way is by basing readouts on average readings, not instantaneous ones. This isn’t inherently bad. Even if your watch had the ability to produce instantaneous readings with millimeter precision, that’s not something you’d really want. After all, the watch is on your wrist. That means it moves differently from your body as a whole, and while it might be interesting to see how far your wrist travels during the course of a mile’s worth of arm-swings, that’s not terribly useful for ordinary running!

However, the moment you try to convert ‘now-now-now’ readings into averages, you run into new problems. If you’re running in a straight line, the best way to produce such an average would be by incorporating a lot of fixes into it, and smoothing out the erroneous ones to get the best estimate of your true course.

But the moment you turn a corner, a smoothing algorithm designed for straight lines will be slow to react. To your watch, the first fix as you start to round the corner will look like an error, so it will treat you as though still moving in pretty much a straight line. When the next fix shows you continuing to curve, the smoothing protocol might start to wake up to the possibility that you really are turning, but its track of your progress is still likely to spin you to the outside of the turn as it belatedly tries to keep up. In other words, it’s not you that’s running bends in a zig-zag fashion- it’s simply the watch’s attempt to track your progress while also smoothing the data.

The alternative, which is to forget about smoothing, isn’t any better. Sure, that would be more responsive to corners, but now you’re back to the zigzag effect when you’re running in a straight line. Basically, it’s a tradeoff between getting straight lines correctly, and not being too slow to catch curves. This, by the way, is why GPS watches are so notoriously inaccurate on tracks; the continuous slow turns are simply not something their algorithms are designed to recognise properly.

What’s my pace?

A related problem is that one of your watch’s primary functions is to provide you with pace information. Without a smoothing algorithm, it would react to every bad fix—or every motion of your armswing—causing the pace readout to fluctuate uselessly. To avoid this, it has to produce an average that gives a consistent enough reading, from second to second, to be useful.

To test this with your own watch, try doing a workout akin to ‘Billat 30-30s’, which is basically a workout in which you change pace by forty to fifty seconds per mile every thirty seconds. When Valerie Weilert (see profile) shared her GPS watch’s readout with me after doing such a workout, the results were intriguing. Looking at the readout, I could easily see every speed change. She sped up, she slowed down, she sped up, she slowed down, back-and-forth nonstop for a couple of miles. It was fun to see the details in her watch’s measurements and be able to trace the fast/slower pattern, just as assigned. But even more interesting was that the watch showed her speed as varying in a sinusoidal pattern—nice rolling curves like waves on the sea. This was a pretty pattern – but it WASN’T what she actually did. In the real workout she didn’t gradually speed up, then gradually slow down. She switched from one pace to the other in the course of a few strides. Rather than being a sine wave, the readout should have been very close to a square wave (see figure 2). The fact that it wasn’t meant her watch was taking at least thirty seconds to fully react to her pace changes. It was a perfect example of a smoothing algorithm in action.

Figure 2: Sine wave vs. square wave

Valerie’s actual pace readout (top) should have looked more like the squarewave plot (red, bottom), as her changes of pace were nearly instant. However, the algorithm smoothed it out to much more a sinewave shape (blue) suggesting – erroneously – that her changes of pace were gradual throughout.

Severing the tech tether

What should runners and other athletes do with this information? First, calibrate your GPS. Go out on a fairly straight, open, accurately measured course and run a few miles, looking to see what your watch records. If you don’t know such a course, borrow a surveyor’s wheel, or use a calibrated bicycle odometer to measure one. Or, use a satellite-based measuring tool such as In tests using tracks and sports fields, I have found such satellite tools to be accurate to within at least 0.1 percent, and possibly better.

Secondly, until proven otherwise, you should assume your GPS watch reads one percent long – and therefore gives you a pace that is one percent fast (other than on a track, where they tend to have the opposite result). Some models fare better, but that’s the average, and I’ve seen it time and again. That’s not important on training runs, but in a race where you have a target pace, such as a qualifying standard, it means you should go one percent ‘too fast’ on your watch–about three to five seconds per mile, for most people. That won’t make a lot of difference in a 5K, but it’s enough to add up to a 1½ to 2½ minute difference in a marathon.

This might feel a bit scary, since the numbers on the watch make it look like you’re running too fast—a disconcerting feeling. But I’ve coached people to do this in marathons like the California International, Boston, Chicago, and Grandma’s, where unlike some smaller marathons you can trust the mile markers to be in the right spots. Their GPS watches almost always beeped each mile exactly the expected number of seconds before the marker.

Professional road racer Lindsey Scherf agrees. Typically, she says, if her GPS watch is reading a 5:20 pace, she’s actually running 5:23s – pretty spot on with the recommendation of one percent faster. I have run with Polar, Garmin and Tom Tom GPS watches and they all seem to produce the same 3-second-per-mile differential at roughly 5:20 pace.

The bottom line is that GPS watches are great training tools, and are useful in races to help you keep your pace in more or less the right zone. But there are times when you may just want to dispense with the technology and do it the old-fashioned way, when you run according to feel, reinforced by stopwatch-timed splits at accurately measured distances. Otherwise, you risk ending up wondering why, if your watch was telling you all the time that you were running the right pace, you ultimately came up short.

Future-tech fixes for GPS watches?

One solution would be variable smoothing algorithms: ones that recognise changing conditions and react accordingly. Basically, this would require three modes: straight-line, corner, and track. The last would be the easiest to create. You’d just put the watch in track mode and let it look for straights and turns on a 400m cycle. Piece of cake. The first two would be more difficult. But if I can use the hands-free Bluetooth on my car radio to have my phone send text messages or search the internet for the nearest service station, I can imagine a watch to which I say “90 degree left turn, now,” and have it adjust accordingly. Whether I would want to waste my breath saying such things in a race is a different matter. But the technology exists.


  1. See technical instructions for Association of UK Course Measurers,
  2. USA Track and Field, Road Running Technical Council. Course Measurement and Certification Procedures Manual, 3rd Ed (2013), p. 7.
  3. Eliza Richardson. ‘Measuring Plate Motions with Geodesy’. Syllabus for EARTH 520, Plate Tectonics and People, The Pennsylvania State University (2018).

See also:

Share this

Follow us