Activation Insights
Activation Insights offers analysis dedicated to your Activation performance. This article will present you how it works and how to get the best out of your implementation.
How it works
Activation Insights merge data from various Piano products into Piano Analytics data model. To provide a comprehensive understanding of how Activation Insights work, let's break down the process step-by-step:
- Piano SDKs implemented on the application (web, mobile, ...) send events to Piano backends. These events include user interactions and other relevant data points that help track the activation journey. All those events share 2 key IDs allowing us to correlate them across different systems:
- Browser ID: also called Visitor ID, represent a unique ID linked to a specific browser. (
idclient
querystring property) - Pageview ID: this unique ID is generated for each pageview or screen view within an application and links all events that occur on the same page or screen. (
pageview_id
event property)
- Browser ID: also called Visitor ID, represent a unique ID linked to a specific browser. (
- Activation backends process these events, enrich them and send them to Piano Analytics.
- These events are then processed by Piano Analytics, which uses advanced algorithms to analyze patterns, user journeys, and interactions.
Implementation
- Javascript
- Android (3.3.0+)
- Apple
Javascript SDKs automatically share Pageview ID (pageview_id
) and Browser ID (idclient
) since version 6.7.0.
- Browser ID: you need to set the same browser ID for both Composer SDK and Analytics SDK:
- Set:
Composer.getInstance().browserIdProvider { "<BROWSER ID>" }
PianoAnalytics.getInstance().customVisitorId = "<BROWSER ID>"
(documentation)
- Get:
val visitorId = PianoAnalytics.getInstance().visitorId
(documentation)
- Set:
- Pageview ID: you need to retrieve the pageview ID generated by Composer SDK to push it in every events:
PianoAnalytics.getInstance().sendEvents(
Event.Builder(...)
.properties(
...
Property(PropertyName("pageview_id"), Composer.getInstance().pageViewId.orEmpty()),
)
.build()
)
-
Browser ID: you need to set the same browser ID and pageview ID for both Composer SDK and Analytics SDK:
- Composer:
PianoComposer(...)
...
.browserId("<BROWSER ID>")
.pageViewId("<PAGE VIEW ID>")
.execute()-
Analytics:
- Browser ID:
- Set:
pa.setVisitorId("<BROWSER ID>")
(documentation) - Get:
pa.getVisitorId { visitorId in print(visitorId) }
(documentation)
- Set:
- Browser ID:
-
Pageview ID:
PianoAnalytics.shared.sendEvent(
Event(
"...",
properties: [
Property("pageview_id", "<PAGE VIEW ID>")
]
)
)