rob_jax is correct, the reason is a legal one motor manufactures must ensure that the speedo fitted to your car doesn't cause you to break the law; therefore, as stated by rob_jax to allow for different tyres and wear your speedo will always display a speed slower then what your actually doing.
But also remember as eddie points out, there's also a delay with the sat nav, so you can't trust this, so your best to stick with the speedo, better safe the sorry.
Matthew