In this recipe

Improve the app’s contacts permission opt-in rate by explaining the value to the user before presenting them with the system dialog box.

Maximize Opt-In to Share Contacts
Maximize Opt-In to Share Contacts

Campaign Tool

In-app message

Who to Target

  • New users
  • Users who have not yet opted in to share contacts

When to Target

An app only gets one chance to use the contact permissions system dialog with each user, so make sure to ask the question first using an in-app message and only show the system dialog if the user is willing to opt in.

Plan to run this early in a new user’s first session, after their first action or two. Show them an in-app message which describes the functionality that will be enabled if they opt-in to contact permissions, and ask them if they would like to enable it. If they click “Yes”, only then trigger the permissions system dialog.

If they dismiss the message, the next ideal time to ask is when you can establish some specific value for opting in. For example, in a messaging app when a user has just clicked the contacts button, it is a good time to ask to use their device’s contacts.

For users who have previously opted out of contacts permissions, send them an in-app message the next time they try to use a feature that requires contacts, indicating that their contacts are disabled and they should go to Settings > [App_Name] > Contacts On.

What to Test and Optimize

You can optimize the effect the visual presentation of your message has on users by A/B testing the text and imagery used in the in-app message asking for permission. For more advanced testing, run several versions of the campaign with different trigger points to see when the best moment is to engage users to ask them to opt-in.

What to Measure

  • Contacts opt-in rate
  • Campaign click-through rate

How to run this campaign in Swrve


  • New users: On the User Lifecycle dashboard, in the top right corner of the New users lifecycle card, click the menu and select Create In-App Campaign.

  • On the Set Target screen, create an audience filter and on the Properties tab, filter by users who do not have contacts enabled.


  • For new users, trigger this message to show a few seconds after app startup.
  • For existing users, find the key event where you can associate value with access to their contacts; for example, after clicking into a contacts section in your app.

Copy/creative ideas

  • Explain to the user the value the app provides when it can access Contacts, for example, ‘Chat, message or send a picture to the people closest to you. We need access to your Contacts to enable chat’.
  • Include a ‘Yes’ button and an ‘Ask Me Later’.
  • If they click ‘Yes’, then redirect to the contacts permissions request dialog on iOS. The deeplink should look something like my_app://permission=camera.
  • If they click ‘Ask Me Later’, dismiss the message.


  • Imagery
  • Copy
  • Button Copy
  • Timing of Messages