Accuracy of standard ones is actually quite close - usually about 1-2mph over over the entire range.
Satnavs, most are pretty inaccurate, as they try to time between points. You can get proper GPS devices that do work it out accurately.
for a price.. i guess quite a high price
No. Any GPS receiver will give you a very accurate speed in the NMEA serial output. What it displays (if it has a display) might be filtered and mucked about with, but will be spot on if you don't change direction or speed and have good signal conditions.
Kevin
To clarify fr those that may not understand what Kevin Wood has said, the GPS antenna reports back to the 'computer' (be it laptop, satnav electronics, speed measuring device etc etc) various things in an industry standard format (well, there are 2 or 3 different formats, though NMEA is by far the most common). These packets include not only position, but also direction of travel and speed of travel.
The accuracy of all these devices is improved with the number of fixes the antenna/receiver can pick up.
The problem with your gay little tomtoms etc, is because its used in a relatively hostile environment - in a tin box, behind heat refelctive glass, and to make the unit small, a compromised GPS antenna - your signal is less than ideal. Added to this that the silly little unit is only useful for the last mile anyway, where tall buildings can cause all sorts of signal problems, the software in the devices has to molest the signal.
The likes of Tomtom can make an assumption that you are on a road - we've all driven around new bypasses that aren't on the digital map, and you can be well over 200m from the old road before the daft thing conceeds you are in a field.