Search documentation...

K
ChangelogBook a demoSign up

Create audiences

Customer Studio is available as an add-on on Business tier plans.

Overview

Audiences diagram

Once you've set up your schema data models, you can start creating audiences using the visual audience builder.

Required skillset

Building audiences requires an understanding of your business goals. Usually, business stakeholders like marketers complete this step.

Setup

  1. Go to the Audiences overview page and click Add audience in the top right corner.

Adding a new audience in the Hightouch UI

  1. Select the parent model to segment.
  2. Build an audience by configuring filters and Boolean logic (AND / OR).

Creating a new audience in the Hightouch UI

  1. As you build, click Preview results to ensure the audience you're building is the intended one. You can see the audience size and more closely inspect audience members by clicking on them. If you've chosen to redact any columns in your model configuration, they're redacted here.

Previewing an audience in the Hightouch UI

  1. Once finished, click Continue.
  2. Give the audience a name, and optionally move it a folder if you're organizing your workspace in this way.
  3. Click Finish.

After building the audience, it appears on the Audiences overview page. The last step is to configure its sync to a destination. Check out the audience sync docs to learn more.

Filter conditions

Filter conditions are the core of the visual builder. You can mix and match the different conditions to segment your parent model to a specific audience. The builder provides five types of filters you can use with nested Boolean (AND / OR) logic:

  • Property conditions
  • Related model conditions
  • Event conditions
  • Audience conditions
  • Trait conditions

Audience filters in the Hightouch UI

Property conditions

The property condition is the most basic condition. You can use it to filter audiences based on the column values in your parent model. For example, if your parent model is a table of users and includes columns like city and age, you can create an audience of:

  • All users where their city is "New York" AND
  • where their age is less than 25

Here's how it looks in the visual builder:

Example property filter

The related model condition filters users based on data in related models. In SQL speak, it lets you filter based on the matches on a foreign key to another table.

For example, if your parent model is a table of users and you have related models for purchases and workspaces, you can create audiences like this:

  • All users that have purchased more than three items
  • All users that are part of workspaces with only one member

Here's how it looks in the visual builder:

Example related filter

Event conditions

The event condition filters audiences based on what events they've performed. To use it, you need to have set up events. The event condition supports specifying multiple events that have to happen in order.

For example, if your parent model is a table of users and you've set up different web events the users took, you can create audiences like this:

  • All users that viewed your website but then didn't create an account
  • All users that viewed a promo page on your website and then checked out

Here's how it looks in the visual builder:

Example event condition

Audience conditions

The audience condition filters users based on whether they're a part of another audience. This condition helps construct complex audiences and ensures you're not duplicating users across campaigns.

Audience conditions can only be set up between audiences that use the same parent model.

For example:

  • All users that added an item to their cart and aren't part of the "Cart abandoners" audience.

Here's how it looks in the visual builder:

Example audience condition

Trait conditions

The trait condition filters users based on traits you've defined in your Hightouch workspace. Traits are computed or calculated attributes. Check out the Traits documentation for more information.

For example:

  • All users who last purchased a "Nike" item where the price was greater than $200

Example trait condition

Nested conditions

The Hightouch audience builder supports nesting filter conditions using Boolean operators up to a depth of three layers.

Example nested conditions

For example, imagine you are running a campaign targeting users with a high likelihood of purchasing Nikes. You could create an audience with the following conditions:

  • Users who have a Nike brand affinity AND at least one of the following is true:
    • Their lifetime value is greater than or equal to $250.
    • They've engaged with the site or app at least three times in the last week
    • They're a loyalty customer

You could express those conditions using this Boolean logic:

brand_affinity="Nike" AND (LTV >= 250 OR engagement_last_seven_days >= 3 OR loyalty_customer=true)

The visual audience builder makes it intuitive to build this audience using nested OR conditions.

Example nested conditions

The builder also makes it easier to organize logic around subconditions.

Let's say you want to create a variation of the last audience targeting customers who've recently added an item to their cart that is either expensive or has the Nike brand. You could define this audience like this:

Users who have added a product to cart within the last seven days AND one of the following is true:

  • the product brand is Nike
  • OR the product's price is greater than $200

Example nested conditions

The builder also allows you to adjust conditions you've set. If you wanted to make the audience have stricter inclusion policies, you can toggle the OR to an AND, so the audience definition is now:

Users who have added a product to cart within the last seven days AND all the following are true:

  • the product brand is Nike
  • AND the product's price is greater than $200

Example nested conditions

Filter operators

Filter operators allow you to build your filter conditions. For example, you may want to create a property condition based users' ages or an event condition based on when an action occurred. The operators you can use depend on the underlying data type you're filtering on—either textual, numerical, boolean, or timestamp.

