Optimizing Data Integration: Coexisting AppMeasurement and WebSDK for Tight Timelines and Budgets
Image generated by chatgpt

Optimizing Data Integration: Coexisting AppMeasurement and WebSDK for Tight Timelines and Budgets

In today’s data-driven environment, efficiently managing and integrating event data is crucial for understanding customer behavior and optimizing marketing strategies. For organizations using Adobe Customer Journey Analytics (CJA), the seamless import of data from Adobe Analytics can significantly enhance the depth of insights and the effectiveness of their analytics efforts.

A key question that often arises is: Is it possible to perform event forwarding and data integration without a WebSDK? Can WebSDK and Appmeasurement library coexist together? especially when clients have an aggressive timeline and a budget that involves spending as little money as possible when money is tight. Even though WebSDKs offer powerful capabilities for gathering and sending event data, there are other strategies that, based on your particular requirements and available resources, can be more appropriate.

For clients with a Foundation license utilizing Adobe CJA, the Adobe Experience Platform (AEP) Source Connector offers a powerful solution for importing Adobe Analytics data into CJA. This integration leverages AEP’s capabilities to streamline data synchronization and analysis, bypassing the need for extensive custom coding or SDK dependencies.

In this blog, we’ll delve into the concept of event forwarding, the role of web SDKs in data management, and how you can utilize the AEP Source Connector to import your Adobe Analytics data into CJA. By understanding these options, you’ll be better equipped to optimize your data workflows and harness the full potential of your analytics tools.

?Addressing Common Challenges in Customer Journey Analysis

While event forwarding and integration are essential, they also address several common challenges that organizations face in customer journey analysis. Many companies encounter three primary issues that hinder their ability to perform comprehensive journey analysis:

  1. Fragmented Data Sources: Organizations often struggle with disparate data sources across different parts of their business. This fragmentation makes it difficult to consolidate data into a unified view in their data lake, leading to incomplete insights and inefficiencies.
  2. Lack of Data Expertise: Even when data is centralized, many companies lack the deep SQL and data analysis expertise required to efficiently analyze and derive meaningful insights from the data they have.
  3. Difficulty in Actionable Insights: Finding critical insights is only part of the challenge; translating those insights into actionable strategies can be complex and elusive.

Adobe Customer Journey Analytics is designed to tackle these challenges head-on. By integrating data from Adobe Analytics through the AEP Source Connector, you can overcome data fragmentation, streamline the data analysis process, and bridge the gap between insights and actionable outcomes.

Combining Report Suites with Adobe Customer Journey Analytics

One of the most remarkable features of Adobe Customer Journey Analytics is its ability to combine report suites. This functionality goes beyond simply viewing multiple report suites in a single workspace project. It allows for the merging of data at the event level across different report suites. By adding all relevant report suites into a single connection, you can seamlessly combine data using Experience Data Model (XDM), providing a unified and comprehensive view of your customer interactions.

This capability significantly enhances your ability to analyze data across various touchpoints and improve the accuracy of your insights. It simplifies the process of integrating and analyzing disparate data sources, addressing the challenge of fragmented data and enabling more effective customer journey analysis.

Each Customer Journey Analytics package comes with a set of Standard Features. Depending on the package selected—Foundation, Select, Prime, or Ultimate—additional features are provided, in the following Customer Journey Analytics | Production Description link.

Coexisting AppMeasurement with WebSDK

To efficiently integrate the existing AppMeasurement with the WebSDK library, especially for projects with tight timelines and limited budgets, follow this data flow: Begin by leveraging the current AppMeasurement setup for core analytics and tracking. Next, implement the WebSDK library to enhance data handling and enable streamlined event forwarding. The data flow starts with AppMeasurement collecting and processing user data, which is then enhanced by WebSDK for integration with various Adobe solutions and external platforms. The accompanying data flow diagram illustrates this process, showing how data transitions from collection through AppMeasurement to advanced processing and forwarding via WebSDK, optimizing both performance and cost-efficiency.


Data Flow Diagram

Tags (Client-Side):

To create a Tag property, follow these steps:

  1. Open the Data Collection interface.
  2. Choose "Tags" from the left navigation menu.
  3. Click "New Property."

Tag property

Add Tag Data Element - Ensure you include the following data elements

Non-XDM Data element

Code:

var sc_mcid = "Non-XDM" + _satellite.getVar('ECID')
window.data = {
        mcid: sc_mcid,
        pageName: "Non-XDM: HomePage",
        userId: "Non-XDM:12345",
        transaction: {
            id: "Non-XDM:67890",
        }
};
return window.arc        

ECID Data Element(DE): This data element is nested within the Non-XDM Data element. Ensure it is correctly referenced in the data element.

ECID DE
XDM Data element

Create a Tag Rule - The rule includes the following actions:

Action 1:
Action 2:

Code:

var sc_obj = _satellite.getVar('Non-XDM Data')
alloy("sendEvent", {
"data": sc_obj , "edgeConfigOverrides": { "datastreamId": "<datastream ID>" }
});        
On the datastream ID is found on the Datastreams tab
Action 3:

After including all the actions, the final rule looks like this

Tag Rule
Compile the rules and publish the library to the environment.

Event Forwarding (Server-Side):

For organizations using Adobe Customer Journey Analytics (CJA) with a Foundation license, integrating Adobe Analytics data through the AEP Source Connector provides a streamlined method for event forwarding. This guide will help you address the outlined challenges and effectively implement event forwarding while maintaining compatibility with Adobe AppMeasurement. Once the data is in the Platform Edge Network, you can activate event forwarding and utilize an event-forwarding property to send data to non-Adobe solutions.

To create an event-forwarding property, follow these steps:

  1. Open the Data Collection interface.
  2. Choose "Event Forwarding" from the left navigation menu.
  3. Click "New Property."

Event Forwarding property

To configure the datastream for event forwarding, link the new event-forwarding property to the datastream used for Adobe solutions. Follow these steps:

  1. Go to the Data Collection interface.
  2. Select "Datastreams" from the left navigation menu.
  3. Choose the datastream previously created or create a new one.

Datastream
4. Select?Add Service

5. Choose "Event Forwarding" as the service.

6. From the Property ID dropdown, select your event-forwarding property name, for example, "SR – Event Forwarding"

7. From the Environment ID dropdown, select the tag environment you are linking to, such as "Development."

Enable Event Forwarding

Create an Event-Forwarding Data Element

The XDM object configured with the Platform Web SDK tag extension will serve as the data source for data elements in your event-forwarding property. Use the same data from the tag property for event forwarding.

Note that referencing XDM fields in event forwarding requires a specific syntax. The data element path must include the arc.event prefix, where arc stands for Adobe Response Context. For instance: arc.event.xdm.web.webPageDetails.URL. Ensure this path is correct to avoid issues with data collection.

?We will create two data elements, one using XDM fields and the other using a non-XDM fields (custom data layer) to illustrate how the forwarded data is received on the server-side.

  1. Navigate to the Event Forwarding property you just created.
  2. From the left navigation menu, select "Data Elements."
  3. Create two Data Elements with path data type

1. Data Element with XDM field
2. Data Element with Non-XDM field

Install the Adobe Cloud Connector Extension

  1. In the left navigation menu, select "Extensions."
  2. Go to the "Catalog" tab.
  3. Search for "Adobe Cloud Connector" and click "Install."

ACC - No configuration is needed for this extension. With it installed, you can now forward data to non-Adobe solutions!

Create an Event-Forwarding Rule when configuring rules for event-forwarding properties, note the following differences from tag properties:

Events and Conditions:

  • Tags: Rules are triggered by a specified Event, such as "Library Loaded - Page Top," and conditions are optional.
  • Event Forwarding: Every event sent to the Platform Edge Network is treated as a trigger for data forwarding. You don’t select Events for event-forwarding rules; instead, manage triggers using conditions.

Data Element Tokenization:

  • Tags: Data element names are tokenized with a % on both sides, e.g., %pageName%.
  • Event Forwarding: Data element names are tokenized with {{ at the beginning and }} at the end, e.g., {{non_pageName}} or {{xdm_eventType}}.

Sequence of Rule Actions:

  • Actions in an event-forwarding rule are executed sequentially. Ensure the correct order of actions before saving, as these actions cannot be executed asynchronously like in tag properties.

To configure a rule for forwarding data from the Platform Edge Network to a non-Adobe solution, such as a third-party tool like Webhook, follow these steps:

1.??Obtain Your Personal Webhook URL:

  • Go to Webhook.site.
  • Find your unique URL; this will be used as the URL request in your event-forwarding rule.
  • Select "Copy to clipboard."

2.??Configure the Event-Forwarding Rule:

  • In your event-forwarding property, create a new rule.
  • Set the conditions for when this rule should trigger.
  • In the Actions section, add an action to send data to a URL.
  • Paste your copied Webhook URL into the URL request field.

3.??Validate Event Forwarding:

  • Keep the Webhook.site window open to monitor real-time data capture.
  • Test the rule to ensure that data is correctly forwarded to your Webhook URL.

Event Forwarding - Rule
Event Forwarding - Action

Verify event-forwarding rule

The data shows up on Webhook.site as soon as the request is received by the server, validate the data by visiting?URL that was used in the event forwarding rule, see the screenshots below

Custom object data
XDM object data

It's also important to note that the ECID/MCID generated by both libraries is identical and free from errors or conflicts.

ECID/MCID

Naturally, deploying two libraries affects the website's performance. With the simple setup mentioned above, the size and time of tags with WebSDK and Appeameasurement libraries, as well as with merely Appeameasurement, are displayed below

Data Collection/ Launch size and time

Server-side tagging offers several benefits

1.??Improved Performance

  • Faster Load Times: By processing most tagging and data handling on the server, it reduces JavaScript and tracking code in the browser, leading to quicker page loads and a smoother experience.
  • Fewer HTTP Requests: Centralized server-side tag management cuts down on outbound browser requests.

2.??Enhanced Data Accuracy

  • Single Source of Truth: Centralized server processing ensures consistent and accurate data handling.
  • Reliable Data Collection: Server-side collection minimizes client-side issues, ensuring more precise data.

3.???Enhanced Security and Privacy

  • Better Privacy Compliance: Secure server-side processing helps with privacy regulations by anonymizing and aggregating data.
  • Control Over Data: It maintains data control and compliance with privacy standards.

4.??Flexibility and Control

  • Efficient Tag Management: Server-side changes to tracking and data collection processes provide greater flexibility.
  • Reduced User Disruption: Offloading processing to the server minimizes user experience disruptions.

Conclusion

By implementing event forwarding and leveraging tools like Adobe Customer Journey Analytics and the AEP Source Connector, organizations can tackle common challenges faced by clients with tight timelines and limited budgets. The advanced capabilities of combining report suites and the benefits of server-side tagging further enhance data integration, accuracy, and performance. This approach not only improves data management but also bridges the gap between insights and actionable strategies, leading to more informed decision-making and optimized customer journey management.

Tyrese Cockings

Data Consultant | MarTech Solutions

2 个月

Interesting read Sainath Revankar, have you ever thought about the limitations associated with the true validation requirements associated with event Forwarding? In the sense that the AEP Debugger is the only way to validate server-side events on the Edge Network. Have you run into any issues with this tool?

Pradeep Jaiswal

Solution Architect | Adobe AEP, RT-CDP, CJA, AJO, Analytics, Target

5 个月

Sainath Revankar I enjoyed reading your article, thanks for sharing. I have a question, why did you use custom code to send non xdm data ? This could have been done exactly same as how xdm data was sent using sendEvent in the UI. I usually discourage people to use CUSTOM CODE unless there is no UI option available to handle complex logic.

回复

要查看或添加评论,请登录

Sainath Revankar的更多文章

社区洞察

其他会员也浏览了