How to Sync Audiences to Custom Audience

Sync audiences created in RudderStack to your Custom Audience destination.

This guide walks you through the process of syncing a saved audience to your Custom Audience destination.

To set up the Custom Audience destination in RudderStack, see Custom Audience Setup Guide.

Prerequisites

On your audience platform

  • A target audience list created on your platform — note its Audience ID

In RudderStack

Add sync

  1. Open the audience’s Syncs tab and click Add sync.
  2. Select Custom Audience, then select the required Custom Audience destination.
  3. Configure the following settings to specify the target audience and map your warehouse data:

Specify target audience

warning
Create the audience on your platform before entering these values. RudderStack does not create audiences at the destination for this integration.
Setting
Description
Audience nameSpecify the name of the audience to sync data to
Audience IDSpecify the ID of the list on your platform

Sync mode

RudderStack supports only Mirror mode for this integration.

On the first run, the full membership is sent to the platform. Later runs send only inserts, updates, and deletes.

Map identifiers

Map warehouse columns to each template field defined in the Custom Audience destination.

You can map two types of fields:

  • Warehouse fields: Dropdown of warehouse columns
  • Static fields: Specify literal values for fields configured as Static in the destination settings
Map static fields

Required destination fields appear with an asterisk (*) during mapping.

Advanced settings

SettingDescription
Automatically hash PII dataWhen set to Yes, RudderStack applies each field’s configured hash algorithm to unhashed warehouse data.

When set to No, data is treated as already hashed and hashing is skipped — even if a field has a hash type configured.

See Data hashing 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.

Data hashing

The Automatically hash PII data setting lets you hash your user data before sending it to your API.

  • 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

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 pre-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:

Hashing 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.

Troubleshooting

Issue
Resolution
400 errors for all recordsRequired fields are unmapped or the warehouse values are empty
Wrong audience on API sideVerify the Audience ID and $$.connection.audienceId while configuring the template
Double-hashed identifiersAutomatically hash PII data setting is set to Yes while your incoming warehouse data is pre-hashed — set this setting to No
Sync fails after destination editUpdate sync mappings if destination field names or required flags have changed.

See Template fields for more information

Questions? We're here to help.

Join the RudderStack Slack community or email us for support