May 28, 2018

Passing cost on engagement: A quick how-to

Our Ad Spend Initiative, which we launched in October of 2017 is made up of several different features. The Ad Spend API is the cornerstone of our initiative. The API provides a discrete, asynchronous, server-to-server connection and a 0% discrepancy rate. However, the API is not the only way to send ad spend data.

It’s also now possible to send cost data on engagement. Using your Adjust click and/or impression URLs to pass cost data is a secure solution. There are now over 30 network partners we have audited you can work together with, and more are passing our audit every day.

Here’s an example of what a tracker URL would look like when using the ad spend on engagement setup:<your cost_type_macro>&cost_currency=<your cost_currency_macro>&cost_amount=<your cost_amount_macro>

In this example, ‘cost_type’, ‘cost_currency’ and ‘cost_amount’ are our fixed parameter names (the Ad Spend API allows you to simply append the cost_id parameter as we will receive all ad spend data on the API call you make to the Adjust endpoint).

Here’s how to get set up:

You build your custom tracker URLs using Campaign Wizard. If you are already running with a network that supports passing cost on engagement, go into your trackers setup and click ‘manage network trackers’. You’ll see your list of current partners; choose the partner you’d like to receive ad spend from. Click the gear-shaped button for your settings, and you’ll be able to see the click and impression URL in their possession. See the video below for a step-by-step view of what that looks like in the Adjust Dashboard.

YouTube requires that you accept marketing cookies in order to watch this video.

In order for Adjust to connect your users and their engagements to the ad spend, we will take your cost data from your clicks and impressions and calculate the corresponding eCPI/CPC/CPM and total cost afterwards for the cost on engagement setup.

YouTube requires that you accept marketing cookies in order to watch this video.

For the API setup we receive the cost_id via the engagement, then match the engagement to the ad spend data we receive via the API. Here as well we calculate the corresponding eCPI/CPC/CPM and total cost afterwards (asynchronously).

YouTube requires that you accept marketing cookies in order to watch this video.

If your billing system is based on CPM (cost per thousand impressions), there are two ways to transfer cost to us. You send a ‘cost_id’ to the impression tracking interface and refer to it in the cost API call. We will allow fractional revenue down to ‘0.00001 USD’ (reach out if you need smaller fractions). The other option is to calculate eCPIs on your server and send us a delayed CPI call. Given that eCPIs can fluctuate retroactively, we suggest waiting a few days before sending the request in order to increase precision. We would prefer the second option, in order to reduce the otherwise vast amount of API calls between servers.

In your macros, cost_type values must be either CPM, CPC, or CPI. Cost_currency values must be your ISO currency code. Cost_amount values must be the float value for the coast. An optional tag is the my_network macro; this is a label for logging and debugging and can be a maximum of 128 characters – optimally it is your network’s name.

Which partners can I work with?

Adjust is integrated with over 70 partners for ad spend, with more passing our audit every day. All approved partners are listed on our technology partner site. To see our partners who have been approved to pass ad spend, apply the Ad Spend Filter.

If you would like to work with a partner who is not listed there, tell us about them at

If you are a partner who would like to get set up to pass ad spend data, let our team know about it at