Tom Forde Tom Forde - 2 months ago 16
Objective-C Question

iOS 10 and IDFA zeroed attribution

I read that on iOS 10, I will no longer be able to get the IDFA for all users, as Apple will be zeroing the attribution.

As someone who heavily relies on this property for attribution, I wanted to ask if there is a good way around that? Something legal, that won't get the app rejected of course.


Background: Until iOS 10, when a user has set their "limit ad tracking" setting to true, their IDFA could still be used for various purposes, just not for ad targeting. For instance, the IDFA of a user that has limited ad tracking can be used to limit the number of times ads are shown to that user, but it can't be used to optimize the specific advertisements shown based on their history of clicking on ads.

Starting iOS 10, Apple will no longer make the IDFA of users that have limited ad tracking available to developers (so it's not for all users as you have heard). Instead, when a user sets their "limit ad tracking" setting to true, their IDFA will be replaced with a string of zeroes, as documented below:

Important: In iOS 10.0 and later, the value of advertisingIdentifier is all zeroes when the user has limited ad tracking.


Therefore, your new value would be 00000000-0000-0000-0000-000000000000.

There's not a lot that can be done against it, but take a look at OpenIDFA, which is an alternative to IDFA. It is being used by some big players in the market. It is not well maintained, but I know that people are still using it successfully.