Ocean Engine (Bytedance) campaign configuration

At a glance: Ocean Engine, Bytedance Ads - China Traffic, an AppsFlyer integrated partner, is an Internet technology company operating several machine learning-enabled content platforms.


If you want to promote your Android Apps with Bytedance Ads - China Traffic, you are required to send your IMEI to AppsFlyer SDK according to the instructions in the AppsFlyer SDK Integration - Android. Google Play service is blocked in China, IMEI is the most popular Android Device ID for ad attribution.

In addition to click-based mobile attribution, Bytedance Ads - China Traffic also offers view-through attribution, which you can record with AppsFlyer.

To configure your campaigns with Bytedance Ads - China Traffic, follow the steps below.

Setting up Bytedance Ads - China traffic

Go to the dashboard of your app and click on Integrated Partners on the left bar.


Enter Bytedance in the search field and click on the logo next to Bytedance Ads - China Traffic to open Bytedance's configuration window. 


  • The General Settings step in the Integration tab is mandatory for all partners.

  • All the rest of the steps are either descriptive or optional.

Integration tab

The Integration Tab is divided into different sections as described below.

Activate partners

On the first visit here, you must toggle ON the Activate Partner button to enable the setup of the integration tab's parameters. The toggle MUST be ON for as long as you work with the partner.
For more details about partner activation, click here.

General Settings

Enable View-Through attribution

Toggle this to ON if you want to attribute view-through installs from Bytedance. The view-through lookback slider is available on the attribution link tab (described below).

Default postbacks

AppsFlyer can send automatic postbacks to Bytedance following user installs and re-engagements. Use this section to define the source of the users that allow sending these postbacks.


In-app events settings

In this section, you can map your AppsFlyer events with Bytedance via postbacks.

  1. Turn In-App Event Postbacks on.
  2. Select the Sending Option for all SDK-defined events.
    - Only events attributed to this partner for events coming only from users attributed to this partner
    - Events attributed to any partner or organic to have your entire user base available to be reported to the partner.

  3. Click Add Event to add an SDK Event to the list.

  4. Complete the following parameters:
Parameter Name Description
SDK Event Name The name of the event, as received by AppsFlyer either from the SDK integrated in your app or from server-to-server events.
Bytedance accepts only 3 types of events:
  • registration
  • purchase
  • first day retention: a user opens the app the day after the install date (this event can happen only once)
Tip - If you don't see the event you want in the list, make sure to activate the event on a device with a non-organic installation and recheck.
Partner Event Identifier

The unique name or ID of each event as defined on Bytedance's side. Use the values as described in Bytedance documentation.

If you are not sure which event type you should use, get in touch with your assigned point of contact at Bytedance.

Sending option

Select the sending option for the event:

  • Only events attributed to this partner for events coming only from users attributed to this partner.
  • Events attributed to any partner or organic to have your entire user base available to be reported to the partner.
Send revenue
  • No values & no revenue: sends only the event itself without the event value.
  • Values & no revenue: sends all the parameters excluding the revenue value.
  • Values & revenue: sends all the event parameters, including the revenue value (if exists in the event).

Attribution link tab

Generate and save attribution links and send them to the partner for attributing specific campaigns, ad sets, or single ads - both for UA and retargeting campaigns. You can use either a single-platform link or a OneLink.
Learn more about attribution link structure and parameters.

To generate an attribution link, follow these instructions.

Click attribution link

Once you have generated the attribution link, complete the campaign setup process on Bytedance's site.

1. Create Conversion Tracking in Ocean Engine.

Log in to Ocean Engine (https://ad.oceanengine.com/) > Library > Conversion Tracking.


Click on Tracking application and create a New Application Transformation.


Click the API method. 


In the Monitoring link part, enter AppsFlyer click attribution link and/or impression attribution link. 



2. Finish the Attribution Test Following the Instructions on the Website.

3. Create an Ad Campaign with the Newly Created Conversion.

Go to New Ad >> Set Budget and Bid select the conversion you created for this app.

Cost tab

AppsFlyer gets cost details by API.

Geo Media source Campaign Adset Ad Other
Yes - Yes Yes  Yes -
API dimensions supported

To enable Bytedance cost API

  1. In the integrated partner Cost tab, enable Get Cost Data.
  2. Log in to Bytedance. 
  3. Click Save Cost.
    • You have successfully completed the procedure. API is active. AppsFlyer collects data from the partner 6 times a day, on average once every four hours.
    • The cost tab shows the status of your cost integration and the last time AppsFlyer managed to pull matching cost data.

Ad revenue tab

This section is relevant if you are acting as a publisher, displaying ads of the partner to your users. As such, you would certainly like to measure the engagement of your users acquired from different sources, to find the most profitable sources for you.

To enable the ad revenue API:

Permissions tab

In this tab, you can select the permissions to grant Bytedance, whether the partner acts as an ad network, agency, or both. Note that even if attribution is disabled for Bytedance, the permissions tab is active and you can grant control to Bytedance.

Use these toggles to give the ad network permissions to handle its own configuration for your app:

Ad network permissions

  • Allow to configure integration - permit the partner to set up the integration tab (except in-app event postbacks)
  • Allow to configure in-app event postbacks - permit the partner to setup in-app event postbacks mapping to itself on the integration tab
  • Allow access to your retention report - only to the partner's own retention data
  • Allow access to your aggregate loyal user data - only to the partner's own loyal user data
  • Allow access to your aggregate in-app events data - only to the partner's own in-app events data
  • Allow access to your aggregate revenue data - only to the revenue data attributed to the partner
  • Allow access to your Protect360 dashboard - only to the partner's own Protect360 data, and providing the feature is enabled for the advertiser

Learn more about granting ad network permissions.