---
title: Lab 1 - Unified Customer Profile & Audiences
slug: hol-vna-ajo-at/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.

# 1.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;

1. Type **Email** in the **Identity namespace** field, select the first option, **Email**.
2. Type **minh.pham\@travel.com** into the **Identity value** field
3. Click **View**
4. Click **View** again on the profile card.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/iQwtotg833XjcPvJMjjck_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 (see screenshot below).
:::

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

Click on the **Detail** tab to see 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 close.
:::

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

**Scroll down** to see some content cards and fields which can be customized according to business needs. Select **Show display names** to make the field names more friendly. For example, *birthDayAndMonth* becomes *Birth date (MM-DD)*.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/hbX1hwyt8H0ljNhiTZANL_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/Xnun4ENrdWFUhpJBDmAb8_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, mobile app or booking system.

![](https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/6MmluoTjg_OcN3vuE3ONH_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/sI-IbrXELME7PgLz7Webw_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/2rLCNo6ahBfzciVTVuSgK_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.

An ECID represents the different devices that the customer has identified themselves on, for example by logging in or providing their email address or another identifier. Multiple ECIDs could be desktop and mobile for example, or the customer using multiple browsers (or even clearing cookies).

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

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

# 1.2 Create an audience

Let's create an audience that combines both attribute data and event data. We want to target loyalty members who are **Almost Gold with no recent booking**. We will build this audience like this:

:::hint{type="info"}
**Loyalty - Almost Gold&#x20;**&#x61;udience definition:

- Attributes:
  - **Tier = Titanium**
  - **Program Points Balance > 28000**
- Events:
  - **No Booking** 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 **tier&#x20;**&#x61;nd drag the **Tier** attribute into the builder.

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

Type **Titanium** into the text box and hit **enter**.

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

Search for **Program Points Balance** and drag it underneath the existing rule. A blue line will appear when it's in the correct position. Drop it here.

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

Change **equals** to **is greater than**.&#x20;

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/ZOOyg-Et8b-ZHuZPfEEzt_image.png" size="74" width="1281" height="1014" position="center" showCaption="false"}

Enter **28000**.

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

Click on the **Events** tab, search for **booking** and drag-and-drop the **Booking** event into the main panel.

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

Click on **Booking** then change Include to **Exclude**.

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

Click on **Any time** and change it to **In last 3 Months**.

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/EJhgjjzGnQ4hHKTVPrnIx_image.png" size="76" width="1289" height="993" position="center" showCaption="false"}



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





Enter a **Name** for your audience such as **\<YOUR NAME> - Loyalty - Almost Gold**. Click **Publish**.

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

You should see a screen like this:

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

Congratulations! You've created an audience that combines attributes and events! 👏🏻

:::hint{type="warning"}
**Note:** As this is a demo environment with limited data, *the ESTIMATED PROFILES or Audience Size will often be zero.*
:::

# 1.3 Real-time Audience

The audience you just created was a Batch audience, but you can easily build real-time audiences too.

:::hint{type="success"}
**Differentiator:** Adobe is unique because the platform is true real-time. While some platforms claim real-time, they are often so limited that they cannot scale. For example, some are limited to 20 real-time segments. For an industry like airlines, real-time is essential.
:::

Click on the **Audiences** menu > **Create audience** > **Build rule** as you did to create the previous audience.

We are going to build an audience to target people who searched for flights to Singapore (SIN) today. As soon as someone performs a search they will qualify for the audience within milliseconds. The audience is defined like this:

:::hint{type="info"}
**Searched SIN&#x20;**&#x61;udience definition:

- Events:
  - **Search&#x20;**&#x65;vent AND **Arrival Airport Code** = **SIN** Today
:::

In the **Events** tab type in **flight search** and drag-and-drop the Search event into the main panel.

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

Change **Any time** to **Today**.

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/AuTY0Fb6yZPWNh_FB7U4w_image.png" size="32" width="398" height="513" position="center" showCaption="false"}

Click on the **> arrow** next to Flight Status Search.

::Image[]{src="https://api.archbee.com/api/optimize/1Jp0iolWv35Z_mkI7oUiT/BIy4pgwEWBmVgluoWxuHN_image.png" size="82" width="1540" height="1061" position="center" showCaption="false"}

Drag-and-drop Airport Arrival Code to underneath the Search event. You will see a blue line to show it will go below.

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

Enter **SIN** and hit enter.

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

This causes an AND condition. **Search event AND Airport Arrival Code = SIN**. It's possible to use other operators such as OR instead of AND.

Give the audience a name such as **\<YOUR NAME> - Searched SIN** and scroll down and change the **Evaluation method** to **Edge**. Click **Publish**.

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

You should see a screen like this. Keep it open for the next section. The next section is optional. If you finish early, you can try it.

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

# 1.4 Activate Audience to Other Channels with RT-CDP (optional)

:::hint{type="warning"}
**Note:** The screenshots in this exercise show a different audience name. You should use **\<YOUR NAME> - Searched SIN**
:::

The audiences you've created can be used in AJO. If you have Adobe Real-Time CDP you can also activate these audiences directly on other channels such as paid media and social. Because AJO and Real-Time CDP are built on the same platform (Adobe Experience Platform), the audiences and data are the same and 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](https://experienceleague.adobe.com/en/docs/experience-platform/destinations/catalog/overview) and the [Data Source Catalog here](https://experienceleague.adobe.com/en/docs/experience-platform/sources/home).

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 an audience
3. Created a real-time "Edge" audience
4. (optional) Activated an audience to Meta/Facebook 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\:qYCrZNAt3cRCDKeQA0GGx).



