<  Onboarding UX Patterns

Permission Priming

What is it?

Preparing (or "priming") a user before you ask for permission to access their iOS system makes it more likely that they'll comply with your request.

This is more important than it sounds —- you might not be able to deliver value to the user without access. Worse: the only way to undo the "Don't Allow" decision is to journey into their phone settings, which is not exactly a recipe for onboarding success.

When to use it

Asking for access to the user's mobile device in your first-ever interaction with them is precarious territory -- you haven't built a foundation of trust yet.

Permission priming can help solve this problem by:

  • Directing the user's awareness: Users know that a photo editing app needs camera access. Evidence shows that a reminder, directing the user's awareness to this fact, prepares them for the ask better.
  • Tying access to value: Users sign up to do something specific. Let them know that you're only asking for access to help them achieve their goals.

How to nail it

When you "prime" users for an ask, you're explaining two things:

  • why you're asking for something and
  • how responding will benefit them.

Both have strategic underpinnings: Communicating why you need the access directs the user's attention to what you need from them to deliver value, building trust. Focusing on the benefit reminds them they signed up to receive that value, building motivation.


  • Bake the prime into the product if possible

    Asking for permission breaks up the onboarding flow. The more natural the ask, the less jarring it is.

    Example: Check out how this benefit-driven prime seems almost a part of Dropbox's interface:

  • Ask for access in context

    Don't ask for permission to use the camera until you need to use it, in other words. If you wait to ask for access to the camera when the user is all set to take a picture, they won't think twice about giving it the go-ahead.

    Example: Instagram showcases exactly this very example—it asks to access photos only after you've opened up the camera:

More Examples

Lots to love about PayPal's fantastic execution! The prime is baked into the interface, benefit-driven, and contextual:

Foursquare bakes the benefit of allowing access into the background of the system dialog—an unusual but effective approach to priming:

Headspace creates a beautiful "in-between the interface and a system dialog" modal, making the ask for access near seamless:

For your consideration

  • Asana just plowed right ahead by immediately asking for Notifications
  • Dropbox nicely curates their Photo permissions request, but then just blurted out a second request for Notifications out of nowhere
  • Foursquare did a neat trick with the background behind their Location request, and then went even bigger for Notifications
  • Headspace put a thoughtful spin on selling the user on Notification-allowing
  • Inbox by Gmail straight-up asked for Notification permissions as soon as the splash screen animation ended
  • Instagram wisely put the Camera/Photos and Microphone permissions *inside* their photo-taking flow
  • musical.ly rushed ahead to asking for Notifications access without any context, but then redeemed themselves with some Locations priming later
  • PayPal created a whole screen state just to help users feel in control of their Notification-access-giving. Nice work!
  • Peach did one of those clever "disguise their own priming as an iOS dialog" things
  • Periscope had some nice priming for Notifications, then TRIPLE primed for Camera, Mic, and Location all at once, and then a 5th one for Photos. Whew!
  • Pocket made Notifications access part of activating a feature that they called "Instant Sync" (or maybe "Push Sync"? it's hard to tell)
  • Quartz baked their permission priming right into their core experience, like so much of the rest of their onboarding
  • Skype double-primed two permissions at the same time: Camera and Contacts
  • Slingshot leaned heavily on fake iOS dialogs to tee up a series of permissions: first Notifications, then Locations*, then Contacts!
  • Snapchat also used a fake iOS dialog for Location access
  • Timehop invested a lot in their Camera permission priming step, but to somewhat confusing results
  • United Airlines fired off two permission requests right out of the gate with no warm-up for either
  • Unroll.Me put the user in charge of whether the Notification permissions were presented or not
  • Virgin America did a great job of selling the benefit of Notifications via an entire permission-priming screen state
  • Waze treated the ultra-crucial Locations request like an error state, but then went all-out for Notifications access