Adjust Destination

Send your event data from RudderStack to Adjust.

Adjust is an industry-leading mobile attribution provider that allows you to bring all your business data together to get powerful insights from it.

RudderStack supports Adjust as a destination to which you can seamlessly send your event data.

Find the open source transformer code for this destination in the GitHub repository. You can also refer to the specific repositories for the Android and iOS implementations.

Connection compatibility

Destination Information
  • Status: Generally Available
  • Supported sources: Android, iOS , Unity, Cloud, Warehouse, React Native , Flutter, Cordova, Shopify
  • Refer to it as ADJ in the Integrations object.
Connection Modes
SourceCloud modeDevice modeHybrid mode
Androidsupportedsupportednot supported
Cloudsupportednot supportednot supported
Cordovasupportednot supportednot supported
Fluttersupportedsupportednot supported
iOSsupportedsupportednot supported
React Nativesupportednot supportednot supported
Shopifysupportednot supportednot supported
Unitysupportedsupportednot supported
Warehousesupportednot supportednot supported
Supported Message Types
SourceIdentifyPageTrackScreenGroupAliasRecord
Cloud mode
Supported sourcesnot supportednot supportedsupportednot supportednot supportednot supportednot supported
Device mode
Androidsupportednot supportedsupportednot supportednot supportednot supportednot supported
Fluttersupportednot supportedsupportednot supportednot supportednot supportednot supported
iOSsupportednot supportedsupportednot supportednot supportednot supportednot supported
Unitysupportednot supportedsupportednot supportednot supportednot supportednot supported

Get started

Once you have confirmed that the platform supports sending events to Adjust, follow these steps:

  1. From your RudderStack dashboard, add the source. Then, from the list of destinations, select Adjust.
  2. Assign a name to the destination and click Continue.

Connection settings

SettingDescription
App TokenEnter your Adjust app token.
Send to production environment in AdjustTurn on this toggle to send the data to the production environment in Adjust.

By default, RudderStack sends the data to the Adjust sandbox environment.
Client-side events filteringThis setting lets you specify which events should be blocked or allowed to flow through to Adjust. See the Client-side Events Filtering guide for more information on this feature.

Note: This setting is applicable only when sending events to Adjust in device mode.
Map events to Adjust event tokensThis setting lets you map the RudderStack events to Adjust’s event tokens. See the FAQ for more information on creating an event token in Adjust.
RudderStack parameters to Adjust partner parametersThis setting lets you map your event properties to specific Adjust partner parameters.
Delay time before SDK initializationUse this setting to initiate a delay in loading the SDK for the first time.

Note: This setting is applicable only for sending events to Adjust in device mode.
Use device mode to send eventsTurn on this toggle for the Android/iOS SDK to send events to Adjust in device mode.

warning
Do not add native Adjust SDK to your project as it will prevent you from integrating it successfully.
Enable Install AttributionTurn on this toggle to automatically track the Install Attributed event when the app is installed for the first time.

See the App install attribution section for more information on this feature.
Consent management settingsConfigure the consent management settings for the specified source by choosing the Consent management provider from the dropdown and entering the relevant consent category IDs.

See Consent Management in RudderStack for more information on this feature.

Add device mode integration

Follow these steps to add Adjust to your project depending on your integration platform:

Identify

RudderStack’s identify call lets you identify a visiting user and associate them to their actions.

RudderStack sends the user information in the identify call to Adjust’s addSessionPartnerParameter method to set the userId (or anonymousId, in case userId is absent), so that the user information is passed to the subsequent calls.

A sample identify call is shown below:

[[RudderClient sharedInstance] identify:@"developer_user_id"
                                 traits:@{@"foo": @"bar", @"foo1": @"bar1"}];

Track

The track call lets you record the user actions along with any properties associated with them.

When you make a track call, RudderStack maps the event name with the corresponding Adjust custom event in the dashboard using Adjust’s trackEvent method.

warning

