This guide takes you through a step-by-step process, from implementing the SDK to setting up callbacks. We have also defined key terms and KPI definitions to make things easier.

1Set up your app

Setting up your app tracking is all about preparation. While integrating the Adjust open-source SDK is swift and easy, knowing which events to track, which features to leverage and how to connect your app data with other systems requires you to plan ahead.

To work with Adjust, you need to integrate our tracking SDK into your app. Unlike many other tools, Adjust uses an open-source SDK that transparently integrates into your code.

When you have made the initial setup described below, you can go on to our guide to event tracking, which describes more advanced features and goes through best practices for planning which events to track.

1.1Set up your app in the dashboard

First of all, you need to add your app to the Adjust dashboard.

  1. In your Adjust dashboard, go to the the “Apps” screen and hit “New App”.
  2. Enter your app ID and specify the name.
  3. Click “Create app” to confirm.
  4. Receive an app token for integration into the SDK.

You can change the app settings at any time.

When you set up the app, Adjust will search our extensive apptrace database for collected App Store data on your app. This allows you to pull data on how your app performs in the stores right in your Adjust dashboard. apptrace currently supports iOS and Android. If your app does not show up, the data may not have been collected and could be backfilled later.

Once you have registered the app in Adjust, you will receive an app token that will identify your app. App tokens are unique, app specific identifiers in Adjust and should not be disclosed with third parties. An app token is required for Adjust SDK integration.

Which app ID should I use?

Platform App ID Example Where to find it
iOS Numeric iTunes ID 123456789 iTunes Connect
Android Bundle ID com.yourcompany.yourapp Google Play / developer kit
Windows Store Alphanumeric Store ID 9wzdncrfj2wl Windows Store
Windows Phone Alphanumeric Store ID 46ed4281-297a-2104-d540-d8735975f2bd Windows Phone store

If your app is not yet in the Store, you can enter a facsimile app ID - such as the examples above. Your apptrace data will be missing, but you can still complete the setup and start working on your tracking implementation.

Your trackers will not redirect properly until you change the app ID to your correct one, unless you set a static redirect as described later in the guide.

1.2Multi-platform apps

If your app is available on more than one mobile operating system (OS), then you can choose to set up your app as multi-platform in Adjust. This means that the Adjust integration for all of versions of your mobile app is supported by the same app token, event tokens, and tracker tokens. Additionally, all multi-platform tracker URLs will redirect to the device’s relevant app store, automatically. To set up your app as multi-platform in Adjust, simply follow the instructions below.

Setup Instructions

If you are setting up your app for the first time, please reference the considerations for first-time app setup at the bottom of the section.

In the Adjust Dashboard:

  1. Select App Settings > (Settings) Platforms
  2. Navigate to the MULTI-PLATFORM APP toggle (located at the bottom of the module) and set it to ON
  3. Then, select the appropriate OS icon (located under the APP NAME field)
  4. Once chosen, select the appropriate app store (for Android only) and insert the relative app identifier
  5. Optional: Insert a custom redirect URL. All custom redirects override the default store settings. For more information on using Custom Store URLs, click here.
  6. Optional: SET AS DEFAULT PLATFORM. The default platform is the store that Adjust will redirect to if we cannot determine the device OS at click time and there is no fallback URL in place. For more information on the Adjust fallback parameter, click here.
  7. When you are happy with your settings, select SAVE

*If you are setting up your app for the first time in Adjust, then you must begin by selecting a single platform. Once complete, you may proceed with multi-platform setup as outlined in the steps above.

1.3Integrate the Adjust SDK

In short, the integration process is pretty much this:

  1. Go to the GitHub repo for the Adjust SDK and pick your platform.
  2. Download and import the source files into your project - follow the readme.
  3. Specify your app token as in the readme.
  4. Hit the “build” button, lean back and grab a cup of coffee.

That is pretty much it - but be sure to go through the readme to specify permissions and set up frameworks correctly. If you have trouble, just email

With the Adjust SDK integrated just like so, you have unlocked conversion tracking, session analysis and standard usage KPIs - in about five minutes.

The next sections will cover how to get more intelligence by sending revenue figures and using SDK hooks to analyze in-app events.

1.4Tracking events and revenues

An event is any activity that the user initiates in your app. It is a specific action that occurs at a specific time, such as a purchase or a registration.

