Skip to content
ChangelogBook a demoSign up

Build an audience

AudienceMarketers
PrerequisitesCompleted schema setup by your data team.

Audiences define who currently qualifies for a campaign or workflow. Build one by adding conditions directly or asking the agent to draft and refine them, then review the audience before you save it.


Overview

The audience builder is where you define who should be included in an audience using your warehouse data.

For example, you might define an audience of customers who:

  • added an item to their cart in the last 24 hours
  • haven't completed an order
  • have a lifetime value greater than $200

You can build an audience in two ways:

  • Add filters directly in the visual builder.
  • describe the audience to the agent in natural language and let it draft or refine the filters for you.

In both cases, you can review and edit the full audience definition before saving. Hightouch reevaluates the audience as your warehouse data changes, so membership stays up to date.

Audience builder with the agent open alongside the filter conditions

Most audiences are evaluated in batches on a schedule. If you need to respond to customer behavior within seconds, use real-time audiences instead.


Create an audience

  1. Go to Customer Studio > Audiences.
  2. Select Add audience.
  3. Choose the parent model you want to build from, such as Users or Accounts.
  4. Name the audience and optionally add a description.

The Audiences list with the Add audience button

The parent model determines what one audience member represents. An audience built from a Users parent model contains users; an audience built from an Accounts parent model contains accounts.

Select a parent model when creating an audience

See Plan your data model for more on choosing the right targeting grain.


Define who qualifies

Add conditions for the customer attributes, behaviors, or related data that determine membership. You can build the conditions yourself, ask the agent to draft them, or combine both approaches on the same audience.

Add filters in the visual builder

Select Add filter and choose what to filter on. Common filter sources include:

  • Properties — Fields on the parent model, such as region or plan.
  • Events — Behaviors such as purchases, logins, or product views.
  • Related records — Purchases, subscriptions, accounts, or other connected models.
  • Traits — Reusable calculated values such as lifetime value or purchase count.
  • Audiences — Membership in another saved audience.
  • Journeys — Participation in a journey.

Choose a filter source in the audience builder

You can also start from an audience template to reuse a pattern your team has already built.

For advanced conditions, nested relationships, event sequences, JSON filtering, percentiles, and operator behavior, see Audience filters.

Build with the agent

Select Agent to open the agent chat alongside the builder, then describe the audience you want in natural language:

Create an audience of customers who added an item to their cart in the last 30 days but did not complete an order.

The agent drafts the matching conditions in the builder. You can also ask it to explore the fields and events in your schema, explain existing filters, or generate insights about the current audience.

To give the agent more context, attach an image or file to your message, such as a screenshot of a segment definition or a campaign brief.

Open the agent from the audience builder toolbar

If you're not sure which field to filter on, you can hand the choice to the agent from inside the filter picker. Select Add filter, then select Ask an agent and describe what you're looking for:

Help me find the right filter column for customer tenure.

Ask an agent to find the right filter from the filter picker

To ask the agent about a condition you already built, open the filter's ... menu and select Add filter to chat.

Send a filter to the agent chat

For prompting patterns and guidance on getting reliable results, see the Audience builder prompting guide.

Review and apply agent changes

The agent proposes changes rather than applying them silently. Review each proposal before it updates the audience:

  1. Read the proposed conditions in the agent's response.
  2. Select Apply these changes.
  3. Inspect the updated definition in the builder.
  4. Preview the qualifying members.

Apply the agent's proposed changes

If you applied a change you don't want to keep, select Undo before saving.

Undo applied agent changes

The agent can make mistakes, especially when a request is ambiguous or the schema doesn't clearly describe the available data. Treat the generated conditions as a draft you review, not as a result you accept unseen.


Limit the audience size

By default, an audience includes everyone who meets its conditions. You can cap the number of members when you want to activate only your highest- or lowest-ranked customers, such as the top spenders or the accounts with the lowest engagement.

Select Limit audience size, choose Top or Bottom, set how many members to keep, and rank them by a column such as purchase_amount or last_purchase_date.

Limit an audience to the top or bottom members by a column


Preview and validate the audience

Before saving, confirm that the audience matches the customers you intended to target.

Select Calculate size to see how many records currently qualify, then select the member count to inspect example records.

Calculate audience size

Check both:

  • The conditions — Confirm they express the targeting rule you intended.
  • The members — Confirm the resulting customers or accounts look right.

The count is exact unless sampling is enabled for the model, where it's an approximation. It reflects your current source data and refreshes when you change a filter or a sync runs. A matching preview confirms the audience logic, not delivery. To confirm records reach a destination, run a limited test sync before launching.

You can also ask the agent to explain the audience — for example, Which condition removes the most customers? Audience insights shows composition, overlap with another audience, and a breakdown by attributes and traits.

Preview destination rules

If your workspace uses destination rules, select a destination in Preview a destination to see how those rules affect which records would be sent.

Preview an audience for a destination

Destination rules don't change audience membership. A customer can qualify for the audience but still be excluded from a particular destination.


Save the audience

When the definition and preview look right, select Save audience.

Save an audience

Hightouch reevaluates saved audiences as your source data changes, so customers can enter or leave the audience when they stop meeting its conditions. To recompute the current member count at any time, select Calculate size.

If you need membership to stay fixed for a specific use case, see Audience snapshots.


Decide what happens next

Once you've saved an audience, you can use it in different ways depending on what the campaign needs.

Sync the audience directly

