At a glance: Build high-value audiences in DCP collaborations using shared data and activate them on media partner sites or cloud services for maximum campaign impact.
About DCP audiences
Build audiences in a DCP collaboration by combining datasets to create enriched audience segments and reach specific consumer groups. Audiences can be based on one collaborator's data or on intersecting users across both collaborators' datasets, based on the permissions defined by the data source owner. After an audience is built, it can be sent to media partners for activation or to a cloud service.
Build an audience
The following tools are available for building your audiences:
- Visual audience builder - The visual audience builder is a user-friendly tool that allows non-technical users to create audience segments without needing SQL skills. It allows for advanced audience segmentation using a graphical interface.
- SQL audience builder (requires SQL expertise) - An SQL query that allows querying the data without restrictions. Requires SQL expertise.
Key features
| Visual audience builder | SQL audience builder |
|---|---|
| Supports using either one source from each collaborating party or multiple sources from one collaborator | Supports multiple sources from both parties |
| For one source for each collaborator, supports using overlapping data only | Supports querying all the data |
| Supports retrieving values within the selected attribute range. | Supports querying values beyond the attribute range |
Learn how to prepare source data to maximize match rates between collaborator datasets.
Visual audience builder
Follow the steps below to build your audiences using the Visual Audience Builder:
Note
Make sure you have the Build audiences permission to create an audience.
-
In AppsFlyer, from the side menu, select Collaborate > Data Clean Room.
-
From the Collaborations tab, click the relevant collaboration.
-
In the collaboration, click New audience > Visual audience builder.
Note: At least one source must be associated before you can build an audience.
- Proceed with the Audience builder walkthrough steps below:
Step 1: Details and sources
The audience can be created using data from a single collaborator or by merging one source from each collaborator to enable a combined data source.
- Audience name: Name the audience collaboration.
-
Select sources: Select a source from the dropdown list:
- For a one-sided collaboration: select either your own source or your collaborator's source.
-
For a two-sided collaboration: select one of your own sources and one of your collaborator's sources.
Note
- When both sources share intersecting users, the right pane shows a summary of the source intersection, providing an estimated count of users common to both sources.
- Transactional data sources will not be available in the source dropdown. See "Working with transactional data sources" below.
-
Data combination method: Select which data you want to build the audience from:
- Intersecting users - Includes only users that appear in both sources (yours and your collaborator's).
- Users from my source only - Includes only users unique to your source. Excludes all users appearing in your collaborator's source.
-
Users from the collaborator's source only - Includes only users unique to your collaborator's associated source. Excludes all users appearing in your source.
Note: All three options will only be available if the source permissions have "Build Audiences" > "Can use all data - Universal dataset" enabled. Learn more about source permissions
- Click Next.
Step 2: Define the audience
After the data sources are selected, this step involves choosing which attributes and values to include in your audience.
- Click Select column to see the list of attributes from the sources.
- Select an attribute, operator, and attribute value.
-
Numerical and date attributes can be filtered with the operators:
Equals, Not equals, Greater than, Lower than, Greater than or equals,
Lower than or equals, Between, Last "X" days (can also include the current day) -
Text attributes can be filtered with the operators:
Equals or Non-equalsNote
- If an attribute isn't selected, all the attributes are included by default.
- Once attribute values are selected, the audience size is adjusted.
-
Numerical and date attributes can be filtered with the operators:
- [Optional] Click + Condition to add another attribute, and select its values.
Repeat as needed. - Click Next.
- Continue with the next step Send the audience to activate the audience.
Summary (Right-side preview pane)
The Summary panel updates in real time as you define your audience. It provides an estimated range of unique users that can be activated, based on the identifiers available in the selected data sources and their overlap.
Because audience activation depends on which identifiers media partners use at runtime, the audience size is shown as a range rather than a single number.
Source rows vs. unique users
Source data may contain multiple rows per user.
For example, the same person may appear several times due to:
- Multiple events
- Multiple devices
-
Multiple identifiers (e.g., CUID, email, phone)
Audience size estimates in DCP are always based on unique users, not raw rows.
Identifiers and estimated user range
A single source can include more than one identifier for the same user (for example, both a CUID and a hashed email) because different media partners support different identifiers, and DCP can't predict which identifier will be used during activation.
DCP estimates the audience size as a minimum–maximum range:
- Minimum: assumes the strongest possible overlap between identifiers
- Maximum: assumes identifiers represent different users
The actual activated audience will fall somewhere within this range, depending on partner capabilities and identifier matching.
Understanding the Summary panel:
Total users
Shows the maximum number of unique users available across all selected sources before overlap is applied.
Source contribution
Displays the number of unique users each source contributes and where they overlap with other sources.
Estimated data pool
Represents the estimated number of unique users shared across sources, expressed as:
- A user range
- A percentage of your source contribution
This pool determines the maximum audience that can be jointly activated.
Estimated audience size
The Estimated audience size reflects the expected range of unique users that match your audience definition and can be activated. The range:
- Accounts for identifier duplication
- Accounts for cross-source overlap (if applicable)
- Adjusts dynamically as filters, sources, or rules change
Note
The activated audience on the media partner side may be smaller than the audience you send due to differing match rates by media partners.
Working with transactional data sources
Transactional data sources — such as purchases, orders, or events that contain multiple records per user — can't be used directly in the visual audience builder. This is because using transactional data without aggregation can result in incorrect audience counts, inflated audience sizes, and unexpected segmentation results.
To use transactional data for audience creation, you must first aggregate it into a user-level dataset using the Data View tool. To aggregate:
- Open the Data View tool and create a Data View from the transactional source.
- Apply aggregation functions (such as Count, Sum, or Average) to produce one row per user.
- Associate the aggregated Data View with the collaboration.
- Use the aggregated Data View as your source in the Audience Builder.
SQL audience builder
Follow the steps below to build your audience using the SQL audience builder:
Note
Make sure you have the Build audiences permission to create an audience.
-
In AppsFlyer, from the side menu, select Collaborate > Data Clean Room.
-
From the Collaborations tab, click the relevant collaboration.
-
In the collaboration, click New audience > SQL audience builder.
- Proceed with the Audience builder walkthrough steps:
Set details
Name the audience, and click Next.
Build query
- Click the editor to open the SQL builder.
- Write your SQL query to build your audience. You can use joined or one-sided sources.
- Click Test and review the query results (audience sample) shown beneath the query statement.
- Click Continue and then Next to proceed with the next step of the Audience builder walkthrough, or Save as draft and resume later.
- Continue to Send the audience.
Note
If your query includes a transactional data source, it must include aggregation logic — such as COUNT, SUM, AVG, MIN, or MAX — to reduce the data to one row per user before it can be used for audience creation. Queries that use transactional data without aggregation aren't supported. See supported and unsupported query patterns below.
The SQL audience builder
Use the SQL builder to query the data and create an audience. The following table outlines the sections in the builder:
| Section | Description |
|---|---|
| Left pane |
Presents all available sources for creating your audience. This may include your sources and those shared with you. You'll only be able to view sources to which you have the Build audience permission. Selecting a source expands it to reveal corresponding columns. |
| Top-middle section (query editor) | The query editor for writing your SQL statements. |
| Bottom-middle section (context panel) |
This section dynamically shows details based on the selected object from the left pane:
|
| Right pane |
This section dynamically shows details based on the selected object:
|
Transactional data in SQL queries
When working with transactional data sources in the SQL Builder, the following query patterns apply.
Supported query patterns
| Pattern | Description |
|---|---|
| Single transactional source with aggregation | A query that aggregates a transactional source into one row per user. For example, aggregating purchase records to produce a total purchase count per user. |
| Transactional source joined to a profile/user-level source | Allowed when the transactional side is aggregated before the join. For example, aggregating purchase history by user, then joining the result to a customer profile dataset. |
| Aggregated transactional output in downstream joins | Once aggregated to the user level, the output can be used in further joins and audience-building workflows, and is treated similarly to a profile-level dataset. |
Unsupported query patterns
| Pattern | Description |
|---|---|
| Transactional source joined directly to another transactional source | Direct joins between two transactional datasets, such as purchases joined to orders, aren't supported. These joins are blocked before execution because they can multiply records, produce incorrect audience results, and create transactional expansion. |
| Non-aggregated transactional query | Queries that use transactional records directly, without aggregation, aren't supported. |
Send an audience for activation
After an audience is built, activate it where it can drive results. Select a destination, such as media partners for campaign targeting or a cloud service for downstream use, and DCP refreshes and delivers the audience daily based on the latest source data and permissions.
- Connect an audience to media partners - Media partner platforms include Meta Ads, Google Ads, and many more. Connect your audience to media partners when you want to run paid campaigns, remarketing, or look-alike expansion.
- Export an audience to your cloud services - Cloud storage is managed via AppsFlyer Data Locker. Connect your audience to cloud services when you need the file in BI models, CDPs, or internal enrichment pipelines.
Note
- The audience is sent for activation as a list of user IDs. This list is continually refreshed and sent to the selected destinations daily.
- With every update to the source data, the audience is automatically refreshed and sent to the selected destinations.
Connect an audience to media partners
Send the audience for activation directly in your preferred media partner platforms, such as Meta ads and Google Ads. The system forwards a CSV of user IDs, hashed automatically if the partner requires it.
Note
- When you build an audience using your collaborator's source data, the activation options you see depend on the permissions granted by your collaborator. Only the activation partners they allowed for that source will be available to you during activation.
- If your collaborator didn't grant you permissions to publish or export audiences, you can still submit an activation request. In this case, your activation request is sent to your collaborator for activation on their side.
To connect the audience to media partners:
- Within the audience builder, turn on Connect audiences to media partners.
- Click + Partner connection.
- If no partner connections were established, create a new partner connection:
- Click + Add connections.
- Select the relevant media partner (Meta Ads, Google Ads, Pinterest, TikTok, DV360, or The Trade Desk).
- Enter a name for the connection.
- Click Login with [partner name]. You'll be directed to the partner login page. Choose the account to receive the audience. Then, you'll be directed back to the dialog window.
- Click Select account ID and select the relevant account ID.
- Click Save.
- Click Save & send.
Export an audience to cloud services
Send the audience to your cloud services. The audience is exported to the selected cloud service using your AppsFlyer Data Locker connections. A CSV of user IDs is written to the bucket you select.
Note: Receiving DCR audiences using the AppsFlyer Data Locker doesn't require a premium subscription to Data Locker. However, if you're interested in receiving other AppsFlyer reports via Data Locker, contact your CSM or send an email to hello@appsflyer.com.
To send the audience to your cloud service:
- Within the audience builder, turn on Export audiences to cloud.
- Click Select connection to choose an existing cloud connection from the list for sending the audience, or click + New Connection to create a new connection in Data Locker. See here how it's done.
- Click Save and send. Your audience is being sent to the selected cloud service. This process may take up to 15 minutes to complete.
Manage audiences
View and manage audiences associated with a collaboration.
Access audience management
To view and manage audiences associated with a collaboration:
- In DCP, go to the Collaborations tab and click the relevant collaboration.
- Click the Audiences section.
What you can do from this page:
- Search for an audience: Search by either the source name or the audience name.
- Sort audiences: Sort audiences by clicking on any of the column headings.
- View audience details: See details such as the collaborator's name, statistics on overlapping users, audience status, and activation location.
-
More actions: Clicking the 3-dot menu icon of an audience card opens additional available actions:
- Edit: Modify the audience activation destination.
- View: View the audience that was saved and sent (the SQL query in the SQL audience builder, and filters in the visual builder).
- View audience history: See all instances of the audience activation, with details such as the connection and activation status.
- Pause: Prevents the audience from being updated and re-activated when the data source is modified.
- Delete: Delete the audience.
Edit the audience activation destination
While building an audience, you can save it as a draft and then return to it and edit the activation destination (depending on your permissions).
To edit the audience activation destination:
- From the Collaborations tab, click the relevant collaboration.
- Click the Audiences section and locate the relevant audience.
- Click the 3-dot menu icon that appears when hovering on the audience > Edit.
- Under Connect and export (at the bottom of the audience page), turn on the relevant toggle:
Delete an audience
You can delete an audience created in your account. Doing so removes it permanently from your account.
To delete an audience:
- From the Collaborations tab, click the relevant collaboration.
- Click the Audiences section and locate the relevant audience.
- Click the 3-dot menu icon that appears when hovering on the audience > Delete.
- Confirm deletion.
View audience statuses
You can view the Last upload status of audiences associated with a collaboration.
There are various statuses an audience can have:
- Active: The audience was successfully sent to the destination platform(s) and is available for use in campaigns.
- Draft: The audience was saved as a draft (it was never connected, exported, or delivered).
- Invalid: Indicates that a source or data view used for the audience has expired, been deleted, removed from the collaboration, or no longer has valid permissions.
- Pending delivery: The audience was sent to the collaborator for activation, and it's pending activation.
- Paused: The audience has been manually paused and won't be sent when new data becomes available.
- Suspended: The collaboration and its associated audiences have been suspended.
You can also view the Upload history status of an audience.
To view the upload history:
Click the dropdown next to the specific audience and select View history.
Upload history statuses include:
- Processing: The audience is currently being prepared.
- Success: The audience was successfully sent to all connections.
- Partial failure: The audience could not be sent to one or more connections.
- Failure: There was an issue processing the audience (e.g., due to mismatched data, platform restrictions, or platform errors).
-
N/A: The audience is in draft or pending status. Upload history status is not applicable.