Improving Location Accuracy on observations


I continually see observations submitted especially via the phone apps with unnecessarily large (in)accuracy circles around their locations. On the order of 100s of meters or more.

Many users may not be aware

  • that these uncertainty values exist,
  • how large uncertainty values limit the usefulness of their observations for many kinds of research and applications, and
  • how to fix them either during observation activities or after the fact.

Personally I rarely use the phone apps, but I do know that smartphones pretty much universally have GPS chipsets onboard, and when active can narrow down observations to the nearest 5-10 meters in most situations. The uncertainty values of 100s of meters are probably coming from cell-tower triangulation only, with GPS off.

So I’m hoping that those more familiar / experienced with the apps and smartphones will chime in here with their advice on how to ensure the fewest and smallest location errors for observations. And on some of the related pitfalls like sketchy cell signals, turning autosync on or off in the app, uploading later from different locations, etc.

Of course it is understood that for some users in some locations, they may not want their whereabouts or observations pinpointed to GPS accuracy, and that is fine.

But for those who would like to ensure the most accurate possible locations for their observations, here is a place to discuss how.

Depending on where the discussion goes, it may be worth converting this to a Tutorial/Wiki topic - moderators feel free if and when that seems appropriate.


Photo taking recommendations by taxon?

to get the best location data on your photos, i think one process that should work in all cases is to bring up your map app first and use that to find your location. once you see that your map app has a good lock, switch back to your camera app or other app to take a photo. there are other things you can do to get good results, but if i have 30 seconds to explain this to someone with unknown technical aptitude, this is what i will tell them to do.

here’s an article about the (in)accuracy of locations supplied by smartphones:



Surely this is just a time issue.
there are two options:

  • Advise users to switch on the app (or GPS) for at least a minute before using the app.
  • Add an option to the app saying that the location is not yet adequately fixed and please wait until a reasonable accuracy is achieved.

This wont help though with users who add pictures to the observations, versus take pictures with the app.

1 Like


I use the iphone app almost exclusively. I almost never see the large uncertainty circles. On a Samsung 5 android phone i have seen them from time to time.

I actually think the workflow of taking photos with a GPS running is actually worse because it doesn’t seem to consistently record precision at all, though that may have changed recently. With the app you can also look at the uncertainty number and wait for it to lower if it’s a concern.

One thing that could be useful would be an opportunity for the app to have a ‘blitzing mode’ that keeps the GPS active while you are actively looking for stuff. It would run down the battery so you’d definitely want it off most of the time.

To be honest though, i don’t think most of the large uncertainty circles come from the app. I think they come from people manually entering photos on the website. Either they just don’t really care or know so they add a huge circle, or else the write in the name of a large place, like ‘Yosemite National Park’, and it generates a huge circle. Do we have data on which sort of user adds the most poor-precision observations?



I’d note that making sure GPS (as in “location services”) are on on the smartphone doesn’t eliminate the problem of location from cell tower triangulation. I’ve observed that especially in situations where I’m frequently coming in and out of cell service coverage, the location of the nearest cell tower often overrides the GPS chip location as the recorded coordinates. There’s really no manual control of the phone’s internal location services offered, short of putting the phone in “airplane mode” so that it’s not interacting with the nearby cell towers (GPS location services can be kept on in airplane mode.)

All that said, I currently do rely on a free gps logging app that separately does exactly what Charlie is suggesting with the “blitzing” mode, and records tracks with high accuracy independently of the phone’s unreliable location services, and I have to say it doesn’t run down the battery at all. The phone is getting old and the battery doesn’t last like it used to, but in about 6 hours hiking the other day with the phone in airplane mode (patchy service, so it would spend a lot of time searching) and running the tracking app I only went through about 10% of the battery. The resulting track is very accurate.

A lightweight app that accesses the gps chip to refresh locations at 5-10s intervals requires negligible power compared to other basic phone tasks like sending or receiving a text message or vibrating and chiming an alert, much less the power draw of having the screen illuminated. Adding a tracking component in the iNat app so that good location data is always available to the app would probably be easy to implement and need not be a major battery drain.



i wonder if that runs down the battery less than just constantly using the app to add stuff, as i do. However, my computer situation isn’t very good so downloading photos to the computer then sending to iNat isn’t a great workflow for me anyway, at least until/unless i get a new computer.
But, the idea of letting iNat work as a tracking app for ‘questing’ would be really awesome. it would also be really neat in just showing areas you walked through but DIDN’T observe anything (would help with negative data issues) and things like that. It could display the track on the calendar page, for when ‘questing mode’ is on. One could then either use the app to add observations or take them with a camer and have the uploader connect them automatically later. Probably a huge feature creep issue, but how amazing would that be?

1 Like


