I'm developing an app that automatically captions photos. It uses GPS among other things to create a human readable text.

There are cases where a photo has some data missing, (i.e GPS coordinates). I could still try to recover some data (last known GPS position), but that wouldn't be as accurate as the original data (exact GPS position). Therefore, the generated caption would also be slightly more incorrect than normal.

What's better in this case? Not generate a caption at all, or generate a slightly incorrect one?

  • 1
    why have a caption that says the GPS coordinate? I would recommend geocoding it into human readable names, therefore exact GPS position wouldn't be strictly necessary and you can use heuristic to determine -- by the accuracy -- whether to display precise location name or broad location name. – Lie Ryan Sep 10 '11 at 2:48
  • I don't display GPS, only use it to generate the caption. – siamii Sep 10 '11 at 4:15
  • I'm confused, what are you displaying in the caption if it is neither the GPS location nor human readable location name? – Lie Ryan Sep 10 '11 at 4:20
  • it's human readable location name – siamii Sep 10 '11 at 13:06

As always: it depends.

How important is the GPS location? How precise does it need to be? If it is wrong, will it really affect the user experience at all? If it is missing, will it affect the user experience at all?

  • If the precise location is important, and you do not have the precise location, do not display one. It correct data is vital, it is much better to ignore bad data than to rely on it.
  • If it is not important to always have the exact location, you can display a guesstimate. It is even better if you can indicate the level of accuracy. There should be some indicator if it is not completely accurate, e.g. the phrase "somewhere around".

Additionally, you should consider using a reverse geocoder to display a more human-readable location than a pair of numbers.


No data is better than misleading data, but approximate data can be helpful if it's understood as approximate, and can be fairly reliable. If it's possible to offer approximate data as suggested, and let the user decide what they want to keep or flush, it could be a very nice aspect of the app.

But if you can't rely on the data being close enough to correct to be helpful, I'd assign a generic message that indicates the app couldn't get enough data to generate a caption. This state could also be indicated with an icon, but I can't suggest what it should look like at the moment. Regardless, let the user decide to leave it uncaptioned, or to manually assign a caption, and you'll have done what you can. Hope this helps.


Is short, don't add show it unless it is meets whatever your standards for accuracy will be. Don't guess.

Based on the information you provided, the application should probably do the following:

  1. Automatically "Cancel" adding a caption for that photo.
  2. Notify the user that the location could not be read for the photo(s) (This could happen during the processing of photos or after in a summary type of report.)

Keep in mind the following:

  • What would the user expect to happen?
  • Typically no data or error message is better that inaccurate/misleading data

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.