Zendesk analytics tracking
Introduction
Starting with version 2.34.0, we collect anonymous data on end user interactions to help us improve the overall user experience. This includes anonymous interface interactions such as button clicks and other engagement events.
To support user journey analysis, we also gather a unique session identifier (SUID) that enables event tracking while keeping the user’s identity anonymous.
Zendesk analytics tracking is enabled by default in the SDK. However, it can be disabled in the following ways:
During SDK initialization
Set enableAnalyticsTracking to false in the successCallback when initializing the SDK to disable Zendesk analytics tracking.
Kotlin
Zendesk.initialize(context = this,channelKey = "<your_channel_key>",successCallback = { zendesk ->// Handle success case// Disable Zendesk analytics, enabled by defaultzendesk.messaging.enableAnalyticsTracking(enabled = false)},failureCallback = { error ->// Handle failure case},messagingFactory = DefaultMessagingFactory())
Java
Zendesk.INSTANCE.initialize(this,"<your_channel_key>",zendesk -> {// Handle success case,// Disable Zendesk analytics, enabled by defaultZendesk.getInstance().getMessaging().enableAnalyticsTracking(false);}error -> // Handle failure casenew DefaultMessagingFactory());
After SDK initialization
You can enable/disable analytics at any point during the app user journey after the SDK initialization (for example, when opening the SDK) by calling:
Kotlin
fun showMessaging(context: Context) {// Disable Zendesk analytics, enabled by defaultZendesk.instance.messaging.enableAnalyticsTracking(enabled = false)Zendesk.instance.messaging.showMessaging(context)}
Java
public void showMessaging() {// Disable Zendesk analytics, enabled by defaultZendesk.getInstance().getMessaging().enableAnalyticsTracking(false);Zendesk.getInstance().getMessaging().showMessaging(this);}
Demo App
You can find a demo app showcasing this feature in our Zendesk SDK Demo app github.