So we first showed them a dialog about why we needed the access, and gave them the choice to use the address book, or enter contact info manually themselves. And of course, we’d only show the system permission dialog if they specifically chose “Use Address Book”.

Like above, it was a bit of a pain to ask them twice, but when presented with the iOS dialog, no one ever hit “Don’t Allow”. Plus, when the people who tapped “I’ll Enter Contact Info” realized what a pain it was, we had another prompt that let them connect their address book at that point.

Using pre-permission dialogs made the “Don’t Allow” problem almost disappear. It was exceptionally rare that a user didn’t give us access at a system level when asked. This was a major win for us. There was much rejoicing.

User Triggered Dialogs (The Most Successful)

Even though users weren’t denying access at the system level, we were still getting our share of users who didn’t make it to the system dialog because they didn’t want to give us the access at all. What the pre-permission dialogs had done was mitigate the times where the user wasn’t expecting it, not necessarily making more users accept it. We knew we could do better.

When we deconstructed the problem, we realized that users still weren’t expecting to be asked, so we found a way for them intentionally trigger the prompts, which in testing real flows with dozens of people has gotten permissions allowance close to 100%.

Photos

In previous versions, the first step in creating a new space in Cluster was to add photos. That meant we asked for photos access right after they hit “Create Cluster”. This resulted in the user granting photo access 67% of the time. But this could be improved.