---
title: Lab 1 - Unified Customer Profile & Audiences
slug: hol-scs-ajo/lab-1-unified-customer-profile-and-audiences
docTags: 
createdAt: 2025-05-12T00:54:37.316Z
---

# Learning Objectives&#x20;

In this exercise you will learn how to view a real-time unified customer profile and understand how the different pieces of information collected about that customer are stitched together through the evolving Identity Graph.  &#x20;

You will learn about the different types of audiences that can be created through the rule-based audience builder, including real-time audiences that can be used across different channels.

# 2.1   Unified Customer Profile

Earlier you saw a live demo where Scott performed a booking abandonment on your web site. AJO was used to send a retargeting email. We will look up the profile that was used to understand the key components of the Unified Customer Profile. These are:

- Attribute Data
- Event Data
- Audiences
- Identity

The system combines data from multiple sources into an actionable profile. It also has an advanced identity management system to build the single view of the customer and to manage how data is merged into the profile.

From the AJO home page you accessed earlier, browse to **Customer -> Profiles.  &#x20;**&#x54;he **Overview&#x20;**&#x64;ashboard shows insights on how many profiles exist in the sandbox along with the distribution of identities.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/eV2Stn1hhg_DvTlg2X17o_image.png)

To lookup a specific profile, move to the **Browse&#x20;**&#x74;ab.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/iAMkhfmn_croudD4dyZ5t_image.png)

Profiles can be retrieved by any of the identities that are attached to that profile.  Which identity namespaces are leveraged depends on your organisations requirements. For this exercise we will use Email to look up your profile. &#x20;

Type **Email** in the **Identity namespace** field, select the first option, **Email**. &#x20;

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/pFuLHyQu4EGsUXULJblvo_image.png)

Type **gruer+science002\@adobetest.com** into the **Identity value** field and click **View**, then **View** again on the profile card.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/Zn7Q8DFHqEO93ta_gLHM3_image.png)

:::hint{type="warning"}
**Note:** you may not see the profile card. If this is the case you might be in the List View. If this is the case you can simply click on the **PROFILE ID** to view the profile details.
:::

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/dHdYuJ7Olqw3NNBui6tiX_image.png)

The **Detail** tab shows us some basic information about the profile, starting with some AI-generated insights.

:::hint{type="warning"}
**Note:** the profile data in the screenshots may not 100% match what you're seeing in this lab but should be fairly representative.
:::

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/VK9D48FkEtm9cHR7r12YF_image.png)

Below are some content cards and fields which can be customized according to business needs.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/NQxP8hzoJfKnzeS5PpyHe_image.png)

There are 2 main types of data collected against the profile, **Attributes** and **Experience Events**. Attributes tend to be fairly static, slower-moving data (sometimes called Record Data) while Experience Events represent point-in-time interactions a profile has had with your brand, whether that's viewing a web page, watching a show, making a booking, calling the call center or visiting a store (i.e. time series data).  &#x20;

Click on the **Attributes** tab to view the full list of attributes ingested for this profile.  These attributes can come from different source systems. The platform will merge them in real-time.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/G3eZmhmaFKZTcw-XwnTIA_image.png)

Click on the **Events&#x20;**&#x74;ab. Here you can see a chronological view of all the behavioural experience events coming from different source systems for this profile. These events are ingested in real-time from the sources like your website and mobile app.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/JamwJaH648oSnFowVzqXh_image.png)

Move to the **Audience membership** tab. Here you can see which audiences the profile is currently a member of, this list will update as the profile moves in and out of audiences based on their attributes and behavior.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/9Fux2F0QAc0D_lWIAXN7k_image.png)

Lastly, return to the **Details** tab, scroll down to Linked Identities and click **View Identity Graph**.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/X-TTJyutaQr1B-V5bct2d_image.png)

Here you can see a visualisation of the Identity Graph linking all of the different sources of information together to create our profile. You can see that there are multiple ECID's or Cookie ID's attached to the profile, this represents the different devices that the customer has identified themselves on, for example by logging in or providing their email address or another durable identifier. Multiple ECIDs could be desktop and mobile for example, or the customer using multiple browsers (or even clearing cookies).

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/OURHlTwCy6UrFgF7zPaos_image.png)

Use the slider to see how the graph grew as the profile interacted over time.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/eebdcVm5HhrQyJ-tURcdD_image.png)

# 2.2 Create a real-time audience

Now you've seen the types of data that lives on our real-time profile, let's create an audience that combines both attribute data and event data. We want to target Family Booking Abandoners. Or at least, bookings that are most likely families based off known data about customers from profile data. The **Family Booking Abandoners** audience is made up of:

:::hint{type="info"}
**Family Booking Abandoners&#x20;**&#x61;udience definition

- Attributes: **Number of Children in Household > 0**
- Events: **Checkout** event but **no Purchase** event in the **last 3 hours**
:::

Click on **Customer -> Audiences&#x20;**&#x61;nd go to the **Browse** tab. This is the **Audience Portal&#x20;**&#x77;here you'll find all of the centralized audiences, regardless of how they were created. The **origin&#x20;**&#x63;olumn indicates where the audience was created:

