Since the positioning satellites we use are in orbit, the signals they send must pass through our ionosphere and troposphere. The ionosphere is electrically charged, which interferes with the signal. The interference in this layer depends on solar activity, time of year, time of day and location. The Troposphere is closest to the Earth and the interference on the signal depends on temperature, density, pressure and humidity. All these factors make it really difficult to predict.
Accurate timing is essential for the accuracy of GNSS and is usually forgotten. Even with the most advanced atomic clocks on board the satellites, the smallest differences can have a huge impact.
As the satellites orbit at an altitude of about 25,000 kilometers, a small timing error of 5 ns (nanoseconds) can cause a deviation of about 1.5 meters in accuracy.