Ad spend API

Integrate with Adjust's ad spend API and your clients will receive fully automated ad spend data that is more accurate, transparent, and granular than ever before. Ad spend data can be sent asynchronously within a 7-day window following a click, impression, or install. Find out the requirements and process for integrating with our Adjust ad spend API.

Ad spend API requirements

To integrate with the Adjust ad spend API, you will need to set up your servers to send a set of mandatory parameters to Adjust through an HTTP POST request to our designated endpoint.

You can send ad spend data to Adjust at any time within a 7-day window following an engagement.

Endpoint URL



cost_typecpiPrice model—this must be either CPC, CPE,CPI, or CPMYes
cost_currencyusdISO 4217 currency code. See our full list of supported currencies.Yes
cost_amount1.99Float value for the cost
Maximum: 5 decimal places
cost_id3P4OXS8dMAQbqn4YA unique value for matching cost information to an engagement
Minimum: 12 characters
Maximum: 256 characters
tagmy_networkA label used for logging and debugging
Maximum: 128 characters

Example request

curl -d "cost_type=cpi&cost_currency=usd&cost_amount=2&cost_id=abc123_company_name_test_1&tag=company_name_test" -X POST https://app.adjust.com/cost

If your request was successful, you will receive an OK response. If there is a formatting issue, you will receive a Bad Request response. If you are unsure of how to correctly format your request, please contact our integrations team: wizards@adjust.com.

What is cost_id?

cost_id allows you to send us a unique value between 12 and 256 characters in length. We use the cost_id parameter to accurately match the cost data we receive with a click or impression.

Best practices:

  • You can use your pre-existing click_id or impression_id
    • Note: Your cost_id value must be sent using the cost_id parameter (even if you have included this value with another parameter)
  • To avoid matching a value from one of our other network partners, the cost_id value must be as unique as possible. We recommend you use a universally unique identifier (UUID) or prefix the ID with your company name (e.g., network_name_848dsf4939fgwjn028erg4).
  • If you do not generate your own click or impression IDs, then you can combine two or more placeholders to form an ID. E.g., for CPI, you could combine the user’s IDFA and the app ID.

Tracking CPM with Adjust

To transmit CPM data to Adjust, send cost_id through the impression tracker URL and refer to it in the ad spend API call. Ensure that you send the CPM with each impression (i.e., the impression cost x1000).

Finalizing your integration with the Adjust ad spend API

Once you have configured your servers to send the required parameters (and any optional parameters), notify Adjust by reaching out to wizards@adjust.com. We can then being the testing phase of the integration.

We will provide you with a series of tests, so that you can check for discrepancies on the different cost types and spot any problems before the integration goes live. We will also conduct tests on our backend to ensure the API integration is functioning as expected.

Once all of these tests have achieved satisfactory results, we will follow up with you and your clients, and introduce you into our list of integrated ad spend partners, making you an official Adjust ad spend API partner.