Stay organized with collectionsSave and categorize content based on your preferences.
Under Google'sEU User Consent
Policy,
you must make certain disclosures to your users in the European
Economic Area (EEA) and obtain their consent for the use of cookies or
other local storage where legally required, and for the collection,
sharing, and use of personal data for ads personalization. This policy
reflects the requirements of the EU ePrivacy Directive and the General
Data Protection Regulation (GDPR).
User Messaging Platform SDK
For information on obtaining consent using the User Messaging Platform (UMP)
SDK, see ourUser Messaging Platform SDK
guide. Consent obtained through the UMP
SDK are automatically forwarded to the IMA SDK.
Consent revocation
GDPR requiresconsent revocationto allow users to withdraw their consent choices at any time. SeePrivacy optionsto implement a way for users to withdraw their consent choices.
Forwarding consent to the IMA SDK
By default, ad requests to Google serve personalized ads, with ad selection
based on both the content of the web page or app and the history of the user
visiting it. Google also supports serving non-personalized ads.Learn more about personalized and non-personalized
ads
To force non-personalized ads, you can append&npa=1to your ad tag
to specify that only non-personalized ad content should be returned.
This is accomplished with theadTagParametersproperty, like so:
You can mark your ad requests to receive treatment for users in the European
Economic Area (EEA) under the age of consent. This feature is designed to
help facilitate compliance with theGeneral Data Protection Regulation
(GDPR).
Note that you may have other legal obligations under GDPR. Please review
the European Union's guidance and consult with your own legal counsel.
Please remember that Google's tools are designed to facilitate compliance
and do not relieve any particular publisher of its obligations under the
law.Learn more about how GDPR affects
publishers
When using this feature, a TFUA (Tag For Users under the Age of Consent in
Europe) parameter will be included in the ad request. This parameter disablespersonalized advertising,
including remarketing, for that specific ad request. It also disables
requests to third-party ad vendors, such as ad measurement pixels and
third-party ad servers. The parameter does not affect your use of
Ad Manager key-values. Consequently, you must ensure that your use of
key-values is compliant with GDPR.
Including the TFUA parameter in an ad request takes precedence over any
applicable site-level settings.
To include this tag on all ad requests made from your implementation,
append&tfua=1to your ad tag.
[[["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-08-20 UTC."],[[["\u003cp\u003ePublishers serving users in the EEA must obtain consent for personalized ads and data usage to comply with GDPR and the ePrivacy Directive.\u003c/p\u003e\n"],["\u003cp\u003eConsent can be managed and forwarded to the IMA SDK using the User Messaging Platform (UMP) SDK; on newer IMA SDK versions (3.11.1+), the TC String is automatically populated from a compliant CMP.\u003c/p\u003e\n"],["\u003cp\u003ePublishers can request non-personalized ads by appending \u003ccode\u003e&npa=1\u003c/code\u003e to their ad tag, which restricts ad selection to content without user history.\u003c/p\u003e\n"],["\u003cp\u003eTo comply with GDPR for users under the age of consent, publishers can append \u003ccode\u003e&tfua=1\u003c/code\u003e to their ad tag, disabling personalized advertising and third-party ad vendor requests.\u003c/p\u003e\n"],["\u003cp\u003eGDPR compliance necessitates a mechanism for users to revoke consent, which publishers should implement by referring to the provided guidance on privacy options.\u003c/p\u003e\n"]]],["To comply with the EU User Consent Policy, disclose cookie and data usage to EEA users and obtain consent. Use the UMP SDK to manage consent; it automatically forwards consent to the IMA SDK. To allow users to revoke consent implement privacy options. Force non-personalized ads by appending `&npa=1` to the ad tag via the `adTagParameters` property. Tag users under the EEA age of consent by appending `&tfua=1`, which disables personalized advertising. These parameters are demonstrated with code examples for both Objective-C and Swift.\n"],null,["# Request consent from EU users\n\n| **Note:** Consent reporting requires IMA SDK for iOS version 3.1.0 or higher.\n\nUnder Google's [EU User Consent\nPolicy](//www.google.com/about/company/consentstaging.html),\nyou must make certain disclosures to your users in the European\nEconomic Area (EEA) and obtain their consent for the use of cookies or\nother local storage where legally required, and for the collection,\nsharing, and use of personal data for ads personalization. This policy\nreflects the requirements of the EU ePrivacy Directive and the General\nData Protection Regulation (GDPR).\n\nUser Messaging Platform SDK\n---------------------------\n\nFor information on obtaining consent using the User Messaging Platform (UMP)\nSDK, see our [User Messaging Platform SDK\nguide](/ad-manager/dynamic-ad-insertion/sdk/ios/privacy). Consent obtained through the UMP\nSDK are automatically forwarded to the IMA SDK.\n\nConsent revocation\n------------------\n\nGDPR requires [consent revocation](//support.google.com/admanager/answer/10114217)\nto allow users to withdraw their consent choices at any time. See\n[Privacy options](/ad-manager/dynamic-ad-insertion/sdk/ios/privacy#privacy_options)\nto implement a way for users to withdraw their consent choices.\n\nForwarding consent to the IMA SDK\n---------------------------------\n\n| **Note:** On version 3.11.1 or higher, the IMA SDK automatically populates the TC String in the ad tag from the UMP SDK or any other IAB TCF v2.0-compliant consent management provider.\n\nBy default, ad requests to Google serve personalized ads, with ad selection\nbased on both the content of the web page or app and the history of the user\nvisiting it. Google also supports serving non-personalized ads.\n[Learn more about personalized and non-personalized\nads](//support.google.com/admanager/answer/9005435)\n\nTo force non-personalized ads, you can append `&npa=1` to your ad tag\nto specify that only non-personalized ad content should be returned.\n\nThis is accomplished with the `adTagParameters` property, like so: \n\n### Objective-C\n\n```objective-c\n- (void)requestStream {\n ...\n IMALiveStreamRequest *request =\n [[IMALiveStreamRequest alloc] initWithAssetKey:kAssetKey\n networkCode:kNetworkCode\n adDisplayContainer:adDisplayContainer\n videoDisplay:imaVideoDisplay];\n request.adTagParameters = @{ @\"npa\" : @1};\n [self.adsLoader requestStreamWithRequest:request];\n}\n```\n\n### Swift\n\n```swift\nfunc requestStream() {\n ...\n let request = IMALiveStreamRequest(\n assetKey: ViewController.assetKey,\n networkCode: ViewController.networkCode,\n adDisplayContainer: adDisplayContainer!,\n videoDisplay: imaVideoDisplay,\n userContext: nil)\n request.adTagParameters = {'npa', 1};\n adsLoader?.requestStream(with: request)\n}\n```\n\n\u003cbr /\u003e\n\nTagging users as under the age of consent\n-----------------------------------------\n\nYou can mark your ad requests to receive treatment for users in the European\nEconomic Area (EEA) under the age of consent. This feature is designed to\nhelp facilitate compliance with the [General Data Protection Regulation\n(GDPR)](//eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32016R0679).\nNote that you may have other legal obligations under GDPR. Please review\nthe European Union's guidance and consult with your own legal counsel.\nPlease remember that Google's tools are designed to facilitate compliance\nand do not relieve any particular publisher of its obligations under the\nlaw. [Learn more about how GDPR affects\npublishers](//support.google.com/admanager/answer/7666366)\n\nWhen using this feature, a TFUA (Tag For Users under the Age of Consent in\nEurope) parameter will be included in the ad request. This parameter disables\n[personalized advertising](//support.google.com/admanager/answer/9005435),\nincluding remarketing, for that specific ad request. It also disables\nrequests to third-party ad vendors, such as ad measurement pixels and\nthird-party ad servers. The parameter does not affect your use of\nAd Manager key-values. Consequently, you must ensure that your use of\nkey-values is compliant with GDPR.\n\nIncluding the TFUA parameter in an ad request takes precedence over any\napplicable site-level settings.\n\nTo include this tag on all ad requests made from your implementation,\nappend `&tfua=1` to your ad tag. \n\n### Objective-C\n\n```objective-c\n- (void)requestStream {\n ...\n IMALiveStreamRequest *request =\n [[IMALiveStreamRequest alloc] initWithAssetKey:kAssetKey\n networkCode:kNetworkCode\n adDisplayContainer:adDisplayContainer\n videoDisplay:imaVideoDisplay];\n request.adTagParameters = @{ @\"tfua\" : @1};\n [self.adsLoader requestStreamWithRequest:request];\n}\n```\n\n### Swift\n\n```swift\nfunc requestStream() {\n ...\n let request = IMALiveStreamRequest(\n assetKey: ViewController.assetKey,\n networkCode: ViewController.networkCode,\n adDisplayContainer: adDisplayContainer!,\n videoDisplay: imaVideoDisplay,\n userContext: nil)\n request.adTagParameters = {'tfua', 1};\n adsLoader?.requestStream(with: request)\n}\n```\n\n\u003cbr /\u003e\n\nThe example above uses a live stream request, but the same applies to VOD streams."]]