I tend to be very interested in accurate locations and have found that with my android phone or my Nikon 5300, accuracy varies throughout the day, sometimes dramatically (i.e., I’ve seen gps be off by 500 to 1000 meters, sometimes showing plants in lakes, even after the gps has been active for a while. I think it may have to do with density and location of satellites).
I have found a solution, albeit quite tedious.
When I post obs, I look at the map to confirm location, switch to satellite view, zoom in, find the plant, and adjust the location manually.
If I’m trying to locate a plant in dense vegetation and can not visualize the individual plant, I find other visible landmarks on satellite view (boulders, down trees, etc), if need be I pull out my compass and triangulate.
On my Sagehen juniper project, I print out the satellite view, sometimes taping together many pages to use as a guide in the field. This can help locate notable landmarks and nail down location.
I have become frustrated with the iNaturalist project mapping (which has lost about 50 hrs of field data) which no longer allows me to edit search area boundaries (In some cases, I document areas searched thus showing, no target plants in that area).
This summer I’m taking a GIS class to see if I can make mapping work. We’ll see if I just flounder on that one.

1 Like


I think those all sound like interesting features.

Anything that would reduce direct active use of the app in the field would probably improve battery life- it’s really the CPU load that eats the battery, which is why the iNat app (with all its many features, memory usage, processes running in the background that involve cell data usage) can eat a lot of battery. The power draw of the physical gps chipset itself is pretty minor in comparison (that’s why a lot of GPS tracking apps advertise how lightweight, as in low CPU load, they are).

In your case to avoid computer usage but also avoid having cell towers interfere with the location data, I wonder if putting it in airplane mode but keeping the location tags on in the phone camera settings would maintain similar accuracy to running a separate gps tracking app, and then later you can just turn the cell data back on to upload the photos through the app using the embedded gps tags? It’s been a while since I used the app but I imagine you can run it that way.



I don’t have such data (maybe staff can help?), just inferences from the observations I see. Often they are just seemingly random 241 meters, or 1519 meters, or things like that, and well removed from places of similar sizes. So I have a hard time imagining that users are either deliberately entering those random numbers, or that they are coming from system interpretation of a place name.



These aren’t the only ways that those kinds of numbers can be entered. When I use the satellite map to try to make my accuracy circles as accurate as possible, I’m just dragging the circle without paying attention to the numbers at all.

1 Like


Thanks, that’s good to know. I use a dedicated external GPS for all my observations, and geotag all my photos from that, so haven’t worked much with positioning directly within iNaturalist.

So if some (or most?) of those seeming random numbers are legitimate user uncertainty, then fair enough and so be it. Maybe the discussion here will inspire some to improve their uncertainty levels.



I usually just leave the GPS locations that my camera picked up. I go in to adjust the accuracy circle only when the camera didn’t pick it up and I don’t know exactly where I saw the organism, or if the GPS just looks off to me after uploading. But there is another possiblity that I think was brought up in discussions of disguising locations on purpose.

1 Like


Yes, for example in this thread, where (just for everyone’s information - I know you are aware of this @paloma) it is pointed out that just adding a larger uncertainty or moving a point by a little bit will not hide the true coordinates if they were contained in the photo metadata. The only way to do that is to use the standard “obscure” geoprivacy setting provided by iNaturalist.

Everyone, please visit that thread or these others if you are interested in various issues around intentional obscuration, and let’s keep this thread for ways to minimize locational error - thanks!



I too usually drag the circle if I edit it so get odd non rounded numbers on mine sometimes

1 Like


here’s a pretty good video by Andy Gup at ESRI that talks about issues with smartphone locations:



I’m obviously CDO, cos I go through and edit them back to whole metres!



It would indeed seem odd that one knew exactly what their uncertainty was to the nearest 1524.089 meters!



I noticed when photographing trees, particularly as I went from open ground to under canopy… my GPS accuracy would be good (1 to 2m) and then would suddenly start getting larger as I moved under the canopy. I realised later, that my phone was able to sense movement, so it knew how far I was travelling, but it had no idea on direction because it doesn’t have a compass on board… so from the moment it lost signal for the GPS, it just tacked on distance travelled to the accuracy figure. Even when I backtracked or turned corners, it still increased with distance moved. So if I moved 10m under the canopy, and then 9m back to where I went undr the canopy, it would geolocate me at that point it lost GPS with +/- 19m, even though I was now 1m from it!



I had occassion to do some observations in a glasshouse, and I was geolocated by the camera some 3km away! Outside the glasshouse it worked fine. The angle of the glass on the roof is the only thing I can put it down to.

I am aware of people having difficulty with GPS near waves on a beach. Not entirely sure if the waves were the cause though.



i bet the metal grid in the glasshouse somehow messed up the GPS signal. i’m not sure about waves, although one of the comments here ( says, “A Kalman filter will smooth the data taking velocities into account”. so i wonder if you’re getting moved around by some waves, if that would make the calculations jumpy?

1 Like