For a mobile app, we are using the Google APIs for geolocation and geocoding. The basic use case is to find entities within a certain radius (in the range of a couple of kilometers) of each other.
Often, due to people being either in high rise urban areas or city outskirts, the location accuracy gets thrown off, and the margin of error is up to a few hundred meters.
To tackle this issue, we built a workaround where the app first gets the geolocation coordinates from the system, then we call the geocoding API to get the address corresponding to that location. Now the user has the ability to update/edit this address as they see fit. Now again we use the geocoding API to extract the coordinates corresponding to this address.
These are the coordinates that we actually use.
But it turns out that sometimes the geocoding API is not that reliable either. So the coordinates it returns for an address can also be inaccurate, leading us to a conundrum.
What can be a good approach to tackle this?
Off the top of my head, I think we could try to use both the system coordinates and the coordinates generated by the address (updated by the user) and use both of them. So the region of interest would be the union of the regions of interest based on both the sets of coordinates.
Or we could somehow factor in the number for the "inaccuracy".