A cornerstone of effective app tracking is well-implemented in-app events. In-app events are completely free with Adjust. For the best resolution in your business intelligence, track any and all conversion points in your app that may help to define high-quality users. For more guidance in event implementation, check out our event tracking guide.

To send in-app events to Adjust, you first create an event token in your dashboard, and then implement the eventTrack method at the point in your app where this event occurs.

Event tokens can be created in the Events screen of your dashboard. Simply hit “New Event”, type in a name of your choice, and the event will be added to the list with a six-character token. You will implement this token in the app.

To track purchases and other revenue events, just create one or more dedicated event tokens for your revenue events, and implement these in your app with the additional revenue parameters. You can read about the full thing in our guide to event tracking.

Additionally, you can set up callbacks on any in-app event to transmit data back to your servers. For more detail, check out the section on “Using your data” below or our callbacks guide.


When integrating the Adjust SDK, take care to test and analyze the results and make sure everything is nice and tidy.

In testing, always use the Sandbox environment. Using the Sandbox environment allows you to separate your testing data from your live data. Attribution, callbacks, and tracking work normally in sandbox. Some metrics and analyses (such as cohort analysis) are not available in Sandbox.

However, remember to always submit your app to the stores using the Production environment. Do not distribute your app using the Sandbox environment.

In your dashboard, you can view your Sandbox data by hitting the “Switch to Sandbox” button in the upper right, by the breadcrumb.


When implementing the SDK, you should observe the SDK logs outputted into your development environment (such as Xcode or Eclipse). The SDK will notify you when messages have been sent to the server and if anything has gone wrong.

You can modify the amount of logs the SDK outputs, by selecting any of the following log levels. If you are heavily testing your Adjust implementation you may wish to use more verbose logs.

Verbosity is set by default to Info.

For more information on how to set up logging in the SDK, visit the relevant guides for iOS and Android.

iOS Android    
[adjustConfig setLogLevel:ADJLogLevelVerbose] config.setLogLevel(Log.VERBOSE) Verbose Everything imaginable.
[adjustConfig setLogLevel:ADJLogLevelDebug] config.setLogLevel(Log.DEBUG) Debug Crucial debug logs.
[adjustConfig setLogLevel:ADJLogLevelInfo] config.setLogLevel(Log.INFO) Info Standard logging.
[adjustConfig setLogLevel:ADJLogLevelWarn] config.setLogLevel(Log.WARN) Warn When something is about to go wrong.
[adjustConfig setLogLevel:ADJLogLevelError] config.setLogLevel(Log.ERROR) Error When something has gone wrong.
[adjustConfig setLogLevel:ADJLogLevelAssert] config.setLogLevel(Log.ASSERT) Assert Logging disabled.

1.7Submitting your app to the Stores

Unlike other SDKs you may have worked with, the Adjust SDK is open source. You can specify the build settings in whichever way best suits your app and the SDK will follow. Further, since you can inspect the code, you know exactly what it’s up to.

As soon as you start testing your app with the newly installed Adjust SDK, you will notice that it is displayed in the Adjust dashboard as organic traffic.

Organic traffic is traffic that does not come through a tracked adverting source. We still crunch the same KPIs as any other source. Organic traffic, of course, is free of charge.

You will see a large spike in installs in your Adjust dashboard. This is typical of the first time the Adjust SDK is integrated, as each user will register an install when they update to the first version with Adjust in it. In a week or two, your install numbers will even out.

If you have a larger user base, we recommend that you do not run any acquisition campaigns until the update effect has settled.

2Tracking installs

Adjust conversion tracking generally matches installs to clicks on a URL. These clicks come from advertisements, websites or even other apps.

Adjust links send users to the store, where they go into a black box, and then installs come out the other side.

Using a clever, augmented, digital fingerprinting method, we can look at clicks and installs, identify common environmental factors and attribute the install to a particular source.

2.1Setting up a tracker URL

To set up a new source, just generate a new tracker URL and start linking to it. Adjust will take care of the rest.

  1. On the “Apps” screen of your dashboard, expand your app.
  2. Hit “New Tracker” at the bottom of the list.
  3. Enter a name and hit Enter.

Your new tracker will be generated and show up in the list above. You will receive a URL, that looks something like:

If you click the link on a fresh device and install the app, a click and an install is attributed to the tracker that you added. These are your URLs that you send to networks and enter into creatives, also known as a click URL or a redirection URL. They form the foundation for much additional functionality. Feel free to reach out to if you have any questions about testing.

