- Instrument error,
Leaks in the plumbing,
Position errors in the static system, and
Position errors in the pitot system.
Leaks in the plumbing can be easily checked.
Position errors in the static system are caused by the fact that the air flowing around the aircraft has to accelerate and decelerate as it wends its way over the shape of the airplane. The air pressure changes as it accelerates and decelerates, so the pressure at the static port is quite likely different than the free stream static pressure well away from the aircraft. This difference between the sensed static pressure and the free stream static pressure is position error, and it accounts for most of the error in the ASI (assuming the instrument error is small, all leaks are fixed, and the pitot tube is not too poorly located).
The pitot tube is relatively immune to position errors, as it measures total pressure, not static pressure, and the total pressure isnÃ¢â‚¬â„¢t changed as the air moves around the aircraft. If your pitot tube is reasonably well aligned into the airflow, and it is well clear of the prop wash, and it is not in the wake of something else, it should be quite accurate. Pitot tubes should provide reasonable accuracy if the local airflow is aligned within 15 degrees of the pitot tube. So, it might become inaccurate as you approach the stall.
I have put together a guide on how to measure ASI instrument error using a water manometer and how to determine static system position error via flight testing. This guide is located at http://www.kilohotel.com/rv8/rvlinks/ssec.html.
Edit: Changed links to point to my new domain name, as my ISP changed the URL on me.