Skip to content

Segment Extensions

Braze segmentation allows you to target users based on custom event or purchase behavior stored for the lifetime of that user profile. Examples include finding users who have or not have performed a particular custom event since a specific time, or segmenting users based on which products they have ever purchased or how much money they have spent with your service.

Segment Extensions are audience definitions which allow you to use nested event properties or create windowed aggregations of custom event and purchase event properties in the past 2 years (730 days). For example, Braze segmentation allows you to find users who have purchased a specific product in their lifetime. With Segment Extensions, you can further refine that audience to users who have purchased a specific color of a specific product at least twice in the past 2 years. When creating a Segment Extension, you can also specify that the audience be static or regenerated daily.

The use of nested event properties for action-based delivery does not require Segment Extensions, as event processing occurs in real-time. Nested custom attributes similarly do not require the use of Segment Extensions.

Step 1: Navigate to Segment Extensions

Go to Audience > Segment Extensions.

From the Segment Extensions table, click Create New Extension, then select your Segment Extension creation experience:

  • Simple extension: Create a Segment Extension focused on a single event by using a guided form. Best for when you don’t want to use SQL.
  • Start with a template: Create a SQL segment with a customizable template using Snowflake data.
  • Incremental refresh: Write a Snowflake SQL segment that automatically refreshes the last 2 days of data or manually refresh as needed. Best for balancing accuracy and cost-efficiency.
  • Full refresh: Write a Snowflake SQL segment that recalculates the entire audience upon manual refresh. Best for when you need a complete, up-to-date view of your audience.

If you select an experience that uses SQL, see SQL Segment Extensions for further information.

If you select Simple extension, continue to the steps below.

Step 2: Name your Segment Extension

Name your Segment Extension by describing the type of users you intend to filter for. This will ensure that this extension can be easily and accurately discovered when applying it as a filter in your segment.

Segment Extension named "Online Shoppers Extension - 90 Days" with the checkbox "Regenerate Extension Daily" selected.

Step 3: Choose your criteria

Select between purchase, message engagement, or custom event criteria for targeting. After you’ve selected the desired event type criteria, choose which purchased item, message interaction, or specific custom event you’d like to target for your user list. Then choose how many times (more than, less than, or equal to) the user would need to have completed the event, and the time period—for Segment Extensions specifically, you can go back up to the past 730 days (2 years).

Segmentation based on event data from more than 730 days can be done using other filters located in Segments. When choosing your time period, you can specify a relative date range (such as past X days), a start date, an end date, or an exact date range (date A to date B).

Event property segmentation

To increase targeting precision, select the Add Property Filters checkbox. This will enable you to drill down based on the specific properties of your purchase or custom event. We support event property segmentation based on string, numeric, boolean, and time objects.

For string properties, you can enter in multiple values at once. In the example below, this filter looks for users with a status equal to any of the following: gold, silver, or bronze.

Segmenting based on string properties.

Segmenting based on numeric properties.

Segmenting based on boolean properties.

Segmenting based on datetime objects.

We also support segmentation based on nested event properties.

Segmenting based on nested event properties.

Segment Extensions rely on long term storage of event properties and don’t have a time-stamped property storage limit. You can look back on event properties tracked within the past two years.

Step 4: Designate refresh settings (optional)

If you don’t need your extension to refresh on a regular schedule, you can save it without using refresh settings, and Braze will default to generating your Segment Extension based on your user membership at that moment. Use the default behavior if you only want to generate the audience once and then target it with a one-off campaign.

Your segment will always begin processing after the initial save. Whenever your segment refreshes, Braze will re-run the segment and update segment membership to reflect the users in your segment at the time of refresh. This can help your recurring campaigns reach the most relevant users.

Setting up a recurring refresh

To set up a recurring schedule, select Refresh Settings in the upper right corner of your specific extension. The option to designate refresh settings is available for all types of Segment Extensions, including SQL segments, CDI segments, and simple form-based Segment Extensions.

Selecting your refresh settings

Refresh Interval Settings with a weekly refresh frequency, start time of 10 am, and Monday selected as a day.

Within the Refresh Settings panel, you can select the frequency at which this segment extension will refresh: hourly, daily, weekly, or monthly. You’ll also be required to select the specific time (which is in your company’s time zone) the refresh would occur, such as:

  • If you have an email campaign that is sent every Monday at 11 am company time, and you want to ensure your segment is refreshed right before it’s sent, you should choose a refresh schedule of weekly at 10 am on Mondays.
  • If you’d like your segment to refresh every day, select the daily refresh frequency and then choose the time of day to refresh.

Credit consumption and additional costs

Because refreshes re-run your segment’s query, each refresh for SQL segments will consume SQL segment credits, and each refresh for CDI segments will incur a cost within your third-party data warehouse.

Step 5: Save your Segment Extension

Once you click Save, your extension will begin processing. The length of time it takes to generate your extension depends on how many users you have, how many custom events or purchase events you’re capturing, and how many days you’re looking back in history.

While your extension is processing, you will see a small animation next to the name of the extension, and the word “Processing” in the Last Processed column on the extension list. Note that you will not be able to edit an extension while it is processing.

Step 6: Use your extension in a segment

Once you have created an extension, you can use it as a filter when creating a segment or defining an audience for a campaign or Canvas. Start by choosing Braze Segment Extension from the filter list under the User Attributes section.

From the Braze Segment Extension filter list, choose the extension you wish to include or exclude in this segment.

To view the extension criteria, click View Extension Details to show the details in a modal popup.

Now you can proceed as usual with creating your segment.

HOW HELPFUL WAS THIS PAGE?
New Stuff!