You can further group trackers up to 4 levels, either by manually entering our grouping syntax or by using dynamic Campaign Structure Parameters. You can read more about this in the guide to Tracker Generation.

2.2Publish your tracker

Once you have set up all of your install sources, you will need to make sure that the correct tracker URL is set into your advertisement. Either set this up yourself or ask your network account manager to do this for you.

Your network may need to receive conversion postbacks. These conversion postbacks are dynamically tagged on the click URL. Our technology partners are all certified to work with this; if you wish to integrate a new network, feel free to ping us at

The basic setup process is now complete. As soon as someone clicks a tracker and installs your app, it will immediately show up in your dashboard statistics.

2.3Testing attribution

To fully test the entire attribution chain, you can follow a tracker link from your mobile device (fresh or cleaned - see below), install the app, and run a few events. All results should be visible in the Dashboard within a few minutes of hitting our servers.

If your app with the Adjust SDK is not yet in the store, you will first need to create a click on the tracker, then close the store and install a development build onto your device.

Adjust permanently attributes a device the first time our servers see it. If you need to run multiple tests, you will have to clear the testing device from our servers. To verify and clear device data, you can use our Testing Console, which also has a companion API for verifying and clearing device data without having to enter the Dashboard.

2.4Working with Facebook

Adjust has been approved by Facebook to measure installs coming from Facebook’s Mobile App Install Ads and Audience Network.

Once you have the Adjust SDK integrated, you can seamlessly start measuring your Facebook campaigns with minimal additional setup. All you need to do is activate the Facebook integration in your Adjust dashboard.

You can set up a Facebook app campaign by just specifying the Facebook app ID in your dashboard.

  1. Go to your app’s settings, and select Partner Setup > Facebook
  2. Enter your Facebook app ID and select SAVE

That is all you need to do - we’ll start checking with Facebook if any installs can be attributed to them from then on. Go ahead and put your Facebook ads live in your Facebook ad dashboard.

We will create a special tracker group that will be automatically populated with the different ad groups you are running.

For more information on Facebook, including some important caveats regarding discrepancies, check out our Guide to Facebook Mobile Measurement.

2.5Troubleshooting discrepancies

You may find, as you start tracking installs, that the data in your Adjust dashboard does not sum up exactly with the data in other dashboards, such as iTunes Connect, Facebook dashboards, or your media network sources. There are a few different, common reasons why this may occur:

  • Downloads versus installs
    The app stores track the number of downloads of your app - the number of times a user has clicked ‘download’ on your app store landing page. Adjust tracks the number of installs: the number of users that have opened the app at least once. There may be some difference between your app store numbers and your Adjust numbers as some users that download your app may never open it, or you may have some installs that did not come straight from the app store.

  • Different attribution logic
    Adjust applies a general click-based, 7-day attribution model. Your partners may be using a different method.

  • Timezones
    Small, temporary difference can often be explained by how Adjust measures time. Each day in the Adjust database is measured according to UTC, the universal time zone declared as GMT without summertime. Your partners may be displaying days on different timezones. This difference can be minimized by changing your timezone in Account Settings > Your Data or by using the timezone filter in Statistics.

  • Different KPI definitions
    KPIs often are not universally defined. This means that Adjust may be correctly displaying a number according to a formula or a function that is different from other partners. At the end of this guide, you will find conclusive definitions to all of the KPIs in your dashboard.

  • Different tracking systems
    Adjust uses a sophisticated in-app SDK, capable of robustly tracking sessions and events regardless of whether the device is offline. Other tracking providers may be using different technology, from whence differences can occur.

If you have any further questions, feel free to let us know at

2.6Working with App Stores

Your trackers are designed to redirect, by default, to your iTunes, Google Play or Windows Store landing pages where users can download your app. You can change the redirection - to another store, for example, or to your own landing page - by using redirects as in the next section.

The Adjust tracker does not specify any particular language or locale, instead the app stores may opt to localize the landing page depending on their own logic.

2.7Integrating iTunes Analytics

You can automatically set up a connection to iTunes Analytics from your Adjust dashboard. To do so, you just need to add your Apple Provider ID in the App Settings panel of your dashboard.

You can find your Provider ID in the Apple Campaign Generator. It is the seven-digit number listed in the “Provider ID” field.

