Expand my Community achievements bar.

Announcement: Calling all learners and mentors! Applications are now open for the Adobe Analytics 2024 Mentorship Program! Come learn from the best to prepare for an official certification in Adobe Analytics.

Is your mobile app analytics Platform-ready? If not, let's “Bridge the Gap!”

Avatar

Employee

5/28/24

By: Luc Forgeron & Prachi Jain

The Landscape 

You love your Mobile Adobe Analytics (AA) implementation! You have worked hard to get your app data to match that of your web properties. You are enjoying the fruits of your labor in deriving key insights into your digital business and understanding how your customers use your apps. Now you need to activate upon this data in a platform setting to satisfy your “personalization-at-scale” objectives, so what do you do next? In other words, if the "what" that you collect from your mobile Adobe Analytics implementation is in a great spot, but you are not sure “how” to get that data into Platform, this is the blog for you.  

Edge Data Collection via the Web SDK or AEP Mobile SDK is the backbone, heart, and future of the new Adobe ecosystem for streaming data. While many organizations have already migrated their web analytics to AEP Web SDK, pivoting to a new native application data architecture is an important next step to future-proof your client-side implementation, but can be time consuming and a challenging lift for your app developers. We can help you get there in less time than you think using Edge Bridge to migrate your existing Adobe Analytics solution through the Edge network. 

The Use Case 

You need to migrate your streaming mobile data to Platform just like you have done with the Web SDK (and offline) data for (1) real-time segmentation/audience-building using Customer Data Platform (RT-CDP), (2) to orchestrate marketing and transactional campaigns using Journey Optimizer (AJO), and/or (3) to send data to Customer Journey Analytics through the Edge Network. 

The Opportunity 

Your current gap lies in the fact that your valuable mobile experience event data is being sent directly to Adobe Analytics Data Collection servers for consumption in Workspace, but you need to get that data to Adobe's Experience Platform Edge servers in parallel so that you can use it in real-time for the above use cases and beyond. How do you “bridge” the gap? 

 The Options 

  1. New AEP Edge SDK Implementation using Edge.sendEvent calls.
  2. Edge Bridge for Edge SDK 

The Solution 

Using the first option to rewrite your data dictionaries client-side in your native apps can be a bit of a tough sell, especially if you have recently done the lift to get your mobile data in good standing and you are on the latest Analytics Mobile SDKs, typically using Context Data Variables to seed your reports. In this case, your developers have already done significant work and the thought of re-implementation might be contentious, to put it politely. Going the route of a full Edge Implementation by sending sendEventAPI calls instead of track calls, while having to change out your context data for XDM objects, only to then be transformed back into eVars, props and success events in order to be compliant with Adobe Analytics, is, well...a tall task.  

forgeron_0-1716907888130.png

Edge Bridge to the rescue! 

The Edge Bridge SDK for iOS & Android is a much lighter lift (mostly server-side changes), and it is just as it suggests – a “bridge” between traditional Analytics and Edge implementations. This pass-through functionality will convert what you have currently configured and transforms it into a format that can be accepted by the Edge Extension and sent to the Edge Network. It also converts everything to the Analytics format, automatically! 

forgeron_1-1716907888130.png

This is a great way to jump into Edge Data collection without touching your client-side native data dictionaries. This SDK essentially replaces the Analytics SDK in your mobile build and re-routes your trackAction and trackState calls to the Edge. You can follow this handy Tutorial (iOS & Android) to see how it's done! NOTE: Many of Adobe’s customers use this Helper Extension to address immediate AEP use cases within a subset of data, taking any pressure off development teams who may need more time to perform a full implementation. Your developers will thank you! 

 The Takeaway 