Use a sync when you want to keep a destination updated with the customers who currently qualify. For example, sync an audience to:

  • an ad platform for targeting or suppression
  • a CRM for sales outreach
  • a messaging platform for campaign membership

Use the audience in a journey

Use a journey when the campaign needs to unfold over time. A journey can coordinate:

  • waits between steps
  • branches based on customer behavior or attributes
  • exit criteria
  • destination actions at different points in the workflow

The audience determines who qualifies. The journey determines what happens after they qualify.


Duplicate an audience

To reuse an existing audience as a starting point, open it and select Make a copy from its ... menu. This creates a copy you can rename and adjust without affecting the original, and it lets you choose which of the source audience's syncs to carry over.

Make a copy of an audience from its ... menu

Make a copy when you want a variation on an audience you've already built. To standardize logic your whole team reuses instead, build an audience template.


Other ways to work with an audience

After saving an audience, you can also:

  • use Audience insights to understand its composition and overlap
  • save reusable audience logic with templates
  • run an experiment to compare treatment and holdout groups
  • add or reuse calculated values with traits

Experimentation and governance

Split audiences for experiments

Divide an audience into random or rule-based groups for testing.

Split typeDescription
A/B SplitDivide members randomly between two syncs.
Multi-branch SplitRoute members to multiple destinations.

Each profile is assigned once, based on its primary key.

Changing split percentages can reassign users—use a snapshot to preserve consistency.


How audiences stay up to date

Audiences update automatically as your source data changes so campaigns always reach the right people.

BehaviorDescription
Automatic updatesNew data or events trigger re-evaluation.
Manual refreshTrigger a full recalculation from the overflow menu.
SnapshotsFreeze membership at a point in time to measure lift or maintain fixed test groups.

Segment by households or accounts

In some workspaces, audience data is organized around more than one entity type, such as: People, Households, or Accounts. When you enable schema labeling, the audience builder automatically reflects these relationships.

This allows you to create audiences that consider shared characteristics or behaviors across related entities, rather than limiting segmentation to individuals.

Schema labels in dropdown

With schema labels applied, filters adjust automatically so you can build audiences using data from connected entities. For instance, you can define a People audience that includes or excludes members based on traits of their associated Household or Account.

Schema labels in audience filtering

Examples:

  • Household segmentation: Include people in households that meet a shared condition (for example, at least one member identifies as female or holds an active subscription).

    Householding audience example

  • Account segmentation: Include people whose associated account shows recent activity or engagement (for example, a recent purchase or contract renewal).

    Account management audience example

Schema labeling enables you to build audiences using both individual and group-level data. This supports coordinated targeting and measurement when multiple related entities—like people within households or employees within accounts—affect campaign outcomes.


Example use cases

Abandoned checkout retargeting

Goal: Retarget users who started checkout but didn’t complete.

Filters

  • Event: Checkout started within last 24 hours
  • Event: Order completed not performed in same window
  • Trait: LTV > 200
  • Property: Email is not null

Sync to

  • Meta Custom Audiences
  • Klaviyo List

Combine this audience with a subset or destination rule to exclude opt-outs.


Real-time travel personalization

Goal: Personalize offers for users who searched flights or hotels in the last 24 hours.

Filters

  • Event: search where category = flight OR hotel
  • Event: search_time performed within 24 hours
  • Trait: loyalty_status = Gold

Enable real-time evaluation, split 80/20 for testing, and sync to ad platforms. Learn more in Same-session audiences.


Best practices

GoalRecommendation
Start a new audience from a descriptionDraft with the Agent, then review and refine the suggested logic in the builder.
Ensure consistent segmentationBuild complex logic once as reusable traits.
Avoid audience driftUse snapshots to lock membership for control groups.
Simplify experimentationKeep experiment audiences clearly named (for example, retargeting_a and retargeting_b).
Test before activationUse sampling to preview results on smaller datasets.
Iterate on saved audiencesAsk the Agent to explain exclusions or suggest changes when audience size or composition shifts.

Troubleshooting

IssueLikely causeResolution
Audience size changes unexpectedlyReal-time evaluation enabledUse snapshots to lock membership
Filters return no resultsWrong relationship or null handlingCheck schema configuration and null settings
Members appear in both split groupsSplit percentages edited after launchAvoid editing live splits
Cannot assign syncMissing permissionsContact your workspace admin

If you see warehouse SQL errors (for example, unresolved columns, invalid identifiers, or object authorization failures), use Resolve SQL compilation errors.

Common issues and detailed resolutions

Filter value suggestions not appearing

Cause: Column suggestions are not enabled, or the suggestion cache is stale.

Resolution: Ensure you’ve enabled column suggestions. If suggestions are enabled but missing, refresh them in the filter UI.

Refresh suggestions

A filter references a deleted column

Cause: A model column was deleted but is still cached in Hightouch.

Resolution: Preview and re-save the model configuration to refresh cached columns.

Parent model error

A filter references an unresolved column

Cause: A filter or audience condition references a column that is not present in the model output, often due to a renamed or removed column or stale filter configuration.

Resolution:

  1. Open the parent model and confirm the referenced column exists in the selected columns.
  2. Preview and re-save the model to refresh available columns in Customer Studio.
  3. Update audience filters that reference the missing column, or add the column back to the model.
  4. Re-run audience preview to confirm the error is gone.

If audience sizes or syncs change unexpectedly, review your schema relationships and sync schedules regularly to ensure alignment.


What’s next?

After creating audiences, you can activate and measure them using these related features:

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Privacy PolicyTerms of Service