If you have a modern receiver, like any smartphone from the last 10 years, gps is accurate to a couple of meters.
It’s only a couple of meters for a few of reasons: necessity, speed, and scale.
It’s not necessary for most users to have centimeter precision for gps. Most uses for GPS is for humans to find a place, most humans have eyes, or can at least read braille signs. So if you’re looking for a pizza place and your gps says you’ve arrived, you can look around and see that the pizza place is 3 meters down the road.
Speed, because you can get really accurate locations out of gps, but your receiver would need to refine your location by talking to many satellites many times, which isn’t needed for most users as just knowing if you’re on the right street and the right side of the street is enough. Many communications would mean it takes a long time for the gps device to determine a precise location, which is frustrating for your average user.
And scale, it’s a really big planet, and there’s a finite number of gps satellites. The less satellites in your network, or the less they’ll talk to your receiver, means less accurate data and a less accurate location.
TLDR: most people don’t need sub meter precision from their gps, so it’s simply not provided to most people.
The main limitation now is actually the atmosphere. As the air heats and cools, it expands and contracts. This changes the amount of air the signal is passing through. Since the speed of light in air is slightly slower than vacuum, the effective position accuracy is reduced.
There is a fairly simple correction, you need a static reference. If you have a fixed receiver, then pass its readings to the dynamic one, then you can correct for errors. Combined with inverse kinematics you can get sub centimeter resolution quite reliably.
wait gps is unscrambled niw? then why is it still so inaccurate?
If you have a modern receiver, like any smartphone from the last 10 years, gps is accurate to a couple of meters.
It’s only a couple of meters for a few of reasons: necessity, speed, and scale.
It’s not necessary for most users to have centimeter precision for gps. Most uses for GPS is for humans to find a place, most humans have eyes, or can at least read braille signs. So if you’re looking for a pizza place and your gps says you’ve arrived, you can look around and see that the pizza place is 3 meters down the road.
Speed, because you can get really accurate locations out of gps, but your receiver would need to refine your location by talking to many satellites many times, which isn’t needed for most users as just knowing if you’re on the right street and the right side of the street is enough. Many communications would mean it takes a long time for the gps device to determine a precise location, which is frustrating for your average user.
And scale, it’s a really big planet, and there’s a finite number of gps satellites. The less satellites in your network, or the less they’ll talk to your receiver, means less accurate data and a less accurate location.
TLDR: most people don’t need sub meter precision from their gps, so it’s simply not provided to most people.
How inaccurate are we talking? Selective availability used to fuzz location by 30 meters which is insane.
This species is getting spoiled
The main limitation now is actually the atmosphere. As the air heats and cools, it expands and contracts. This changes the amount of air the signal is passing through. Since the speed of light in air is slightly slower than vacuum, the effective position accuracy is reduced.
There is a fairly simple correction, you need a static reference. If you have a fixed receiver, then pass its readings to the dynamic one, then you can correct for errors. Combined with inverse kinematics you can get sub centimeter resolution quite reliably.
This page explains the reasons and seems pretty credible (and also gives a date for the descrambling; it was fixed as of May 2000).
In what way is it inaccurate? Google maps can locate you within a couple of meters.