Privacy features

GDPR right to be forgotten

In accordance with article 17 of the EU's General Data Protection Regulation (GDPR), you can notify Adjust when a user has exercised their right to be forgotten (RTBF). Call the gdprForgetMe method to have the Adjust SDK communicate the user's RTBF request to the Adjust backend:

Objective-C
Swift
Javascript
[Adjust gdprForgetMe];

When the Adjust backend receives this information, Adjust will erase the user's data. The Adjust SDK will also stop tracking the user and will not send requests from the device in future.

Third-party sharing for specific users

You can use the Adjust SDK to record when a user changes their third-party sharing settings.

Disable third-party sharing for specific users

Some users may want to opt-out of sharing their data with third-parties. To communicate this to Adjust, call the trackThirdPartySharing method with a false value.

Objective-C
Swift
Javascript
ADJThirdPartySharing *adjustThirdPartySharing = [[ADJThirdPartySharing alloc] initWithIsEnabledNumberBool:@NO];
[Adjust trackThirdPartySharing:adjustThirdPartySharing];

When the backend gets this information it will stop sharing the user's data with third-parties. The Adjust SDK will continue to work as expected.

Enable or re-enable third-party sharing for specific users

If a user enables or re-enables sharing with third-parties, you need to relay this to the backend. Call the trackThirdPartySharing method with a true value to do this.

Objective-C
Swift
Javascript
ADJThirdPartySharing *adjustThirdPartySharing = [[ADJThirdPartySharing alloc] initWithIsEnabledNumberBool:@YES];
[Adjust trackThirdPartySharing:adjustThirdPartySharing];

When the backend gets this information it will update the user's settings. The Adjust SDK will continue to work as expected.

Send granular information to Adjust backend

You can attach granular information when a user updates their third-party sharing preferences. You can use this information to communicate more detail about a user's decision.

Objective-C
Swift
Javascript
ADJThirdPartySharing *adjustThirdPartySharing = [[ADJThirdPartySharing alloc] initWithIsEnabledNumberBool:nil];
[adjustThirdPartySharing addGranularOption:@"PartnerA" key:@"foo" value:@"bar"];
[Adjust trackThirdPartySharing:adjustThirdPartySharing];

Set third-party sharing for specific partners

You can give users the option to customize their third-party sharing settings on a per-partner basis. There are three levels of user consent: Yes, Analytics, and No. See Partner-specific settings for more information.

To communicate the user’s consent level to Adjust, call the addPartnerSharingSetting method. Pass the following arguments:

ArgumentData typeDescription
partnerNameStringThe name of the partner. See the list of available partners.
keyStringThe metric to share with the partner
valueBooleanThe user's decision

Yes

Analytics

No

Available partners

Partner nameString value
AppleAdsapple_ads
Facebookfacebook
GoogleAdsadwords
GoogleMarketingPlatformgoogle_marketing_platform
Snapchatsnapchat
Tencenttencent
TikTokSantiktok_san
Twittertwitter
YahooGeminiyahoo_gemini
YahooJapanSearchyahoo_japan_search

Manage Facebook Limited Data Use

Important:
The Adjust SDK sends information to Facebook as soon as the app is installed. You need to make sure you call this method before initializing the SDK.

Facebook provides a feature called Limited Data Use (LDU) to comply with the California Consumer Privacy Act (CCPA). This feature enables you to notify Facebook when a California-based user is opted out of the sale of data. You can also use it if you want to opt all users out by default.

You can update the Facebook LDU status by passing arguments to the ADJThirdPartySharing.addGranularOption method.

Objective-C
Swift
Javascript
ADJThirdPartySharing *tps = [[ADJThirdPartySharing alloc] initWithIsEnabledNumberBool:@YES];
[tps addGranularOption:@"facebook" key:@"data_processing_options_country" value:@"1"];
[tps addGranularOption:@"facebook" key:@"data_processing_options_state" value:@"1000"];
[Adjust trackThirdPartySharing:tps];

Parameters

Note:
If you call this method with a 0 value in either the data_processing_options_country or data_processing_options_state field, the Adjust SDK will pass both fields back as 0.

Provide consent data to Google (Digital Markets Act compliance)

Note:

Added in v4.25.0.

KeyValueDescription
eea1 = users are in the EEA and the DMA applies

0 = users are not in the EEA and the DMA does not apply
The eea parameter informs Google whether users are located in the EEA and thus whether the European regulations, including the DMA, apply to this user and conversion. The parameter type is boolean.
ad_personalization1 = user consented

0 = user did not consent
  • For Google Ads

The ad_personalization parameter informs whether users consented to being served personalized ads via Google Ads after installing the app, i.e. whether Google can retarget the users.
ad_user_data1 = user consented

0 = user did not consent
The ad_user_data parameter informs Google whether users granted consent to personal data being shared for measurement purposes or not. The consent applies to all the Core Platform Services (CPS) advertisers have specified in their Google Ads and Google Marketing Platform UI.
npa1 = user did not consent

0 = user consented
  • For Google Marketing Platform

The npa parameter informs whether users consented to being served personalized ads via Google Marketing Platform after installing the app, i.e. whether Google can retarget the users.

To comply with the EU's Digital Markets Act (DMA), Google Ads and the Google Marketing Platform require explicit consent to receive Adjust’s attribution requests to their APIs. To communicate this consent, you need to add the following granular options to your Adjust third party sharing object for the partner google_dma.

Important:

Passing these options is required if you use Google Ads or Google Marketing Platform and have users located in the European Economic Area (EEA).

Swift
Objective-C
let adjustThirdPartySharing = ADJThirdPartySharing.initWithIsEnabledNumberBool(nil)
adjustThirdPartySharing.addGranularOption("google_dma", key: "eea", value: "1")
adjustThirdPartySharing.addGranularOption("google_dma", key: "ad_personalization", value: "1")
adjustThirdPartySharing.addGranularOption("google_dma", key: "ad_user_data", value: "1")
Adjust.trackThirdPartySharing(adjustThirdPartySharing)

Disable third-party sharing

You can disable third-party sharing at the SDK level. This means that Adjust will not share any user information with third-parties. To do this, call the disableThirdPartySharing method.

Objective-C
Swift
Javascript
[Adjust disableThirdPartySharing];

Data residency

The data residency feature allows you to choose the country in which Adjust will store your data. This is useful if you are operating in a country with strict privacy requirements. When you set up data residency, Adjust will store your data in a data center located in the region your have chosen.

To set your country of data residency, set the urlStrategy of your ADJConfig instance. For example, you can call the following to set your data residency region to the EU:

Objective-C
Swift
Javascript
[adjustConfig setUrlStrategy:ADJDataResidencyEU];

Consent measurement for specific users

If you are using Data Privacy settings in your Adjust dashboard, you need to set up the Adjust SDK to work with them. This includes settings such as consent expiry period and user data retention period. To toggle this feature, call the trackMeasurementConsent method. When enabled, the SDK will communicate the data privacy settings to the backend.

Objective-C
Swift
Javascript
[Adjust trackMeasurementConsent:YES];

The Adjust backend will then apply your data privacy rules to the user. The Adjust SDK will continue to work as expected.