How to Submit an App that Uses IDFAs to the App Store

During the Apple App Store submission process, developers are asked to specify if their apps use the IDFA. Incorrectly specifying how your app uses this identifier can cause your app submission to be rejected, so it is critical that you take the time to understand if—and if so, how—your app uses an IDFA. If you have gone through the app submission process in the last few years, you should be familiar with the page below.

What is the IDFA?

IDFA stands for “identification for advertising.” This is the only unique identifier of an iOS device that app developers may access. This is used by advertisers to track user interactions across multiple different apps.


Prior to the release of iOS 6, Apple allowed developers access to a Unique Device Identifier, UDID, which allowed developers to track a user across multiple apps. Although the UDID provided immense value in properly tracking advertisements and authenticating across multiple apps, third-party app softwares started harvesting these UDIDs into databases and, in some cases, selling them. The U.S. Congress ultimately decided that this violated a person’s right to privacy, and Apple ultimately had to restrict app access to the device’s UDID.

With the death of the UDID came the creation of the IDFA. IDFA is similar to the UDID with a few small exceptions:

  1. A user has the right to reset their IDFA at any time
  2. A user can opt out of ad tracking, which disables the use of an IDFA from that device

This allows device users to have more control over how app activity is being tracked, and gives them the option to opt out if they so please. Even with these precautions, Apple still audits app submissions to check for legal IDFA usage. It is important that you answer these questions as accurately as possible.

1) Serve Advertisements within the App

If your app ever displays an ad to a customer, you should check this box. In this case, the IDFA is necessary to track which users interact with those ads in order to track how well they convert in the app that is funding the ads.

2) Attribute this App Installation to a Previously Served Advertisement

This situation is a bit trickier When your app uses an IDFA to identify an install to its original source, this option pertains to you. If your app uses a third party service like Branch that uses the IDFA to attribute app installs, you should select this box.

3) Attribute an Action Taken within this App to a Previously Served Advertisement

If you selected the box above, there is a good chance you should select this option. The only difference is if you track in-app conversions beyond just installs. If you use Branch, you must select this option.

4) iOS Limited Ad Tracking

This last box ensures that you adhere to Limited Ad Tracking. This means that when you determine that a user has opted out of tracking, you turn off all ad tracking for that user. If a user opts out in iOS 10 and above, they will show as having an IDFA with all zeros, so this should never be an issue. Branch and most other attribution providers should adhere to this rule.

Hopefully by now, you have a better understanding of what each of these options mean and why they exist. If you ever have any problems or questions, please feel free to reach out by contacting our support team.