This guide outlines the changes needed to prepare your app for iOS 14.
Enable SKAdNetwork to track conversions
Prerequisites: Google Mobile Ads SDK 7.64.0 or higher
The Google Mobile Ads SDK supports conversion tracking using Apple's
SKAdNetwork
,
which lets Google
and participating third-party buyers
attribute an app install even when the IDFA is not available.
To enable this functionality, update the SKAdNetworkItems
key with an
additional dictionary that defines
Google and participating third-party buyers’ SKAdNetworkIdentifier
values
in your
Info.plist
.
The snippet below includes SKAdNetworkIdentifier
values for Google
(cstr6suwn9.skadnetwork
) and
select additional buyers
who have provided these values to Google. Google is committed
to updating this list to include additional buyers and to working with the
industry on solutions to share SKAdNetworkIdentifier
values more broadly.
Please check this page for updates.
<key>SKAdNetworkItems</key> <array> <dict> <key>SKAdNetworkIdentifier</key> <string>cstr6suwn9.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>4fzdc2evr5.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>2fnua5tdw4.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>ydx93a7ass.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>5a6flpkh64.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>p78axxw29g.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>v72qych5uu.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>c6k4g5qg8m.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>s39g8k73mm.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>3qy4746246.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>3sh42y64q3.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>f38h382jlk.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>hs6bdukanm.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>prcb7njmu6.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>wzmmz9fp6w.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>yclnxrl5pm.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>4468km3ulz.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>t38b2kh725.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>7ug5zh24hu.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>9rd848q2bz.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>n6fk4nfna4.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>kbd757ywx3.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>9t245vhmpl.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>2u9pt9hc89.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>8s468mfl3y.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>av6w8kgt66.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>klf5c3l5u5.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>ppxm28t8ap.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>424m5254lk.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>uw77j35x4d.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>e5fvkxwrpn.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>zq492l623r.skadnetwork</string> </dict> <dict> <key>SKAdNetworkIdentifier</key> <string>3qcr597p9d.skadnetwork</string> </dict> </array>
Mediation
If you use mediation,
check each ad network partner's documentation for any
additional SKAdNetworkIdentifier
values that they require:
- AdColony
- AppLovin (requires sign-in)
- Chartboost
- Fyber
- i-mobile
- InMobi
- ironSource
- maio
- MoPub
- myTarget
- nend
- Tapjoy
- Unity Ads
- Vungle
For ad sources that are not listed here, reach out to your account team to
find SKAdNetworkIdentifier
values that they require.
Request App Tracking Transparency authorization
Prerequisites: Google Mobile Ads SDK 7.64.0 or higher
To display the App Tracking Transparency authorization request for accessing the
IDFA, update your Info.plist
to add the NSUserTrackingUsageDescription
key
with a custom message describing your usage. Here is an example description
text:
<key>NSUserTrackingUsageDescription</key> <string>This identifier will be used to deliver personalized ads to you.</string>
The usage description appears in the App Tracking Transparency dialog box:

To present the authorization request, call
requestTrackingAuthorizationWithCompletionHandler:
.
We recommend waiting for the completion callback prior to loading ads so that if
the user grants the App Tracking Transparency permission, the
Google Mobile Ads SDK can use the IDFA in ad requests.
Swift
import AppTrackingTransparency import AdSupport ... func requestIDFA() { ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in // Tracking authorization completed. Start loading ads here. // loadAd() }) }
Objective-C
#import <AppTrackingTransparency/AppTrackingTransparency.h> #import <AdSupport/AdSupport.h> ... - (void)requestIDFA { [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { // Tracking authorization completed. Start loading ads here. // [self loadAd]; }]; }
For more information about the possible status values, see
ATTrackingManager.AuthorizationStatus
.
Same app key
Prerequisites: Google Mobile Ads SDK 8.3.0 or higher
The Google Mobile Ads SDK introduces the same app key to help you deliver more relevant and personalized ads by using data collected from the app the user is using. See the global settings guide for more information on how to implement the same app key.
Disclose data usage in the App Store
Apple requires that developers publishing apps on the App Store disclose certain information regarding their apps' data use. Apple has announced that these disclosures will be required for new apps and app updates starting December 8, 2020.