Custom Audience Private Beta

Send your event data from RudderStack to any HTTPS endpoint via Custom Audience.

announcement

The Audiences feature is in Private Beta, where we work with early users and customers to test new features and get feedback before making them generally available.

Reach out to Customer Success if you are interested in enabling this feature for your workspace.

RudderStack’s Custom Audience destination lets you sync warehouse data to any HTTPS endpoint — internal APIs, regional ad platforms, partner systems, or niche marketing tools — without waiting for a native RudderStack integration.

Overview

With the Custom Audience destination, you can define how membership changes are delivered to your API by configuring the HTTP method, endpoint path, batch size, and a JSON request body template for each record action. During connection setup, you map warehouse columns to the fields your destination expects.

Some key features of this integration are:

  • Per-action endpoints: Separate configuration for add, update, and remove operations
  • Request body templates: Build the exact JSON payload your API expects, with access to batched records and connection metadata
  • Configurable batching: Send up to 5,000 records per request (per action)
  • Field-level hashing: Apply SHA256, SHA512, or MD5 per field when your API expects hashed identifiers
  • Preview before save: Validate templates and inspect sample requests without delivering data to your API
  • Mirror sync only: Membership changes are mirrored to the destination

How it works

Custom Audience follows the same pipeline as native audience destinations (Facebook, Google Ads, LinkedIn, TikTok):

  1. Membership is computed from your warehouse source.
  2. Mirror sync compares the current membership to the previous snapshot and emits record events with an INSERT, UPDATE, or DELETE action.
  3. RudderStack resolves your per-action endpoint and template, applies field hashing (when configured), batches records, and builds HTTP requests.
  4. RudderStack sends those requests to your API — success or failure is determined by the HTTP status code.
Custom Audience pipeline: audience membership flows through mirror diff, record events, template batching, and HTTP delivery

Use cases

Scenario
Description
Internal activationSync a high-value segment to a recommendation or personalization API
Unsupported ad platformsReach regional or industry-specific platforms that accept audience lists over HTTP
Partner data sharingSend qualified leads to a partner CRM

Limitations

Limitation
Details
Event Stream sourcesOnly warehouse-backed sources are supported.
OAuth authenticationNot supported currently and may be added in a future release. Use API key, Bearer token, Basic Auth, or no auth.
Non-JSON payloadsRequest bodies are JSON only (no XML or form-encoded bodies).
Audience creation at the destinationCreate and manage audience lists on your platform first, then provide the audience ID and name when configuring the connection.
Automatic data normalizationThe transformer does not trim, lowercase, or otherwise normalize values.
Partial batch successAn HTTP success status marks all records in the request as successful; a failure status marks all as failed. Response bodies are not parsed for per-record outcomes.
Combined-action APIsEach action type sends separate HTTP requests. APIs that accept inserts, updates, and deletes in a single payload are not supported.
Multiple object types per destinationCreate a separate destination instance for each object type (for example, user vs. company).
Changes in field definitionsIf you change field definitions in the destination configuration after a sync is created, you must update existing syncs manually. Connection mappings are not updated automatically when destination fields are renamed or removed.

You can use the Custom Audience destination in two ways:

Questions? We're here to help.

Join the RudderStack Slack community or email us for support