- Segmentation Service - using data onboarded to the real-time profile
- Federated Audience Composition - using data that lives in a remote data warehouse&#x20;
- Customer Journey Analytics - segments can be shared directly from the analysis done in CJA.
- Custom Upload - directly from files

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/ksffvJ-f1qv6frfeshI43_image.png)

Click to **Create Audience.**

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/HCIOpKakSEW2HIsULWfHS_image.png)

Change the option from compose audience to **Build rule&#x20;**&#x61;nd click **Create.  &#x20;**&#x57;e are going to create a new rule based audience using the attributes and events in our profile.&#x20;

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/v0F7A_paBH4Z1GE7Gt-A3_image.png)

In the audience builder we can add attribute and event based rules.  From the Attributes tab, search for **children&#x20;**&#x61;nd drag the **numberChildrenHouseHold** attribute into the builder.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/RPeCwmEOBxzz8R9WW-j5p_image.png)

Click on the **equals** drop-down and change it to **is greater than&#x20;**&#x61;nd enter a value of **0**, indicating there are children in the household.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/yYXsr1pKejgN0ygBZU4Ax_image.png)

Alternatively, we could have dragged in childrenHouseHold = true, but numberChildrenHouseHold is more flexible as it allows us to target larger families with special offers (e.g. numberChildrenHouseHold >= 2, or 3, or anything you specify).

You can estimate the size of your audience at any time while configuring it. Click the **Refresh estimate&#x20;**&#x6C;ink in the **Audience properties** panel.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/hcx508bYhzBM86MYGnSA9_image.png)

:::hint{type="warning"}
As this is a demo environment with limited data, *sometimes the estimate will be zero.*
:::

Now we want to add an event based rule. Change to the **Events&#x20;**&#x74;ab and search for **Checkout. &#x20;**&#x44;rag-and-drop the **Checkouts** event into the Events section of the builder.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/4aoP7OxWq5v6H1nmVDM-M_image.png)

Search for **Purchase** and drag-and-drop the the **Purchases** event to the right-side of the Checkouts event (notice the <font color="#2166ae">blue guidemark</font> will appear). This is what we call a Sequential Audience and is an example of a differentiator of the Adobe platform.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/hPmTdWWKonWudfLPhENyQ_image.png)

We want to check that there has NOT been any Purchases (i.e. abandon). Click on **Purchases** then change Include to **Exclude**.

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/TIXiWDAKcpi6d5Pt7Krxz_image.png" size="70" width="1264" height="948" position="center" showCaption="false"}

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/r5HfJ6-0J4KEhYaOUo6kQ_image.png" size="78" width="1264" height="960" position="center" showCaption="false"}

Now let's get a little more precise. Let's set how long we'll give a customer to purchase once they checkout. Click on **Clock icon 🕔&#x20;**&#x69;n between the 2 events, and set it to **Within 3 Hour(s)**.

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/VLn31gJRoIwhvqoxye7nC_image.png" size="60" width="1010" height="540" position="center" showCaption="false"}

Enter a **Name** for your audience such as **\<your name> - Family Booking Abandoners**.

For the evaluation method, change this to **Streaming**. This means the audience will qualify in near real-time as data streams into the platform.

Then click **Publish**.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/sh-az2WVqMWt31SdKXCWd_image.png)

You should see a screen like this. Stay on this screen for the next part:

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/AKrE4AeGGEjLwIkyEP-Ky_image.png)

Congratulations! You've created a streaming audience that combines attributes and events and can be activated omni-channel! 👏🏻

# 2.3 Activate Audience (optional)

Later we will use this audience in an omnichannel journey, however we can also activate this audience directly for other channels to consume using Adobe Real-Time CDP. The good news is because both AJO and Real-Time CDP are built on the same platform (Adobe Experience Platform), the audiences and data are ready to use.

Click on **Activate to destination**

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/LbJa17muIcZA8xuOKacYA_image.png)

You will see a list of Destinations that have been configured for this sandbox. There is a huge catalog of prebuilt connectors available to both get data into the platform (Data Sources) and to activate (Destinations). You can view the Destination Catalog here and the Data Source Catalog here.

From the list of Destinations that have been configured for this sandbox, check the **Facebook** destination and click **Next**.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/NDt2NYZOu667cZHaPsUSK_image.png)

You'll see some pre-configured mappings which transform the data in the platform to what Meta expects to receive. At this point you could add any extra fields that might need to be sent. For this lab there is no need to do anything here. Simply click **Next**.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/ev-EAw-Wj-F_N1MWS1XVp_image.png)

Meta requires you to specify where the audience data has come from. Set the Data Origin to be **Directly from customers&#x20;**&#x74;hen clic&#x6B;**&#x20;Next**.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/24sjT4u5vAtLTa1112OzG_image.png)

Click **Finish** on the final Review screen and you're done.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/MG6sKhHuurkLHoar3aMdm_image.png)

# Summary

Congratulations, you've completed the first exercise! You have successfully:&#x20;

1. Looked up the profile used in the live demo and explored how data has been unified to produce a single, actionable view of the customer
2. Combined slow and fast moving data that's been ingested into the platform to create a streaming audience&#x20;
3. (optional) Activated an audience to Meta using hashed first party identifiers.

If you finish early feel free to have a look at the next exercise - [Lab 2 - Journeys and Content](docId\:I35hi4bSgQMXV4oOqsU0n).



