Utilizing the Audiences feature requires several steps to create and send audiences to downstream systems, e.g. Facebook, Yahoo!, Google Analytics, Nielsen. The high-level steps of how and what data is available for defining attributes, how to utilize the attributes to create audiences, and how to select the audiences to send to the downstream systems are described in the article Building an Audience Workflow.
This article dives into the details of the third of those steps, Creating Audience Builder apps:
- Creating an Audience Builder app
- Select the needed attribute groups
- Define an Audience Builder process
- Testing the Audience Builder app
- Activating the Audience Builder app
Creating an Audience Builder app
The Audience Apps page is available from the main menu () and then select the submenu item Apps under Audience or, if already within the Audience module, via the apps icon ().
There are three layers of audience hierarchy to keep in mind:
- App - An audience app is at the highest level of grouping, e.g. Brand Aud App, seen as the rounded squares below. Inside an app, we will have one or more audience groups/processes.
- Group - An audience group is the next level and created within an app via a process, e.g. Brand, Brand Purchased, Brand Not Purchased, seen as the circles below. One or more groups/processes will be within an app. Within a group/process we will define many audience values.
- Values - The audience values are the exact names given for a defined condition, e.g. LG Not Purchased, Sony Not Purchased, seen below in the tables within the circles. Each audience group/process will have several or many audience values. These audience values are then selected within the Audience Sync app to send to downstream systems.
As noted in Audience Solution Best Practices, there is a needed balance between usability/organization of audience apps and audience groups/processes versus performance of the app jobs. If needing to add a new set of audiences it may be appropriate that only a new audience group, within an existing audience app, needs to be added instead of an entirely new audience app.
If/when a new audience app does need to be created then simply click the green plus icon (). Doing so will bring up the below pop-up allowing you to create the audience builder app.
The following fields need to be completed to create a new audience app:
- Name - The name should be descriptive of the set of audience groups that are going to be created in the app. The name must be unique across all apps within the Syntasa platform.
- Key - The key value you typically can leave as is since it is auto-generated from the name of the app. It too needs to be unique across all apps. The key value cannot be changed after the app is created.
- App Prefix - The app prefix is the abbreviated value used to identify the app's datasets and tables within the workflow canvas. This typically can be left as-is and can be altered after the app has been created.
- Copy an Existing App - Typically not used in the context of audiences because each audience app should be creating unique audience groups and audience values. If this were used, starting a new audience app based on an existing one, then every process and value would need to be updated.
- Template - This should be selected as "Audience Builder" for our purposes of creating a new audience builder app.
- Description - Informational note describing the intent and use of the app.
- Data Layer - As noted in the article Building an Audience Workflow, each organization typically needs a single data layer, but if there are multiple then select the corresponding data layer the audiences are to be built on. Remember that all audience apps on the same data layer will generate and write results to the same, shared Audience Result Tables.
- Default Partition Scheme - This will be selected automatically based on the setting of the selected data layer.
- Override Icon - The icon of the app card can be altered from the default (). This can also be changed later from the app's overview screen.
Initially, the app will look like the below with no attribute input stores (), one unconfigured audience builder process (), and the audience result table (), which represents the three result tables as explained in Audience Result Tables.
As seen on the element selection on the left, an audience builder app has two types of elements that can be added to the app: one type of input store, attributes; and one type of process, audience builder.
Each element type can have multiple instances within the same app, but should only be added as needed, e.g. while several attribute groups may be available, you should only drag on those attribute groups needed to build the audiences.
Select the needed attribute groups
Drag and select the attribute group(s)
- Unlock the app - Before editing an app you need to click the lock/unlock icon () to unlock the workflow canvas.
- Drag the store - The only available store seen on the left is Attributes. Drag the needed number of attribute groups, which are a result of the Attribute Builder apps, onto the workflow canvas. Initially, this new node will be gray in color.
- Select the attribute group - Click on the store node(s) dragged onto the workflow canvas. The bottom panel will have the Group option selected. Choose the desired attribute group and click the green checkbox ().
Connect the attribute group(s)
The last step for the attribute group is to connect it to the needed audience builder group/process by dragging between and connecting the dots between the two nodes.
As we will see later, a single attribute node can connect to multiple audience builder groups/processes and/or multiple attribute nodes can connect to a single audience builder group/process.
Define an Audience Builder process
Process level settings
Now that you have connected the attribute(s) to the audience builder process, the process can now be configured. Click on the process node, the bottom panel will have the Parameters option selected.
This the primary area for configuration and definition of audiences. Below describes the individual fields and settings that can be set for an audience group/process.
The group name is a descriptive name for the set of audience values defined in the process. From the example above, an audience group may be Brand, Brand Purchased, Brand Not Purchased, Product, etc.
The group name should be a unique value across all audience groups for the data layer. Remember there can be multiple audience groups within a single app, but also multiple audience apps, which have their own audience groups/processes. Since all audience apps for a single data layer write results to the shared audience result tables, the audience group name should be unique across all audience groups/processes for the data layer.
Retention defines the number of days a visitor is valid for an audience. The value is passed onto the Audience Sync app(s) to determine if/when to send an audience downstream; the value is not used directly in the calculation and determination of a visitor qualifying for an audience.
The auto-extract option allows for audience values to be automatically generated from distinct values from the selected attribute group instead of manually defining each audience value.
For example, if an audience group is desired to match and have the same values as the set of attribute values in Brand then turning this option on would automatically extract the distinct values and create individual audience values for each. This includes new values that may appear in future updates to the source attribute group.
But if the conditions for the audience values are more complex and, for example, are met with a combination of attribute values then it is best to leave this option off and thus be able to define the audience values individually utilizing the condition builder explained below.
Now that the audience group name and retention value have been entered, the individual audience values need to be defined. The input of audience values differs if the auto-extract option is on or off.
When the auto-extract functionality is enabled the Attribute Group field needs to be selected. The available choices are based on the attribute group nodes that have been connected to the audience builder process:
When the auto-extract functionality is disabled each audience value needs to be given a Name and the criteria for meeting the condition of the audience is to be defined:
The conditions here will be one or a combination of several attribute groups matching or not matching a certain attribute value of the selected group. The Left Value will be the selection of the attribute group; the Right Value the attribute value; the Operator the condition defining that the audience should or should not match the selected attribute group and value.
For example, if there are the attribute groups Brand, Product, Purchase 1 Day with attribute values such as:
- Brand - LG, Microsoft, Sony
- Product - Laptop, TV, Appliance
- Purchase 1 Day - Purchase_1_Day
An audience of Sony TV Purchased can be created by setting the conditions as:
The conditions here can be simple using a single attribute value match or more complex combining ANDs and ORs across multiple attribute values to define when an audience is met. Several examples of audiences can be found in Sample Audiences.
Confirm process settings
Once the audience builder process is configured click the green checkbox () to confirm the inputted values of the process. Once this is checked the configuration panel of the process will close. If needing to open the panel again then click on the process node again.
After the checkbox is clicked, the process node on the workflow canvas will be one of two colors indicating the status of the process's configuration. If all configuration has passed validations the node will be a light green (); if the configuration needs to be reviewed and updated then the node will be yellow ().
Testing the Audience Builder app
Once the audience group/process(es) has been configured the audience builder can be tested within the development section of the app. It is best practice to test, especially a new app, in dev before activating the app into the production section of the app.
There are a few steps detailed below that can be done in multiple iterations as changes are made while building or altering an app to ensure that the desired output is achieved.
If making small changes or additions are made to an existing app, the testing within the development section of the app may be skipped at the user's discretion.
Save & Lock
Before being able to execute the audience conditions, and therefore preview the desired audience values, the app needs to be locked. To save and lock the app click either the Save & Lock button () or the Save button () followed by the lock icon ().
Run the process(es)
Once the app is successfully saved and locked the process(es) can be executed. To quickly run all processes within the app then click the Run button (). If wanting to run selected processes then shift-click the process nodes that want to be run and then click the Run button.
The job kicked off by default will run with a date range of "Last 1 day". If you need to run the run for a different date or a date range then click on down arrow next to the Run button and then click Configure Run (). Instead of kicking off the job immediately, as does simply clicking the Run button, this will bring a pop-up allowing the date range to be altered. Once set to the desired setting click Save + Execute ().
Once the job(s) are running the activity icon () in the top right of the workflow canvas will update to () indicating there is a job running. Clicking on this tab will open the activity panel on the right. Clicking the right arrow () will expand the job and display the details steps. Each process (or all) that were selected to run will show as an individual step, e.g. Product.
More details of monitoring and reviewing job step details and statuses can be found in Operations - Activity Logs.
After the audience builder process(es) has completed successfully click on the audience result table node (). The bottom panel will open where you can preview the results in the three tables, results, metadata, and metrics, as explained in Audience Result Tables.
Activating the Audience Builder app
When the audience builder app is configured to satisfaction it can then be activated into the production section of the app by clicking the Activate button (). This will use the current version of the app in the development section of the app to update/overwrite the current copy of the app in production or create the initial production version if one does not currently exist.
After the app is in the production section of the app the job(s) needs to be run as explained in Run the process(es) above so that results are created in the production version of the audience result tables. The production audience results are available in the audience sync app(s) for selection to then be sent downstream as explained in Building and Audience Workflow.