UK rules used to allow 10% speedo error either way, but now, as I understand it, EU regs say that a speedo can be up to 10% optimistic, but must not under-read. So you find that most speedos, in cars as well as bikes, read about 5% over. The manufacturers have to do this to allow for things like, as mentioned above, varying tyre dimensions.
Also you have to remember that an analogue speedo (still used in most cars) is incapable of being read to better than about +/-2mph, due to parallax error and the width of the needle. Furthermore the graduations are only every 5 or 10 mph. If it were a scientific instrument it would be deemed unfit for the purpose of controlling the measured quantity to the required accuracy - hence the "10%+2" ACPO recommendation..
In my experience (as an IAM observer I get to follow lots of different makes and models of bike) Suzukis and Hondas generally have the most error, i.e. the rider will hold about 26-27 mph when they think they're doing 30. Can be a bit of a pain when you've got a big 4x4 up your number plate! .
The signs that come on if you pass them at over the limit are a reasonable guide - they usually come on at about 29 for a 30 limit, so if you just bring them on, that's about right.