Once you have located your Provider ID, follow these steps to integrate iTunes Analytics:

  1. Open the App Settings panel for any app, and navigate through to “Platform Settings” and “iOS”.
  2. Hit “Show Advanced Options” to reveal the Apple Provider ID field.
  3. Enter your Apple Provider ID in this field.

Adjust will automatically append the required parameters to your iTunes links.

The campaign name in iTunes App Analytics will reflect the network-level tracker name in your Adjust Dashboard. Note that iTunes App Analytics limit campaign names to 40 characters. Any naming, either from within Adjust or from the apple_ct parameter, will be truncated.

2.8Deep linking, modified redirects, fallbacks

You can dynamically modify the redirect behavior of your trackers, allowing you to redirect users right into the app, to a landing page, to alternate App Stores or to a direct download location.

A simple URL parameter creates a static redirect:

You need to encode any redirect parameters you send to make sure it is URL-secure.

To learn more about advanced redirect patterns, check out our Field Guide to Tracker Generation.

Be aware that if you redirect your users to an invalid URL or target that does not allow users to get to the store, you will not receive any downloads.

3Using your dashboard

Your dashboard gives you all the aggregated data, and your central KPIs, at a glance. The following sections give you guidance on what features are available in your Adjust dashboard and how to leverage it in your analysis.

Your dashboard comes with a number of sections to allow you to drill down further into your data, without any manual processing:

Statistics shows you key metrics for your apps at a glance. This is the page you open by hitting “Statistics” in the of the app you want to investigate. It provides you access to deliverables, fraud prevention data, cohorts and custom views.

Deliverables is the overview for a particular app, showing you central metrics per tracker, with graphs for each KPI. You can open this screen by clicking on a particular app in the Statistics Overview or unfolding an app in your Apps Overview and clicking “Statistics”. This is where you will find your overview graphs, core KPIs and distributions for these. You can drill down further in this view by clicking on the name of a particular source, giving you detailed statistics all the way to your fourth level.

Deliverables can further be filtered to see only particular countries, platforms or attribution types, or while they are automatically displayed by tracker, they can additionally be viewed by date, country, business region (EMEA, NA, LATAM and APAC)* or platform. To change these settings simply click on the filter icon in the top right of your dashboard and set your filters as required.

Fraud Prevention gives you quick access to the results of your fraud prevention suite if activated.

Cohorts gives you access to your cohort analysis, which calculates the performance of your users depending on the stage of their lifetime. By expanding the settings page (with the gear icon on the right) you can access all of the cohorted KPIs available.

Views gives you the option to create custom templates for you to easily navigate to. Clicking the create view star in the top of your dashboard allows you to configure your custom views which will appear as tabs at the top of your statistics page. Views can include KPIs from Deliverables, Fraud Prevention and Cost in what ever configuration you desire.

apptrace is Adjust’s app store analysis service, providing you with the low-down on how your app is doing in the app stores. apptrace is accessible through the menu button in the main page.

*To see a full list of countries by business region, click here.

3.1Account settings and user permissions

Keeping your account information up-to-date will help you manage your data and billing more smoothly. The Account Settings tab in your dashboard stores all your personal and company details, and is where you can edit or review any personal information, as well as add users and review your billing history.

To find out more, read Managing Your Account.

4Using your data

The Adjust dashboard displays drill-down data as well as a wide range of different KPIs that help you understand the performance of your app and the quality of your users by installation source.

You can also drill down into the data to be able to easily compare different advertising sources so that you can effectively optimize your advertising campaign.

Each tracker will report a separate set of data and KPIs. Depending on your goals, different KPIs and metrics may be a better indicator of the performance of your sources.

The reports are always in pivotal format, making them easy to work with once you are familiar with Excel Pivot Tables or some other data-processing systems. This allows you to easily generate custom metrics, organize and graph these as suits you best, and create custom reports leveraging the consistent and reliable format of your exports.

4.1Instant reports

You can download your data in CSV format at any time right from the Adjust dashboard.

  1. In your App’s statistic page navigate to the dataset of interest for the desired report. This can include:
    • Deliverables, Cohorts or Fraud.
    • User defined Views
    • Customized date range.
    • Network, Campaign, Adgoup or Creative as the current level tracker.
    • Any other available filters: environment, platform, country etc
  2. Click on the download report icon at the top right of the statistics table.
  3. Select the format for which you would like your data to be downloaded: Snapshot or Drill Down. (see below for clarification on the difference between the two)
  4. If you have selected Drill Down, select the granularity for your report and whether you would like your data grouped by country or business region, i.e., EMEA, LATAM and APAC.*
  5. Click DOWNLOAD REPORT and your reports will then be downloaded to CSV file immediately.

