Sync Audiences to TikTok Audiences Private Beta

Sync audiences created in RudderStack to your TikTok Audiences destination.

Setup

  1. Set up an audience in RudderStack using the Audience Builder.
  2. Go to the Syncs tab of the audience page and click Add sync. Then, select TikTok Audiences.
  3. Click New destination — you can also select an already-configured destination here.
  4. Specify a unique name to identify this destination in RudderStack.
  5. In the Event delivery account section, click Select to choose from an existing TikTok account from the list. You can also click Add account and authenticate via OAuth, by specifying the following settings:
Setting
Description
Account NameSpecify a unique account name
oAuth settingsClick Connect account, sign in with TikTok, and give RudderStack the required permissions to access your TikTok Ads account.
  1. The Advertiser ID field is pre-populated based on the selected TikTok account — select the ID from the dropdown.
  2. Proceed to configure the mapping settings.

Configure sync

This section lists the settings to correctly configure your audience syncs to the TikTok Audiences destination.

Select audience

In this section, you can create a new audience or use an existing one.

  • Create new audience: Use this option to create a new custom audience in TikTok. You can specify the name and description of the new TikTok audience.
  • Use existing audience: Select an existing audience in TikTok. This field is populated based on your connection settings.

Sync mode

RudderStack supports only Mirror mode for this integration.

Map identifiers

In this section, you can map your warehouse columns to specific TikTok fields that represent your audience’s identity.

Advanced settings

Setting
Description
Automatically hash PII dataWhen set to Yes, User data is automatically hash-encoded in SHA-256 format before sending to TikTok.

Do not use this setting if you are sending already-hashed data from your warehouse to TikTok. Otherwise, it can lead to failures. See Data hashing section for more information.

Sync settings

Two options are available to schedule your audience syncs:

  • Run syncs automatically based on a specified frequency (every 5 minutes, 10 minutes, 15 minutes, 30 minutes, 1 hour, 3 hours, 6 hours, 12 hours, or 24 hours) and a specific time (in UTC).
  • Run syncs manually — trigger a sync from the sync details page. You will need to run the sync each time.

Sync observability settings

SettingDescription
Retain sync logsThis setting is toggled on by default and instructs RudderStack to store the sync logs in your warehouse. You can also configure the below settings:

SettingDescription
Sync log retentionSpecify the retention period of the sync logs in your warehouse.

If you set it to 1, then RudderStack deletes any sync log older than a day (in UTC time).
Snapshot table retentionSpecify the number of snapshot tables to retain.
Retry failed recordsThis setting is toggled on by default and causes RudderStack to continually retry sending the failed records.
warning
Storing sync logs and snapshot tables may incur additional warehouse costs.

Enable sync

Once the setup is complete, enable the sync.

Supported mappings

You can map your warehouse columns to the following TikTok fields:

Field
Description
IDFA_MD5MD5 hash of an iOS IDFA
AAID_MD5MD5 hash of an Android AAID/GAID
IDFA_SHA256SHA256 hash of an iOS IDFA
AAID_SHA256SHA256 hash of an Android AAID/GAID
EMAIL_SHA256SHA256 hash of email ID — see Important Notes for Streaming API- Email Specific Normalization section for more information
PHONE_SHA256SHA256 hash of a phone number in E.164 format, for example, +1231234567

After normalization, each field is validated before sending to TikTok.

  • Invalid fields are not sent to TikTok.
  • If all fields in a row are invalid, the entire row is skipped and the event is marked as failed.

Data hashing

The Automatically hash PII data setting lets you hash your user data before sending it to TikTok. This setting is enabled by default.

  • Configure the setting to Yes if your incoming data is not pre-hashed
  • Configure this setting to No if your data is already hashed
warning

TikTok expects hashed data. Incorrect configuration of the Automatically hash PII data setting will result in failures:

  • If the Automatically hash PII data setting is configured to Yes and your data is already hashed, the event will fail.
  • If the Automatically hash PII data setting is configured to No and your data is not pre-hashed, the event will fail.

Such events are rejected with a clear error message, for example:

Automatically hash PII data is disabled but the value for field EMAIL appears to be unhashed. Either enable hashing or send pre-hashed data.

You will also see errors in the Events tab for cases that were previously marked as successful but resulted in no matches, helping you identify and fix data quality or configuration issues.

FAQ

Why can’t I add a Reverse ETL source from the destination page?

The Reverse ETL feature supports only source-driven pipeline configuration. It means that you must configure a Reverse ETL source in RudderStack and then connect it to a new or existing destination. Note that this destination should not be connected to any other source.

See Reverse ETL FAQ for more information.

How do I view the synced segments in TikTok?

To view the synced audience, go to your TikTok Ads Manager and go to Tools > Audience manager.

To see the sync status, check the Availability column.


Questions? We're here to help.

Join the RudderStack Slack community or email us for support