I have a question about asking for location service's authorization.

I'm working on app which allows to browse for restaurants in a certain place. I want to allow to users to search by specific address (in this case, the results are restaurants near the address, ordered by distance) or by geolocation (in this case results are restaurants near user's position, ordered by distance). Results can be seen on a map or in a list (in a list one can see more details at a glance, on the contrary in a map to see details of a restaurant one has to tap on a restaurant to show them).

I have a doubt. I think that for a mobile usage could be better by opening the map with the user's position already marked (if location services are enabled). In this way one can look for places near him. My doubt is that I don't want to warn users asking for their positions at startup (as many apps do), especially for users who open the app for the first time and don't know it.

Jakob Nielsen talks about it in this post: http://www.nngroup.com/articles/workflow-expectations/.

To avoid this I designed a screen where one can choose the type of search (textual, by address) or by geolocation. In this way, on tap on geolocated search users are aware on the action they perform and then, ask for authorization for their location will be not a problem. The problem is that is not an immediate usage (there is an extra page) and maybe is a little far away from mobile usage and closer to web usage.

What do you think about it?

2 Answers 2


That's an interesting question that cuts to the heart of your user's expectations.

I'd argue that the experience in question begins before the user even downloads the app from the app store. How do you 'pitch' the app? Is geolocation the feature, or is it a minor option?

If users clearly understand that the app is all about location ("Find restaurants near you!") AND your primary app experience relies on having location data, then I wouldn't expect any issues with asking for permissions immediately. If you don't need the location information immediately on start-up, then definitely wait until the user invokes the location functionality of your app, as Nielsen suggests.

It's worth noting that cross-platform expectations will be different. For instance, iOS always presents permission authorization screens in the context of trying to use the feature for the first time. If a user says 'don't allow', they'll merely be asked again the next time they try to use your app's location features (so no harm, no foul if they initially say no):

...whereas Android asks for coarse and/or fine-grained localization permissions at time of installation, and acceptance of the permission is not optional—you either accept, or you don't get to download/install the app:

But since you're talking about optional permissions, I assume this is probably an iOS app, at least to start.

One other recent trend that might be useful to you: if you're worried that a user may be scared away by the location permission request, you might consider prefacing it with your own dialog explaining why you need it. For example: App X needs location data to show you restaurants near you. Tap OK on the next screen to allow iOS to share your location. Again, this adds an extra click, so it isn't needed if you properly set expectations upfront. But it might be a good idea if your app uses permission-granted data in unusual or unexpected ways.

  • Thank you for your very useful answer. As you said, I'll start with an iOS app. Location services aren't the future, because is it possible to search in another way. Commented Dec 7, 2013 at 13:13
  • Please don't read my previous comment. Thank you for your very useful answer. As you said, I'll start with an iOS app. About the tip you gave me, can I put this text directly on the iOS dialog instead of put users in front of two dialogs? I'm not a dev, so I don't know if this is allowed in iOS. Commented Dec 7, 2013 at 13:21
  • @Matteo I don't believe it's currently possible to customize the system's permission dialog on iOS, though I'm also not a dev, so you should verify. :) Commented Dec 7, 2013 at 18:27

If you're concerned about asking for geolocation outside of the flow, perhaps the best solution is to have the prompt asking to use geolocation information pop up when it is needed? So when the map is opened, a popup prompting for the info appears?

  • Yes, but the problem is, for novice users especially, when they open the app the first time, in this way I ask for their location before they could see how the app works. If a put in front of them a screen where they can choose how to search, I think that they're more aware of the action performed (like Nielsen's heuristic said - user control and freedom) Commented Dec 6, 2013 at 10:59
  • Based on that article, I'd say the solution is to have a short text accompanying the popup, explaining the benefits the users will have if the click "yes". Also, having it pop up when the map is opened, meaning it's directly above the map, should also help explain it's benefits Commented Dec 6, 2013 at 11:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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