Note: Hour granularity is only available for time periods of 30 or fewer days and cannot include dates prior to January 1, 2017. It is also not available for DAU, WAU and MAU.

Snapshot Reports.

Snapshot reports represent the data exactly as you see it. The data will not be divided by subsequent lower level trackers.

Drill Down Reports.

By contrast, Drill Down reports will not be necessarily divided as you see the data but rather to the lowest level trackers under the current tracker.

Snapshot v Drill Down Example: You have a network level tracker called NETWORK X, under it are two campaign trackers, CAMPAIGN A has both Adgroup B and Adgroup C; and CAMPAIGN X with both Adgroup Y and Adgroup Z. If you are currently in the NETWORK X level tracker your data will be shown divided by the 2 Campaigns. If you download a ‘Snapshot’ report the CSV too will be have your data divided as you can see it: by both Campaigns. If you were to download a ‘Drill Down’ report, the report will be divided into all the bottom most level trackers, in this case by Adgroup A, Adgroup B, Adgroup Y and Adgroup Z.

*To see a full list of countries by business region, click here.

4.2Automating reports

In addition to the online dashboard and instant CSV reports, you can also set up periodic reports for individual apps to be automatically sent to you via e-mail.

  1. Navigate to your Apps Overview.
  2. Hit “Reports” of the app for which you want automatic reports for.
  3. Choose your frequency, timespan, and report type.
  4. Enter the e-mail(s) to which you want us to send the reports. You can enter as many as you like by pressing enter in between.

Your reports will be processed and emailed to your login email in the early mornings UTC time.

4.3Callbacks for installs and in-app events

If you wish to also get data from your campaigns in other systems, such as your own servers, you can receive data on any event or install triggered in your apps through an HTTP GET request.

You can enter a callback URL to be triggered on each event on the “Events” screen of your dashboard - and no SDK modifications are required to change them at any time.

  1. Navigate to your app and select your app options caret (*)
  2. Select All Settings > (DATA MANAGEMENT) Raw Data Export > Real-Time Callbacks
  3. Here you’ll see a list of all activities tracked in Adjust. This includes all automatically tracked events and your custom in-app events.
  4. Identify the event you want called, and select the edit (pencil) icon
  5. Insert your callback URL into the CALLBACK URL field
  6. When you are happy with your callback, select UPDATE

Note that clicks and installs are also recorded as an event in this screen - so you can set up callbacks on clicks and installs just as well.

For more detail on how to work with Adjust callbacks, check out our callbacks guide.

4.4Receiving dynamic data on callbacks

Placeholder Value
{adid} A unique device identifier provided by Adjust
{tracker} The ID of the source the install was attributed to
{event} The ID of the event being called
{idfa} The ID for Advertisers
{android_id} The Google Android ID

Receiving a simple URL ping is one thing, but we can also include a number of variables available on the device that triggered the event. For example, you could prepare the callback and want to include the placeholder “{idfa}”. You would want to define a name and define it as the placeholder, which would then be filled with an IDFA value:{idfa}

If you set this to a callback on an event, our servers will request this URL when the event is triggered. When your servers accept this request, you will receive a variable named “device_id” set to the IDFA of the device.

In our callbacks guide, you can find a full list of placeholders and their availability, as well as additional advice for your callbacks.

4.5Advanced callback usage

Callbacks are very flexible tools for transmitting data, using it in your business logic, or even powering extended marketing behaviors on the basis of real-time attribution data. Our callbacks guide covers more advanced topics such as:

  • transmitting custom parameters from in-app events;
  • additional parameters to request data available from Adjust;
  • and best practices on using it in your own systems.

For these topics and more, please refer to our callbacks guide.

4.6Raw Data Exports

Adjust gives you the option to access your raw data through automatic uploads to an Amazon S3 bucket. Once activated, Adjust will periodically upload the customized CSV to your pre-defined S3 bucket, from which you can access your data as you need.

Note: Ensure that the s3:ListBucket, s3:GetBucketLocation, and s3:PutObject permissions are all enabled within your Amazon S3 bucket setup. For more information, see here.