Using the Edge Bridge helper SDK is a great entry point into Mobile Edge data collection, enabling your organization to quickly get up and running with platform use cases while seamlessly maintaining the integrity of your established Adobe Analytics Workspace reports. Much of your reserved Analytics variables will be automatically mapped back to their reports in Analytics without additional server-side manipulation. At the same time, getting your data into XDM compliance is an important way to streamline your wholistic data architecture across Experience Platform. Having this data in a common vernacular is a much more optimal way to combine online and offline data, while enriching your customer profiles across devices. 

Technical Considerations 

1. “Data” is for Experience Cloud and “XDM” is for Experience Platform: Since your move to the Edge Bridge SDK transforms your track calls into sendEvent calls, your data remains in a state that is consumable by Adobe Analytics for continued, uninterrupted analysis and reporting. In this case, the Edge Network automatically maps these data variables to Adobe Analytics without additional server-side configuration, using the “data” object.

lucforgeron_0-1716993657959.png

2. Event Type:  The Edge Bridge will automatically assign the "eventType": "analytics.track" value to the payload, but consider mapping more granular values by using these known values, which can be especially beneficial when working with Adobe Journey Optimizer activation channels, such as Push Notifications, SMS or Email.

3. Using Data Prep for XDM transformation: Always send or map to semantic XDM in Platform, using automatically-mapped variables. You can modify the data by using Analytics functions in data prep to extract merchandising events and analytics variable from the Product string or for any other custom use cases.

4. AEP Assurance: Use this validation tool instead of Charles to QA your implementation. Since your Edge implementation includes features to manipulate data server-side, we will not see the changes when using the Charles Proxy. Assurance allows you to view events and mappings, where you can use the validation editor to create validation scripts, while also viewing context data transformed at the Edge. These features will be extremely helpful for validating your implementation! 

forgeron_3-1716907888131.png

Gotchas 

  • Install the latest dependency code for Edge Bridge SDK, Edge, Edge Identity. Upgrade the existing dependency code to latest versions. 
  • Tags Extensions: Keep the Analytics Extension installed in the Mobile Tags Property to ensure published versions of your app (pre-migration) continue to work seamlessly. 
  • Mobile App SDK Configuration: If the Adobe Analytics SDK Dependency code is not removed from the mobile app, track API calls and Lifecycle counts will be doubled in Adobe Analytics reporting. 
  • Lifecycle Metrics: Many Adobe users have noted that they prefer to have better control over turning Lifecycle metrics on and off to suit their needs. As such, the Adobe Mobile Product team has designed the Edge SDK with this flexibility in mind, sending app foreground and background events, while providing the option to set a rule in Tags (Data Collection) to forward these events to the Edge Network. 
  • Data Object takes precedence over XDM object: If you have both Data and XDM objects sent in the Edge Network payloads, the Data object will be translated before that of XDM. 
  • Updating Identities: If you have an authenticated user experience, use the updateIdentities API to set your authenticated ID as the Primary Identifier in your Identity Map. In the absence of this specification, your ECID generated by the Mobile SDK will be set as the Primary ID. Equally, use the removeIdentity API to remove any set authenticated IDs when a user logs out (do not remove the ECID in this call). 
  • User Consent Preferences: If the app has consent requirements, you must install the Consent Extension. Edge Bridge still uses the Edge extension and all the underlying code to make the network request. Thus, you will need to include Edge, EdgeIdentity and Consent for Edge Bridge to work. 

Other Handy Links 

Edge Bridge migration docs: 

 Data Prep tutorials: 

Conclusion 

In a mobile-first world, there are many benefits to getting your app data Platform-ready and you have options for getting this done within the parameters of your organization’s use cases, bandwidth and sprint schedule. Using the Edge Bridge SDK may be your best solution for easier and quicker Edge integration, getting you up and running 85% faster than a full Edge implementation, speeding up your time-to-value while maintaining seamless reporting in your established Adobe Analytics dashboards. Any possible friction between mobile marketers and developers is all “water under the bridge” as you work together to start delivering world-class personalization-at-scale and delighting your customers with great digital experiences! Have fun knocking it out of the park!