Make sure to define the event mapping in the Map events to Adjust Event Tokens dashboard setting. Adjust will reject any events apart from these mappings.

Note that you must create the event token in the Adjust dashboard before specifying the mappings.

Send callback parameters

RudderStack sends all custom properties in your track calls as callback parameters.

A sample track call is shown below:

[[RudderClient sharedInstance] track:@"test_event"
                          properties:@{@"key":@"value", @"foo": @"bar"}];

Send partner parameters

You can also send custom properties in your track calls as partner parameters to Adjust. Adjust then sends those parameters to the external partners you have set up in your Adjust dashboard. See the FAQ below for more information on adding a partner in Adjust.

RudderStack uses the property mappings specified in the RudderStack Parameters to Partner Parameters dashboard setting to check if a key is present in the track event properties and maps it to the corresponding Adjust partner parameter object.

warning

Note that:

  • Adjust will reject any properties apart from mappings specified in the RudderStack Parameters to Partner Parameters dashboard setting.
  • The partner parameters only accept the String data type.

Suppose a customer sets the following mappings in the RudderStack dashboard:

RudderStack propertyAdjust partner parameter
revenueprice
quantityquantity

A sample track call with the above properties is shown below:

[[RudderClient sharedInstance] track:@"purchase"
                          properties:@{@"revenue":@20.99,
                          @"currency": @"USD",
                          @"quantity": @10}];

The corresponding Adjust payload highlighting the parameters is shown below:

"params": {
  "android_id": "3f034872-5e28-45a1-9eda-ce22a3e36d1a",
  "gps_adid": "3f034872-5e28-45a1-9eda-ce22a3e36d1a",
  "att_status": 3,
  "tracking_enabled": true,
  "currency": "USD",
  "ip_address": "[::1]",
  "s2s": 1,
  "app_token": "t1yurrb968zk",
  "event_token": "tf4gm5",
  "environment": "production",
  "partner_params": {"price":"20.99","quantity":"10"}
},
info
RudderStack converts numeric values into strings before sending the data to Adjust.

Send revenue tracking events

To send revenue tracking events to Adjust, your can add total and currency to your event properties:

[[RudderClient sharedInstance] track:@"purchase"
                          properties:@{@"total":@2.99, @"currency": @"USD"}];

Reset

You can use RudderStack’s reset method to call resetSessionCallbackParameters method of the Adjust SDK to reset the user ID and the associated traits.

A sample reset call is shown below:

[[RudderClient sharedInstance] reset];

App install attribution

RudderStack’s Adjust mobile integration (iOS and Android) automatically triggers an Install Attributed event if you have enabled Install Attribution tracking in the dashboard settings.

info

The enhanced attribution support is available from:

  • Rudder-Adjust Android v2.1.0 and above
  • Rudder-Adjust iOS v2.2.0 and above

Usage

Follow these steps to use the enhanced attribution tracking feature:

1. Configure token mapping in the Adjust dashboard

  1. In your Adjust dashboard, create a new event token specifically for the Install Attributed event — you can also use an existing event token in case you have one.
  2. Copy the generated event token.
  3. Use this token in the Adjust destination configuration (explained below).

2. Adjust destination configuration in RudderStack

  1. In your RudderStack dashboard, add Adjust as a mobile device mode destination.
  2. Specify your Adjust App Token.
  3. In the Map events to Adjust event tokens dashboard setting, map the Install Attributed event to the event token obtained above.
  4. Save the mapping.

3. Enable automatic attribution tracking

Toggle on the Enable Install Attribution dashboard setting to automatically track the Install Attributed event when the app is installed for the first time.

How attribution tracking works

By leveraging Adjust’s attribution callback on iOS and Android, the integration listens for an attribution change from Adjust’s SDK and triggers the event with the following Adjust attribution parameters:

KeyValueDescription
providerAdjustHardcoded value
trackerTokenattribution.trackerTokenToken of the link to which the device is currently attributed
trackerNameattribution.trackerNameName of the link to which the device is currently attributed
campaign.sourceattribution.networkName of the network to which the device is currently attributed
campaign.nameattribution.campaignName of the campaign to which the device is currently attributed
campaign.contentattribution.clickLabelThe click label tagged with the install
campaign.adCreativeattribution.creativeName of the creative to which the device is currently attributed
campaign.adGroupattribution.adGroupName of the ad group to which the device is currently attributed

An example of the attribution data automatically captured by the Install Attributed event is shown below:

{
  "event": "Install Attributed",
  "properties": {
    "provider": "Adjust",   // Always set to "Adjust"
    "trackerToken": "abc123",   // (NSString, null if unavailable)
    "trackerName": "Campaign Name",   // (NSString, null if unavailable)
    "campaign": {
      "source": "google",   // (NSString, null if unavailable)
      "name": "summer_campaign",   // (NSString, null if unavailable)
      "content": "click_label",   // (NSString, null if unavailable)
      "adCreative": "banner_ad",   // (NSString, null if unavailable)
      "adGroup": "mobile_users"   // (NSString, null if unavailable)
    }
  }
}
info
If any of the above values are unavailable, they are defaulted to null. This event is then sent to all the connected device mode and cloud destinations.

See the following FAQs for troubleshooting tips:

Adjust environment dependency on log level

FAQ

Where can I find the Adjust app token?

To get your Adjust app token, follow these steps:

  1. Log into your Adjust dashboard.
  2. Find your app and select the app options caret (^):
Adjust app token
  1. You will find your app token listed here.
Adjust app token

How can I create a new event token in Adjust?

To create a new event token, follow these steps:

  1. Log into your Adjust dashboard.
  2. Find your app and select the app options caret (^):
Adjust app token
  1. Go to All Settings > Events:
Adjust event token
  1. Under CREATE NEW EVENT, enter the name of the event token and click CREATE.

How can I set up new partners in Adjust?

Adjust lets you provide additional data to certain integrated partners. To set up a new partner in Adjust, follow these steps:

  1. Log into your Adjust dashboard.
  2. Find your app and select the app options caret (^):
Adjust app token
  1. Go to All Settings > Partner Setup > ADD PARTNERS:
Adjust partner setup
  1. Select the partner from the list and click the + option on the right to add.
  2. Enter the relevant details to complete the configuration and click SAVE to complete the setup.

Why are the Install Attributed events not appearing in my Adjust dashboard?

  • Verify that the Adjust destination is correctly configured in your RudderStack dashboard.
  • Check your Adjust App Token is correctly specified in the dashboard configuration.
  • Make sure the Install Attributed event is properly mapped to the corresponding Adjust event token. See App install attribution section for more information.

Why is the Install Attributed event not triggering?

If you load Adjust’s SDK natively alongside the Rudder-Adjust integration, the Install Attributed event callback may not trigger correctly. You will need to remove the native Adjust implementation to avoid any conflicts.

warning
If your device is already registered with Adjust, make sure to unregister it first, as attribution will not change for registered devices.

The device unregistration process is listed below:

info
This process is required because Adjust only triggers install attribution on the first genuine app installation for each device ID.
  1. Find the device identifier:

    • Get the IDFA (iOS) or Advertising ID (Android) from the raw view of an event in your RudderStack dashboard.
    • Or check your device settings:
      • iOS: Settings > Privacy & Security > Apple Advertising > View Ad ID
      • Android: Settings > Google > Ads > View Ad ID
  2. Uninstall app: Remove the app completely from your test device.

  3. Unregister in Adjust Console:

    • Go to Adjust Testing Console.
    • Navigate to your app.
    • Find and delete the IDFA (iOS) or Advertising ID (Android) from your registered test devices.
  4. Clean reinstall:

    • Reinstall the app on the device.
    • Launch the app fresh — this should trigger the Install Attributed event.
    • You should now see the device register in Adjust with a new Install Attributed event.

See the Adjust documentation for more information.



Questions? Contact us by Email or on Slack