Giving Context for iOS Permissions

This just in: tying permission dialogues to their value dramatically increases the percentage of users that will tap “allow” instead of denying system permissions.

Have you ever launched a newly-downloaded app and automatically tapped “Don’t Allow” on a cluster of notifications just so you can get to the meat of it?

Apparently you’re not alone.

The problem: users automatically deny app permissions. Some of the most useful native mobile capabilities depend on user permissions. Apple requires us to ask for explicit permission to use a user’s contacts, location, camera, and to send them push notifications. The most common way of doing this is to pop up an alert asking for permission to use native capabilities but users commonly ignore them.

There is a low ceiling to improving standard alerts. Apple give us space to improve the copy inside the alert, making it more friendly and informative. Unfortunately, this doesn’t solve the main problem: users get trigger-happy and deny permissions without thinking much about it.

The key solution is: get users to give you access the first time. Reversing a decision to deny permission requires the user to exit your app and change settings elsewhere. Most won’t do this, forever blocking native capabilities and features that depend on them.

There are options to consider. Co-founder and designer at Cluster, Brenden Mulligan wrote a brilliant piece detailing alternatives to the standard alerts. Among them:

  • Explaining the benefits in the app UI before asking for permissions
  • Using an additional iOS dialogue for a pre-permission
  • Custom UI for ducational pre-permission overlays
  • The most successful (up to 100%!): user-triggered dialogues

Jump, the new iOS app for London busses* is a great example of the first method. During the initial tour, the app mentions the benefit of finding bus stops nearby, and shows the location services dialogue after a few seconds.

The way Jump asks to use location services.

The key is giving users context. Asking for permissions without warning can seem like a spammy interruption.

The most exciting tactic used by Brenden in Cluster is the user-triggered dialogues. In this example, Cluster ask for access to the Contacts app just when the user tries to add people in the app – in other words, just when contacts access would make their life that much easier.

Cluster asking for permissions
The way Cluster asks to use Contacts. Originally from Medium.


The genius is in waiting for a user action to trigger the dialogue in context. This way, asking for permissions is a tool to complete an action the user has already initiated. Why haven’t we been doing this all along?

For more details on all the ways you can make permissions better in your app read the full post by @Mulligan on Medium


*Congratulations to our friends Ryan and Adam from The Noble Union, and Future Workshops alum Marco for your great work on Jump!


Related reading:

iOS Human Interface Guidelines for accessing user data

Efficient App Communication by Luis Abreau



By Evgenia (Jenny) Grinblo

Evgenia (Jenny) Grinblo is a user experience practitioner at London-based mobile agency, Future Workshops. A native Russian-Israeli, she approaches her practice with a sociological mind and a passion for facilitating team work. When away from her iMac, she is a foosball apprentice and an occasional speaker on empathy in design. Follow Jenny on Twitter @grinblo.