Segments in the Adobe Experience Cloud
16 Oct 2021 » MSA
One question that we hear from time to time is “why do I have so many places to create segments?” Or, its variation “why can’t I have a single place to manage all my segments?” These are uncomfortable questions, which require some detailed explanation. I am also aware that not all our customers accept the answer. In this post, I will go through the features of the various segments engines and why it makes sense that they differ.
Let me start with a clarification. I use the words segment and audience as virtual synonyms. A quick Internet search shows that they are not and each page will give a different explanation of the difference. In my mind, a segment is a definition in technical terms to select a group of individuals and an audience is that group of individuals. By this is my personal point of view.
A historical perspective
The first and simplest answer to the questions in the first paragraph is: for historical reasons. As Adobe started to create the Adobe
Marketing Experience Cloud, it purchased various companies. Each had its own set of products, developed in isolation from each other:
- The acquisition of Omniture brought SiteCatalyst, now Adobe Analytics.
- Omniture also brought with it Test & Target, as it had purchased Touch Clarity. This is what we now know as Adobe Target.
- Demdex was a DMP, now known as Adobe Audience Manager. It had good integrations with Adobe Analytics and Adobe Target, but, initially, they were client-side integrations, without all the features that we are used to today.
- Neolane’s marketing automation tool (Adobe Campaign Classic), in its workflows, has segmentation capabilities.
While not an ideal answer, this is how it happened. In theory, one could think that a central segmentation engine could be possible. However, knowing how these tools have been developed, it would be a very complex task.
This history brings along a second answer to the original question. These tools can be purchased in isolation. Although more and more customers tend to buy the full stack, there are many more that only buy some of the tools or only one. Therefore, you will want each tool to have its own segmentation engine, so that it can be used without the need for other tools.
Now that we have seen partly why we have these different segment engines, let’s move on to the features.
Segments in Adobe Analytics have come a long way. In SiteCatalyst 14 there were Advances Segment Insights (ASI) slots and data warehouse segments. These were very limited. However, SiteCatalyst 15, which is the basis of Adobe Analytics, has a powerful engine. I have already written about this engine:
Adobe Analytics can also use Adobe Audience Manager segments (AAM), through the Audience Analytics feature. However, Audience Manager segments do not show up directly as segments in Analytics, but as a list variable. You need to create a new segment based on this variable if you want to use it in Analytics.
One important detail about Analytics segments is that they are not real-time. I know, it is disappointing. Some of its features, like the visit container and the sequential segmenting, are unique. We would all like to use them in Target or Audience Manager for real-time use cases. I even had a customer that, when I was implementing Audience Manager, wanted to manage all the segments from Analytics. I had to explain to him why this was not a good idea.
However, when you think about it, you understand why it has to be batch. The processing power needed to evaluate complex segments in real-time is huge.
Besides, you need to remember what Adobe Analytics segments are for: reporting and insights. They were never meant to be used for real-time segmentation and activation.
Adobe Audience Manager
As its name suggests, this tool is all about segmentation. Audience Manager organises the data in three layers:
- Signals. These are key-value pairs received by AAM, either in HTTP calls or through files. You should expect to receive millions of them.
- Traits. From those millions of signals, you select those that you are interested in. Then, you combine these key-value pairs to create traits, which are hit-level or row-level qualifications.
- Segments. Traits are the building blocks of the segments. Using the same approach as with signals and traits, you define segments as a combination of traits. Segments are always at visitor level.
As opposed to Adobe Analytics, AAM segments can be real-time, if the signals come from a real-time data source. Therefore, the trait and segment qualification cannot be very complex: it has to be evaluated in a few milliseconds. If we wanted to add all features available in Analytics, they would require too much computing power and storage, slowing down AAM.
There are also batch data sources, in which case, segments will be batch.
It is also worth mentioning that AAM can receive segments from other Adobe Experience Cloud (AEC) tools:
- Analytics. If you share an Analytics segment with the AEC, Analytics generates every day a file with all the ECIDs that qualify for this segment.
- Campaign. Similarly to Analytics, Adobe Campaign generates two files, one with a list of ECIDs and the other with declared IDs, of recipients who qualify for the segment definition.
It goes without saying that these integrations are batch, as we are talking about files.
All AEC clients get an AAM instance, even if they do not have an AAM license. The difference is that, with the license you get the whole shebang; without it, you only get the features exposed through the Audience Library. In this interface, when you create an audience, you are actually creating it in AAM based on Analytics variables. Therefore, the Audience Library does not offer any new features compared to AAM. For the purpose of this comparison, I will ignore this capability.
The segmentation capabilities in Adobe Campaign are very different from the rest of the AEC segmentation engines (excluding AEP). In my opinion, the two most prominent differences are:
- PII. All other tools create segments based on anonymous data. So, a segment refers to visitors who have done something on the website or have certain generic attributes. On the other hand, Campaign is the only tool of the AEC where you can (and must) have Personally Identifiable Information (PII): email address, first name, last name, title, date of birth… Campaign segments are usually based on the PII data it has about the recipients.
- SQL database. While all tools use some form of database, Campaign is the only one that uses a typical SQL database. Therefore, segments that you define in a workflow will be translated into SQL queries, to retrieve the list of recipients that qualify for your conditions.
The segmentation engine in Campaign is very rich and powerful, with multiple features: query, incremental query, read list, union, intersection, exclusion… These are activities that you can combine in a workflow to end up with the exact audience that you want to target. You will have noticed that the main activity is actually called query, unsurprisingly if you consider what I have explained above.
This way of working of Campaign affects what you can do with it:
- SQL queries are batch in nature.
- The main table in the database is the profiles table, which is the only “container” you can use (as opposed to Analytics, where you have 3 options).
Adobe Campaign can share segments with Audience Manager, from where they can be spread wherever you want.
This tool also has another segmentation engine. Remember that, when it was developed by Touch Clarity, it was a standalone tool. Its segmentation capabilities are fairly advanced and you can create segments based on a wide range of data points. It even has some pre-baked segments, like “Referred from Bing”.
To me, the most interesting feature of Target segmentation capability is that it can use any segment available in the Audience Library or AAM. The source of these segments is “Experience Cloud”. The way it works is that, for every hit, Target makes a real-time call to AAM, using the ECID as the key. AAM then responds with the list of segments, which are then used by Target to evaluates which experience to show.
One interesting consequence from the previous paragraph is that Target can use segments from the rest of the AEC. However, you need to be aware of the qualification delay:
- Analytics. These segments are first exported into AAM in batch. Then, Target can use them from AAM. You could consider that these segments are from qualifications from 24h ago.
- Audience Manager. Generally speaking, on a page, Target is executed at the top and AAM at the bottom, usually through Analytics. This means that real-time in this case is the previous page. In other words, Target will only see AAM segments that a visitor has qualified for up to the previous page.
- Campaign. The same considerations as Analytics apply.
- Target. Since these segments are evaluated within Target, these are true real-time segments.
Adobe Experience Platform
If you have started to get your hands dirty with the Adobe Experience Platform (AEP), you are probably expecting a reference to its segmentation capabilities. In fact, one of the main reasons to develop this tool was to create this single place for segment management, which our customers wanted. As an approximation, you could think of AEP segmentation capabilities as a combination of all the capabilities that are present in all the other tools.
However, since AEP is such a complex beast, I have decided not to explain any more details here and not to include it in the comparison with the rest of the segmentation engines. I expect to write a blog post devoted entirely to AEP segmentation in the future.
To finalise, here you ahve a summary of the differences between segmentation engines. Let me know in the comments if you are missing any other property, so I can add it.
|Feature||Adobe Analytics||Adobe Target||Adobe Audience Manager||Adobe Campaign|
|Latency||Batch||Real-time||Real-time & batch||Batch|
|Containers||Hit, visit, visitor||Hit, visit, visitor||Hit, visitor||Recipient|
|Integrations||Audience Manager||Audience Manager||Analytics, Target, Campaign||Audience Manager|