Here is an example policy:

    "Version": "2012-10-17",
    "Statement": [
            "Effect": "Allow",
            "Action": [
            "Resource": [
            "Effect": "Allow",
            "Action": [
            "Resource": [

Replace YOUR-BUCKET-NAME-HERE with your bucket name.

Activating automatic uploads

All the steps to have your data automatically uploaded to your S3 bucket can be found in one location:

  1. Click on the settings tab of the app for which you wish to activate automatic uploads.
  2. Select Raw Data Export.
  3. Enter your Amazon S3 bucket Credentials in their respective fields.
    • The name of the bucket used for Transfer Acceleration must be DNS-compliant and must not contain periods (“.”).
  4. Select which events you wish to be included in the data uploads.
  5. Finally, define your CSV structure in the bottom box. Examples of acceptable CSV definitions can be found below.

Once you have completed these steps Adjust will immediately start recording and uploading your raw data to your S3 bucket.

CSV File naming convention

The format of the name of the file that Adjust will upload your data to follows the following pattern.

  • apptoken = your app token
  • timestamp = the start of the hour, as one file will be created every hour.
  • hash = is a unique hash created from the CSV definition, thus when you change your csv definition a new hash and thus new file will be created.

An actual example could be

Defining your data CSV column formats

You define your CSV format essentially by defining the first row of the CSV. You would take your desired header elements and separate each by a comma (with no spaces in between). You must define a minimum of 1 column. Your CSV upload format can be set up with 3 types of values as the columns:

  • Placeholder:
    Defined in the CSV structure as {placeholder} and selected from the list of available placeholders. Adjust will replace the value of that placeholder when available, if the activity being recorded is outside the scope of the placeholder, or if it is unavailable, the cell will be left blank.

  • Callback parameter:
    Defined in the CSV structure as [callback_parameter], this is the name of the callback parameter as defined within the Adjust SDK. Adjust will replace the value of that callback parameter as received from the sdk and if unavailable, again, the cell will be left blank.

  • Constant (optional):
    Defined in the CSV structure as "constant" this can be any desired constant. This value will be inserted simply as is into all rows of the CSV.

Example CSV column formats

Lets say you want a simple 3 column CSV, where each row includes the constant "My awesome app users", the placeholder {idfa} and the callback parameter [user_id]. In this case your CSV structure would be defined as follows:
- "My awesome app users",{idfa},[user_id]

You can define as many placeholders, callback parameters and constants as you wish. The following would be a more elaborate, as well as legitimate, CSV structure:
- "const1",{gps_adid},"const2",{idfa},[user_id],[callbackParam2],[anotherCallbackParam],{tracker_name}

- Placeholders, parameter names and constants containing the following special characters will break the above mentioned formatting and thus must not be used: , " [ ] { }.

4.7Cohort analysis

Cohort Analysis is a sophisticated tool for drilling down in more detail into your user segments. This segments your users by a common date, allowing you to isolate the trends and life cycles that your users are experiencing in your app.

First, your users are segmented by the day on which they installed, creating an install-date cohort. All of the users who installed your app on a particular day are grouped together in one segment. Their performance and actions in the app are then calculated by how many days after install they were tracked.

All of your users are then aggregated into install-date segments, and their daily retention and actions at a certain time after install are easily comparable.

In a second-degree cohort analysis, the base metrics are aggregated, but this time on the basis of your trackers. You will then be viewing the average KPIs for a certain day after install, providing you the same comparability and depth of detail for your acquisition sources.

All of your cohorted data is available in the Cohort Analysis screen in your dashboard or in your cohort reports.

5Go further

This guide serves to assist you in your initial usage of Adjust, but there are many features and functions that will be covered more extensively in other guides.


Retargeting and re-engagement campaigns are campaigns that partly or fully address users that have already installed and engaged with your app. These can be very powerful tools, allowing you to leverage your data to acquire users more cost-effectively and at higher quality than other approaches.

Adjust can effectively track and provide insights on retargeting campaigns, like any of your other sources. Please refer to our Retargeting Guide to find out more.

5.2Tracker generation

Trackers, being a central tool to working with Adjust, have a wide range of additional functions that you can activate with URL parameters. These include:

  • selectively posting back data to your partners;
  • capturing publisher or campaign IDs, creative types - or any other segment data;
  • improving conversion with device IDs;
  • or deep links, fallbacks, and redirects.

To find out more about how to extend your usage of trackers, please check out our tracker generation reference.

5.3Deep linking

Deep linking allows you to send users straight into your app, rather than through the App Store. You can add a deep link to your Adjust trackers and we’ll automatically send the right users to the right place, deferring the deep links as we go and track every interaction that results from deep linking.

You can read the rest in our deep linking guide.

5.4Events usage

With Adjust’s flexible and free in-app event tracking, you can analyze the lifetime of your users in high definition and understand exactly how to leverage your time and your money to accomplish your goals. In-app events do not end with simply tracking a simple label.

In our guide to event tracking, we describe further topics and features, illustrating among other things:

  • best practices on tracking complicated conversions;
  • currency conversion using the iTunes price matrix;
  • as well as in-app purchase deduplication.

5.5Network integration

Network integration should be the responsibility of your traffic partners. We have built a system that allows your traffic partners to easily and flexibly hook into the data that they need - and you, as the client, do not need to set up a thing.

If you would like to know how this system works, feel free to check out our Network Integration guide. Additionally, our list of integrated partners shows you all the partners that have previously worked with this system and who know exactly what to do.

5.6Facebook Mobile Measurement

As a Facebook MMP, we allow you to analyze all of your Facebook campaigns seamlessly with the Adjust SDK and your Adjust dashboard. For more detail on how to work with Facebook, check out our guide to Facebook Mobile Measurement.

5.7Apple Search Ads

With Adjust you can track apple search ads. This will track the keyword that is searched for in iTunes by the user before downloading your app.

This is done automatically for all clients and you can view it in your deliverables page. The network level tracker name will be Apple Search Ads and the keyword will be displayed as the creative level tracker name. The total tracker structure will look like the following:

Apple Search Ads::iad-campaign-name (iad-campaign-id)::iad-adgroup-name (iad-adgroup-id)::iad-keyword

If you see Apple Search Ad installs in your dashboard with no keyword, it is because these installs were attributed to Apple’s old attribution solution, iAd, and shifted to the Apple Search Ads tracker to avoid discrepancies between Adjust and Apple.

Apple Search Ads requires iOS SDK version 4.4.5 or higher.


The in-app advertising and analytics industry does not currently have agreed upon KPI definitions. Listed below alphabetically is our glossary of commonly used terms and our definitions.

6.1General terms

  • App Download Tracking
    This is when app installs and usage behavior are attributed to particular user sources, and the performance of the users sources compared over time. The term conversion tracking is also commonly used.

  • Attribution
    Adjust includes all non-organic installs and any reattributions in your attribution count. Impressions, clicks, organic installs and in-app events are not included in the number of attributions.

  • Click
    When we speak of clicks, we exclusively refer to clicks on an Adjust tracking link.

  • Digital Fingerprinting
    Digital fingerprinting identifies the mobile device after an advertisement has been clicked on. This means a set of non-personal data is gathered. If the user installs and opens the app with the Adjust SDK integrated, the same process happens. Our server then matches the device to the advertising source. Adjust uses ePrivacy-compliant technology.

  • Installs
    We define an install as when a user opens the app for the first time.

  • Revenue
    This is any kind of income that a user generates through in-app purchases or otherwise through the app.

  • Software Development Kit (SDK)
    An app SDK is like a mini program that is put into an app. Adjust uses an open source SDK for tracking and analytics. This means that what is in the SDK can be viewed easily by developers and checked – and can be set up as they like. This prevents issues that are often associated with closed source SDKs, like unexpected crashing.

  • Sessions
    A session is every time that a user opens the application. There must be a 30 minute break between use, otherwise it is counted as the same session. For example, if a user opens an app every five minutes over a hour long period, this is counted as one session as there was not a sufficient break between any of the uses.

  • Tracker
    A tracker is a URL, which is attached to a user source. Typically this source is an advertisement, but it can be anything from an e-mail newsletter, another app or even a QR code.

  • Uniform Resource Location (URL)
    A link - the URL is the address of where a resource is located on the web.

6.2KPI definitions

In order to provide you with more meaningful KPIs we do not simply give point in time data, but rather cohort analyzed groupings by set post install time frames. Our dashboard displays the averages for user KPIs either 7 or 30 days after installation or for the whole lifetime of a user.

For a full list of our KPIs and their definitions, check out our handy KPI Service Glossary.