Understanding CJA Sessions

13 Jul 2025 » Platform

One of the comments I received in my last blog post asked for more details about CJA sessions: tips, tricks, and pitfalls. That was a very good question and, since I have it fresh in my memory, I decided to write about it immediately.

Your Definition

With Adobe Analytics (AA), the definition of a visit is set in stone by the industry. Remember that AA was designed to measure web traffic, so adopting a de facto standard makes a lot of sense. This has a few consequences:

  • You can compare the reports from multiple web analytics tools, as all should render similar results.
  • Unless you use Virtual Report Suites, you have no control over the visit metric.
  • If you shoehorn non-web and non-app events into AA, your visit metric may become totally useless.

Now, with CJA and as I explained in my previous post, you define a session, so you should know what it is and how it behaves. You have some freedom to define when a visit starts and when it ends, so it aligns with your needs. However, this also means that you have to always remember your definition of session. As the saying goes, with great power comes great responsibility. Choose wisely!

It is also worth reminding that this definition can vary by data view.

Know Your Data

In AA, the data sources are always very well known: web and app. We have been tracking page views for more than two decades, and we are pretty confident we understand them.

With CJA, there can be many data sources, and very different. Before you combine all the events in a single CJA connection, and before you define the session, you need to understand these events. Let’s see a few examples:

  • Web + app clickstream. As I have explained, we are all very familiar with them.
  • Phone calls. You could get only one event per call, one event at the beginning and one at the end, one event every second the call lasts, one event per topic discussed, one event every time someone speaks… In general, these events will have only a few attributes. However, seeing what AI can do, you could extract some metadata from the conversation and include it in the events. I am thinking information like the topic and the tone.
  • Email interactions. These events are also fairly standard: sends, bounces, opens, clicks, unsubscribes, and a few others. However, some of these events are very unreliable. For example, many email providers do not report bounces or opens.
  • Purchases. This data source will be very common in retail, with purchases coming from brick-and-mortar stores, app, web, 3rd parties, call center, and maybe other places. With purchases, you can also get other additional events like returns or failed purchases (e.g., declined credit card).
  • B2B interactions. Now that CJA B2B has been released, a whole new set of events could flow to CJA: meetings, webinars, LinkedIn messages, and many more.

It is obvious that each of these sources has different patterns. Some could have multiple events in a short period of time, whereas others will only be single events. We can all agree that the concept of session is different for each source. However, since you will likely combine these data sources in a single connection, you may need multiple data views, each of which with its own definition of session to satisfy your needs. There are two broad options:

  • If the sessions have a short expiration, you will get many sessions. Every website visit, purchase, email sent, and phone call will generate one session, which will have a low number of events.
  • With long expirations, sessions will include events that are very far apart, losing granularity. The total number of sessions will go down.

It is important to clarify that there is no right or wrong. It is all about you, and how you want the data to be processed. This also means that you cannot say “I’m not technical, I don’t need to understand the data.” You must know well how your data looks.

More Than a Visit

Consider the following potential scenario:

  1. A user is using your app.
  2. A certain interaction with the app triggers an AJO journey.
  3. In the journey, an email is sent to the user’s email address.
  4. The user opens, reads, and clicks on an email link.
  5. The user lands on the website and tries to do a transaction.
  6. An issue prevents her from finalizing the transaction and she starts a chat with your customer support team.
  7. The issue is resolved.
  8. The user finalizes the transaction online.

How many data sources do we have here?

  • App clickstream
  • Email interactions
  • Web clickstream
  • Chat interactions

With CJA, all the touchpoints of the user with your company can become part of the session. The important word from the previous sentence is can, as it is up to you to decide which data sources you include in CJA and when a session starts. Not only that, you can decide when a session ends. Do you want to wait for all 8 steps and make them one session, or do you want to split the session into two or three, if the user takes a few minutes/hours/days to read the email or if the user finalizes the transaction some time later?

Keep in mind that a session can be triggered for a wide variety of reasons: an email send, landing on a website, placing a call… It is definitely more than a website visit.

Does Session Make Sense?

I have two uncomfortable questions for you:

  • What do you need the session metric for?
  • What value is this metric bringing to you?

Again, there are no right or wrong answers, just your answers. It may well be that a session is totally meaningless to you or, even if it has a physical meaning, you are not going to do anything with this metric. In this case, just stop using it.

I would argue that there are some cases where this metric is objectively useless. For example, if you are generating an Adobe Journey Optimizer (AJO) report in CJA using the journey step dataset, even if you can generate a session metric, it has nothing to do with customer interactions. At best, it will show how AJO is working internally.

However, before you throw away the session metric or before you settle on one definition, you may want to try out a few options. A data analyst should be able to help you. Remember to delete the data view that you are not going to use, so that nobody uses it.

Do Not Compare with Adobe Analytics

Last, but not least, even if you think that you have re-created the AA visit definition in CJA, do not expect to get the same results in both tools, especially during the transition. There will always be a discrepancy, no matter what you do. Believe me, I have worked in the past trying to marry metrics coming from different ways of processing the data and it is impossible to get to 100% alignment.

I am not saying that you should not even look at these metrics side by side. AA will give you a ballpark number that you should expect in CJA. However, other than that, any other similarity will be pure coincidence.

 

Photo by Krisztina Papp on Unsplash



Related Posts