These operators are the same whether you are creating property, related model, event, or trait conditions. Audience conditions only provide the operators is included in and is not included in.

Drag and drop values

Certain textual and numerical operators allow you drag and drop TXT or CSV files containing comma-separated values rather than entering values individually. For example, you may have a list of organization IDs that you want to create a property condition with. Instead of entering each value one by one, you can drag and drop a file with all the values in the Hightouch UI.

Drag and drop

Refer to the textual and numerical operators sections for which operators support this feature.

Textual operators

When filtering on textual data, for example on a product's brand or a user's location, you can use these operators:

  • equals
  • does not equal
  • contains
  • does not contain
  • starts with
  • does not start with
  • ends with
  • does not end with
  • exists
  • exists and is not empty
  • does not exist

You can use the drag and drop feature with the following operators: "contains," "does not contain," "equals," and "does not equal."

The contains operator uses a fuzzy search; it translates to the SQL LIKE operator with the compared value surrounded in % %. The equals operator looks for an exact match. It also uses LIKE operator, but with ' ' surrounding the operand.

Numerical operators

When filtering on numerical values, for example, a product's price or a user's lifetime value, you can use these operators:

  • equals
  • does not equal
  • greater than
  • less than
  • greater than or equal to
  • less than or equal to
  • exists
  • does not exist

You can use the drag and drop feature with the following operators: "equals" and "does not equal."

When using the "greater than," "less than," "greater than or equal to," and "less than or equal to operators" you can enter an absolute numerical amount, or enter a percentile.

The following example screenshot shows a filter for users in the top fiftieth percentile of lifetime value.

Example percentil

To use the percentile option, make sure the column has suggestions turned off.

Boolean operators

When filtering on Boolean (true or false) values, you can use these operators:

  • equals
  • does not equal
  • exists
  • does not exist

Timestamp operators

When filtering on timestamps, you can use these operators:

  • before
  • after
  • within (for example, "within the previous 3 months")
  • not within
  • exists
  • does not exist
  • between
  • anniversary

The anniversary operator checks whether it's an anniversary of the timestamp today. This operator is useful when building campaigns around birthdays or anniversaries.

Limit audience size

You may want to limit your audience size to make it more cost-effective or to only focus on those who are most likely to respond to a campaign. You can do this in Hightouch by clicking the three dots to the left of Preview Results. Then, select:

  • whether you want to use the top or bottom of the audience, as sorted by a particular column value
  • the size of the audience
  • the column to use for sorting

It usually makes the most sense to use a column with numerical values for sorting.

Click Save to update the audience.

Limit audience size in the Hightouch app

You can open the same menu to remove the size limit.

Clone audiences

After creating an audience, you can clone it by opening the horizontal three-dot menu on its configuration page and clicking Clone.

Cloning an audience in the Hightouch app

This opens a new page where you can:

  • edit the cloned audience's configuration
  • select which syncs to clone, if the audience you're cloning has syncs associated with it
  • give it a custom name and description

Once you finish creating the cloned audience, you can further edit it and configure additional syncs on it like any other audience.

Tips and troubleshooting

Filter value suggestions not appearing

If you want to see suggested filter values, make sure you've configured the relevant parent, related, or event model's columns to show suggestions.

For example, to see suggestions for the brand of a product that was added to the cart:

Filter value suggestions

You need to turn on suggestions for the brand column in the Product Added to Cart event's model:

Configure column suggestions

If you still aren't seeing suggestions though suggestions are enabled, refresh the suggestions using the refresh button.

Refresh column suggestions

Percentile option not appearing for numeric filters

To use the percentile option, make sure you've configured the relevant parent, related, or event model's numerical column to not show suggestions.

Configure column suggestions

The percentile option only appears for numeric columns without suggestions enabled.

Error: column "..." does not exist in _ht_with_column_casts

This error can appear when previewing your audience, when syncing your audience results to a destination, or when hovering over the warning icons displayed next to the suggestion toggles in your parent model:

Parent model error

This issue occurs because a parent model no longer contains certain columns. Although these columns no longer exist in the dataset, Hightouch cached their names for the UI, causing the error.

To resolve this, preview the parent model's results and save the new configuration. Previewing and saving the configuration refreshes the cached values and removes non-existing columns from the UI.

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.

Last updated: Nov 6, 2023

On this page

OverviewRequired skillsetSetupFilter conditionsProperty conditionsRelated model conditionsEvent conditionsAudience conditionsTrait conditionsNested conditionsFilter operatorsLimit audience sizeClone audiencesTips and troubleshootingFilter value suggestions not appearingPercentile option not appearing for numeric filtersError: column "..." does not exist in _ht_with_column_casts

Was this page helpful?