Identifier for Advertisers (IDFA) support
Stay organized with collections
Save and categorize content based on your preferences.
The User Messaging Platform (UMP) SDK lets you present an
IDFA message
to your users before requesting their consent for
App Tracking Transparency
(ATT). The IDFA message shows your users how your app uses the identifier.
This guide covers using the UMP SDK to present an IDFA message.
Prerequisites
Before you begin, make sure you've done the following:
Update Info.plist
To show a custom alert message, do the following:
- Open the
Info.plist
file.
- Add the
NSUserTrackingUsageDescription
key with a custom message that
describes the usage:
<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>
The usage description appears as part of the IDFA ATT alert when you present the
consent form:

Then, link the AppTrackingTransparency
framework:

Your app then shows an IDFA message before the ATT alert.
Testing
While testing, remember that the ATT alert only appears a single time since
requestTrackingAuthorization
is a one-time request. The UMP SDK only has a form available to load if the
authorization status is
ATTrackingManagerAuthorizationStatusNotDetermined
.
To make the alert appear a second time, you must uninstall and reinstall your
app on your test device.
Request ads with or without IDFA
If a user denies ATT, continue to request ads using your ad format's APIs. The
Google Mobile Ads SDK doesn't send IDFA in the ad request. For more details see,
Select an ad format.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-06-25 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-25 UTC."],[[["This guide provides steps to integrate the IDFA message within the User Messaging Platform (UMP) SDK for iOS apps."],["Before proceeding, complete the UMP SDK setup and create an IDFA message in AdMob."],["Update your app's `Info.plist` with `NSUserTrackingUsageDescription` to present a custom message within Apple's App Tracking Transparency dialog."],["Remember to link the `AppTrackingTransparency` framework to display the IDFA explainer message before the ATT dialog."],["For testing, reinstall the app to reset the IDFA authorization status and see the dialog again."]]],["To support the IDFA message with the UMP SDK, complete the \"Get started\" guide and create an IDFA message. Update the `Info.plist` by adding the `NSUserTrackingUsageDescription` key with a custom message. Link the `AppTrackingTransparency` framework. During testing, note that the IDFA ATT dialog only appears once unless the app is reinstalled, due to `requestTrackingAuthorization` being a one-time request and the status needs to be `ATTrackingManagerAuthorizationStatusNotDetermined`.\n"]]