So pretty much everyone knows what a speedometer is, the thing on your dash that tells you how fast you are going, whether or not you're speeding, and what speed you have the cruise control set to (assuming you have that feature)!

Whilst driving on a long motorway journey with my satnav over the summer I noticed that the speed I was getting on the satnav was not the same speed that I was getting on the speedometer. They were close, but not the same. I know that the satnav uses the fact that speed = distance/time. Given that it knows how far you have traveled (according to multiple GPS signals) in a specified time period (I think it updates every 0.5 seconds or so), it can use the information to calculate my current speed. I have always assumed that this is more accurate than the speedometer because I can't see that there would be hardly any error in its method.

The speedometer in the car on the other hand - I noticed that there was a tag for the wheel speed sensor, but that is about it!

How does the speedometer on the dash board actually calculate the speed of the car and why?

Which (of either the speedo of the satnav) is actually a more reliable estimate of the speed of the car?

  • GPS receivers may also calculate speed by measuring doppler shift of the actual GPS carrier signal. You can get much better accuracy that way, although I haven't seen that in normal consumer hardware yet.
    – Joey
    Commented Dec 25, 2016 at 18:22

2 Answers 2


Manufacturers deliberately calibrate their speedos incorrectly. They make sure the speedo always reads higher than the actual road speed, and there is a very good legal reason for this.

Speedometers must never read lower than the actual speed (European law (ECE-R39) says speedometers cannot show speeds less than the actual speed. Other countries have similar) - as then a driver could legitimately argue the case for speeding unknowingly, so in an ideal world speedos would read the exact speed.

However, tyre pressure variations and other effects mean there is a small degree of uncertainty, so in order to make sure the displayed speed is never lower than actual, manufacturers build in a certain amount of leeway.

The amount varies between manufacturers (and models, sometimes) and also depending on what speed. As I mentioned in another answer, at 30 my speedo only reads a couple of mph over actual, but at 90 there is quite a large difference, and then up at 140 the error margin reduces again.

  • 1
    Lol. It stays flat out to at least 180. Haven't checked past that
    – Rory Alsop
    Commented Jan 30, 2016 at 15:07
  • Oh! Well done sir!
    – cdunn
    Commented Jan 30, 2016 at 15:09
  • 1
    I feel that this doesn't answer everything in the question. Specifically, it omits the details of how the speedometer actually works, answering only why speedometer and GPS give different results.
    – juhist
    Commented Feb 3, 2017 at 15:29

Most speedos in the dash for modern electronic based cars, have a sensor in the output shaft of the transmission. It is a simple reluctor wheel and Hall effect sensor, or a gear driven motor which can then produce a signal for the PCM to interpret. Cars can also use the same method off of the anti-lock wheel sensor to get a "speed" indication. The more ticks from the sensor, the faster the speedo registers. In this method, the signal is sent to the PCM, which interprets the speed and sends a signal to the speedo. Inside the speedo, there is a motor which spins the needle over to the correct position to indicate the speed.

Before electronic gizmos were all the rage, a long piece of spring wire was attached between a gear on the output shaft of the transmission and ran all the way up to the speedometer. This spun a pair of magnets which were close enough at a calibrated distance to move the needle in the speedo. The faster you went, the farther the needle swung over due to the magnet attracting faster and faster.

As for which is more accurate, the speedo or satnav, the elusive it depends answer comes into play. Ultimately the satnav has the greater ability to be more accurate, but it depends on the number of satellites it is receiving from. The more satellites, the better the accuracy. (NOTE: I'm not finding what the accuracy is based on this, but know triangulation works better the more triangles the receiver can make.) I believe that a lot of satnavs will give you the accuracy of their reading if you look into the side menus. The app I use on my Android device (Android-Speedometer) does. Accuracy is also going to be based on which system the satnav system you are using is receiving from. The US launched GPS system is available throughout most of the world (notable exceptions are far Northern and Southern latitudes). It is supposedly good down to 9 meters in the civilian realm, with military usage being better.

A couple of things regarding the accuracy of an automobile have to do with whether the size of the tires are the size which the manufacturer put on the car in the first place. If the tires are smaller in diameter, the reading on the speedometer is going to be higher than it should; larger diameter = lower reading. This is of course affecting the accuracy.

Something else I've often wondered is whether manufacturers actually calibrate their speedos correctly. Of all the speedos I've tested utilizing the roadside radar signs which tell you your speed, almost all vehicles have tested slow for what the speedo is telling me. For instance ... I used to own an '04 VW Jetta 1.8T. I noticed the RADAR signs would read out at 22 or 23 mph while my speedo was reading 25mph. You say, 2mph, that's not a big deal, right? Consider this ... If off by 2mph @ 25, extrapolate that out to 50mph and 75mph. You'd have a difference of 4mph and 6mph, respectively. At 100mph you'd actually only be going 92mph. Let's apply this against your odometer reading. If the car thinks it's going 50mph and only doing 46mph, then your odometer would register 50 miles, when you've only gone 46. Extrapolate that out to 50,000 miles, at which point you've run out of warranty ... yet the vehicle has only traveled 46k. Lets the vehicle manufacturer off the hook early. What about a lease vehicle? This would mean you would run out of miles sooner than you should have, and the lease company can charge you for miles which you've never driven. This could be a big issue. If your vehicle was registering slow in comparison to the satnav, this might be what you're seeing.

For some anecdotal evidence, I ran a TomTom satnav while driving a Camaro which I had put back on the road. The TomTom has a built-in display showing how fast you are travelling. I wanted to know how accurate the Camaro's speedo was so checked it against it. I was quite surprised to find out my Camaro was always within +/- 1mph.

Ultimately I'd give almost always give credit to the satnav's speed rendering over the car's speedo due to the above reasons.

  • @Paulster2 Is the PCM referenced here "Pulse Code Modulation"?
    – cdunn
    Commented Jan 30, 2016 at 8:11
  • @cdunn - PCM = Powertrain Control Module ... the computer for the car. Commented Jan 30, 2016 at 14:36
  • @JPhi1618 The PDF link is broken or nonexistent. Commented Feb 1, 2016 at 22:08
  • 1
    This PDF is an interesting read and shows how GPS distance can be less accurate than old-fashioned measuring. It's written from the point of view of a runner, and some GPS devices might have algorithms to improve accuracy at higher speeds (smoothing out the line of travel to gain accuracy), but the points made are still important.
    – JPhi1618
    Commented Feb 1, 2016 at 22:10
  • @Paulster2 The reason for the wrong speedo calibration (at least in many European and Asian cars) is the law. In Germany and other countries the law requires the car manufacturer to make sure the speedo never shows less speed than you are actually going. Thats why many car manufacturers add a safety value to the calculated speed. Commented Feb 2, 2016 at 1:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .