Catalog segments
Catalog segments are a type of SQL Segment Extension that is created by combining catalog data with data from custom events or purchases. They can be referenced in a segment and then targeted by campaigns and Canvases.
Catalog segments are currently in early access. Contact your customer success manager if you’re interested in participating in this early access.
Catalog segments use SQL to join data from catalogs and data from custom events or purchases. To do so, you must have a common identifier field across your catalogs and your custom events or purchases. For example, the value of an item ID in a catalog must match the value of a property in a custom event.
Creating a catalog segment
- Go to Segment Extensions > Create New Extension > Start With Template and select the template Catalog segment.
-
The SQL editor automatically populates with a template.
This template joins user event data with catalog data to segment users who engaged with certain catalog items. -
Use the Variables tab to provide the necessary fields for your template before generating your segment.
For Braze to identify users based on their engagement with catalog items, you need to do the following:
- Select a catalog that contains a catalog field
- Select a custom event that contains an event property
- Match your catalog field and event property values
Here are guidelines to select the variables:
Variable field | Description |
---|---|
Catalog |
The name of the catalog you’re using to target users. |
Catalog field |
The field in your catalog that contains the same values as your Custom event property . This is often a type of ID. In the ecommerce use case, this would be shopify_id . |
Custom event |
The name of your custom event, which is the same event that contains a property with values matching your Catalog field . In the ecommerce use case, this would be Made Order . |
Custom event property |
The name of your custom event property, which matches values with your Catalog field . In the ecommerce example use case, this would be Shopify_ID. |
- If needed, fill in additional optional fields for your use case to segment by a particular field value within your catalog:
Catalog field
: A particular field (column name) within this catalogValue
: A specific value within that field or column
Using the health app as an example, let’s say that within the catalog for each doctor you could book, there’s a field calledspecialty
that contains a value such asvision
ordental
. To segment users who have visited any doctors with the valuedental
, you can selectspecialty
as theCatalog field
, and selectdental
as theValue
.
- After creating a SQL Segment, we recommend clicking Run Preview to see if your query returns users or if there are errors. For more information about previewing query results, managing SQL Segment Extensions, and more, check out SQL Segment Extensions.
Use cases
Health app
Let’s say you have a health app and want to segment users who have booked a visit for the dentist. You also have the following:
- A catalog
Doctors
that contains the different doctors a patient can book, each assigned with adoctor ID
- A custom event
Booked Visit
with adoctor ID
property that shares the same values as thedoctor ID
field in your catalog - A
speciality
field within your catalog that contains thedental
value
You would set up a catalog segment by using the following variables:
Variable | Property |
---|---|
Catalog |
Doctors |
Catalog field |
doctor ID |
Custom event |
Booked Visit |
Custom event property |
doctor ID |
(Under Filter SQL Results) Catalog field |
Specialty |
(Under Filter SQL Results) Value |
Dental |
SaaS platform
Let’s say you have B2B SaaS platform and want to segment users who are employees of an existing customer. You also have the following:
- A catalog
Accounts
that contains the different accounts that are currently using your SaaS platform, each assigned with anaccount ID
- A custom event
Event Attendance
with an “account ID” property that shares the same values as the “account ID” field in your catalog - A
Classification
field within your catalog that contains theenterprise
value
You would set up a catalog segment by using the following variables:
Variable | Property |
---|---|
Catalog |
Accounts |
Catalog field |
account ID |
Custom event |
Event Attendance |
Custom event property |
account ID |
(Under Filter SQL Results) Catalog field |
Classification |
(Under Filter SQL Results) Value |
Enterprise |
Frequently asked questions
Does running a catalog segment consume SQL Segment Extension credits?
Yes, catalog segments are powered by SQL and consume SQL Segment Extension credits. To learn more, check out SQL Segments usage.
Does creating a catalog segment consume SQL Segment Extension allotments?
Yes. In the same way SQL Segment Extensions count toward your Segment Extension allotment, catalog segments also count toward that allotment.
I have a catalog segment use case that the current template doesn’t serve. How should I set that up?
Reach out to your customer support manager or Braze Support for additional guidance.