Revenue event measurement

You need to set up in-app purchases and transactions in Adjust as revenue events.

Here, you can find out how to set up revenue measurement and manage revenue events.

Create revenue event tokens

Whether your revenue events are measured within the Adjust SDK or transmitted server side, revenue event measurement begins with generating a revenue event token in AppView.

To create a revenue event token, you need to add an event for your app in AppView. Creating an event automatically generates an event token. Repeat this process for all in-app purchases and transactions.

Measure revenue events

Adjust SDK

To measure revenue events with the Adjust SDK, follow the guides linked below.

📖 iOS / Android / Windows / Adobe AIR / Unity / Cordova / Marmalade / Xamarin / Cocos2d-x / React Native / Titanium / Corona / Flutter / Unreal Engine

You can also measure purchases in different currencies with the Adjust SDK.  

Server-to-server (S2S)

To measure revenue events server-to-server, always include Adjust's mandatory S2S parameters and the following revenue parameters to every submission:

Revenue parameterContent
revenueRevenue event value in full currency units (149.99 = $149.99). We accept a minimum value of 0.001 for this parameter.
currencyRevenue event currency code
environmentEnvironment to post the data to (environment=sandbox or environment=production). If this parameter is not included, the event will be pushed to the production environment.

Successfully measured events will return a response reading OK. If you receive an error, it is usually because the device was not known to us, or not known by the device IDs that you transmitted.

Manage revenue events

Flag unique revenue events

While creating an event in AppView, you can flag unique revenue events that can only be measured once per device. Unique events can be effective in instances where the local SDK may not fully recognize an in-app action. For example, depending on the method in use, an app could be unable to differentiate between a First Purchase and a Purchase event, since both result in a transaction. Therefore, when set to unique, the First Purchase event becomes distinguishable from all subsequent Purchase events.

Unique events should be used in moderation, as dropping events measured by the SDK can result in discrepancies. Therefore, it is always recommended to measure one-time events as in-app events with contextual conditions when possible.

Hide revenue events

Once you hide a revenue event, Adjust will no longer display that event's data in Datascape.

Hiding a revenue event is not a permanent action and does not delete the event from Adjust's system. (See here if you are interested in disabling measurement for specific revenue events). All hidden revenue events will continue to be measured on the backend and can still be exported via the Adjust KPI Service. If a hidden revenue event is restored, Adjust will display all historically measured revenue event data, including any revenue generated during the hidden period. A hidden revenue event never expires and can be unhidden at any time.

Adjust automatically hides revenue events that are more than 3 months old and have no history. This means that if you create an event that is not measured in the 3 months following its creation, it will automatically be hidden. In the instance that one of these hidden revenue events is triggered, Adjust will automatically restore the revenue event and display it in Datascape.

To restore a hidden event, follow the steps here.

Disable revenue events

If you want to stop measurement for a particular revenue event, then you must disable it outside of AppView. The process for disabling revenue-event measurement depends on the implementation in use and can be accomplished as follows:

For revenue events measured within the Adjust SDK

If revenue event measurement occurs client side, then you must delete the revenue event token(s) from the Adjust SDK and resubmit your app to the store.

For revenue events measured server-to-server

If revenue event measurement occurs server side, then you must cease submission of the affiliated POST request to the Adjust endpoint: Since all Adjust revenue measurement occurs outside of your app, you do not need to make any changes to the Adjust SDK.

Deduplicate revenue events

If you want to protect your dataset and ensure that Adjust is accurately reporting transactions within your app, then you may want to consider using revenue deduplication. Revenue deduplication prevents Adjust from measuring the same purchase event twice and thereby delivers revenue reporting that you can trust. Instructions for all revenue event measurement are listed below for reference.

For users measuring revenue events server-side

  • If you are measuring revenue events via our server-to-server integration, then we advise that you validate all transactions internally, before submitting them to Adjust.

For users measuring revenue events within the Adjust SDK

  • If you are measuring revenue events within the Adjust SDK, then you configure revenue deduplication within the Adjust SDK, as well. When you activate revenue deduplication, it allows your app to pass a unique transaction ID with every revenue event that Adjust measures. The Adjust SDK will then temporarily store the last 10 transaction IDs and reject any purchases made with a repeated transaction ID. Developer instructions for all platforms are listed below.

📖 Instructions