Sync Audiences to TikTok Audiences Private Beta
5 minute read
Setup
- Set up an audience in RudderStack using the Audience Builder.
- Go to the Syncs tab of the audience page and click Add sync. Then, select TikTok Audiences.
- Click New destination — you can also select an already-configured destination here.
- Specify a unique name to identify this destination in RudderStack.
- 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 Name | Specify a unique account name |
| oAuth settings | Click Connect account, sign in with TikTok, and give RudderStack the required permissions to access your TikTok Ads account. |
- The Advertiser ID field is pre-populated based on the selected TikTok account — select the ID from the dropdown.
- 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 data | When 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
| Setting | Description | ||||||
|---|---|---|---|---|---|---|---|
| Retain sync logs | This setting is toggled on by default and instructs RudderStack to store the sync logs in your warehouse. You can also configure the below settings:
| ||||||
| Retry failed records | This setting is toggled on by default and causes RudderStack to continually retry sending the failed records. |
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_MD5 | MD5 hash of an iOS IDFA |
| AAID_MD5 | MD5 hash of an Android AAID/GAID |
| IDFA_SHA256 | SHA256 hash of an iOS IDFA |
| AAID_SHA256 | SHA256 hash of an Android AAID/GAID |
| EMAIL_SHA256 | SHA256 hash of email ID — see Important Notes for Streaming API- Email Specific Normalization section for more information |
| PHONE_SHA256 | SHA256 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
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.
