Custom Properties
Last updated
Last updated
Custom Properties perform aggregation calculations on your data. These can be attached to users, events, or other data that allows marketers to create more tailored messages and experiences.
This stores the logic for a new property for a user which does not directly exist in the data warehouse, and is added to queries for segmentation or campaign data.
From the e-commerce example, one may want to get most expensive item ordered in an order. If the value is not directly available in any table in the schema, one can create a custom property Most expensive item on Orders table, which is Max of Line Item Price.
Building custom properties requires an understanding of your business goals. Usually, business stakeholders like marketers complete this step.
Click + New Property on Custom Property page.
Choose the table you want to create custom property against. This is the entity against which aggregation will be created. In the e-commerce example, this will be Orders table. Here, tables at the leaf node in the schema won't be available.
Setup a name and description to identify this custom property.
Choose the property from the column list you want to create an aggregation on. In the example above, this will be Product Price, from Line Items table.
Choose the aggregation function. The list may be different based on the datatype. The aggregation useful for the e-commerce example is maximum, to get most expensive item.
You can add filters here, to filter specific entries which should be accounted during the aggregation. In this example, most expensive item is being filtered among product "Ice Cream" and "Ice Cubes" only.
Once done, create the custom property. You can now use this in audience creation as a filter. This will be displayed as a separate section in the filter dropdown.
Aggregate functions depend on the datatype of field selected while creating custom property. Here's an exhaustive list:
Number
Sum
Percentile
Median
Average
Count
Count Distinct
Min
Max
Other data types (String, Boolean, Datetime)
Count
Count Distinct
Min
Max