Anything that affects the length of time for signal to reach the GPS antenna introduces error in the location of a position.
These 3 sources of error are minimized using differential correction.
The assumption is that radio signals travel at the speed of light, and that the speed of light is a constant, but this is only true of light if it is in a vacuum. Atmospheric delay is largest during the heat of the day when ionosphere activity is greatest. Furthermore, weather patterns in the troposphere can be different at the base and rover receivers.
Timing is critical to GPS, and the GPS satellites are equipped with very accurate atomic clocks, but they are not perfect and slight inaccuracies can lead to errors.
Satellites are launched into a precise orbit well above the Earth's atmosphere. The Department of Defense constantly monitors the exact altitude, speed and position of each satellite. Small changes are caused by gravitational pulls from the moon and sun and by the pressure of solar radiation on the satellites. Slight ephemeris errors over such large distances can make a difference.
These 2 sources of error are dealt with primarily via hardware.
When the signal arrives at the surface of the earth, it can reflect off obstructions such as buildings and trees, before being received by the rover antenna.
Receivers can introduce errors of their own, usually from internal noise.
Selective availability (SA) is no longer an issue
This man-made error was turned off on May 1, 2000 by executive order. The US has stated it is not their intent to ever use SA again. The military is developing regional denial capabilities to ensure that potential adversaries do not use GPS.
The final source of error is the user
Through education and great care in field data collection techniques, these can be minimized as much as possible.