๐Ÿ“ˆMonitoring Engagement with Toucan Analytics

Why Toucan Analytics ?

How do you measure the success of a reporting application? How do you compute the ROI of the investment in such a tool?

Usage is a key metric.

  • What proportion of your users connect to the application on a daily / weekly basis?

  • How long do they stay there? And what do they use the application for?

During the deployment phase of your platform, analytics will allow you to:

  • identify enthusiast users

  • analyze those that do not connect during the first week

This gives you a lot of information to focus your communication and pedagogy efforts on specific BUs / regions / etc.

During the run phase analytics will help you:

  • keep an eye on the evolution of the user needs

  • test the impact of new data stories your release

  • enhance your app by working on the least viewed stories

Note

Need help to animate your app & increase its usage ? Weโ€™re here to help !

What are Toucan Analytics ?

Toucan Analytics is a Toucan app that can be added on your platform.

The application can analyze the usage on one, several or all the applications of your platform.

You will be able to focus on last week usage or what happened since you launched the app as well as look at user behavior evolution. You will have a global overview of the usage or could zoom in to a particular user or story.

There are different tools that allow to track users behavior on website, but after deep analysis we decided to use Mixpanel to collect usage data.

What can I see in Toucan Analytics ?

Data are collected from Mixpanel, from 4 events :

  • Instance_login : The user is connected to the store via the login-page or a link that allow him/her to access the store directly

  • Smallapp_login : The user is connected to a specific app on the store

  • Story_opened : The user opened on a specific story

  • Home_opened : The user opened the home

From there we are able to analyze the following information:

  • Number of connection by user

  • Duration of connection by user

  • Stories visited by user

  • Home visited by user

  • Applications visited by user

  • Store connections by user

  • Device, operating system and browser by connection

Set up analytics for your app

Analytics premium app is a paid feature that requires our action to be setup.

Itโ€™s very easy to do so, just contact your Advocate for pricing questions and setup.

The freemium version of the analytics app is available by default on all app store.

Configure a custom analytics provider for a small app

You can add any javascript code in an asset, and then reference it in the customJS field in the front_config. You can use that to load any tracking code you would like to add to a app. However, this will be only executed once, when the user loads the small app page.

For example, letโ€™s say your tracking code looks like this, in a file called my-custom-tracking.js:

function initAlayticsProvider(id) {
 // ... Initialization code
}
let myAnalyticsProvider = initAlayticsProvider('my_id');
console.log('Initialized custom analytics');
myAnalyticsProvider.sendEvent('hello');

You can then drop it in the small app custom assets, and reference it in the front config:

customJS: [ 'my-custom-tracking' ]

To track users behavior with more granularity, we call a specific hook window.tcAnalyticsEventHook at each trackable event. You can put any action you would like to execute there.

Example:

initAlayticsProvider = // ... Initialization code
sendPing = initAlayticsProvider('my_id');
console.log('Initialized custom analytics');
window.tcAnalyticsEventHook = function(event) {
  console.log('Sending event', event);
  sendPing(event);
}

Here are the different event values:

{ // When changing any page
  hitType: 'pageview'
  url: <url>
}
{ // When changing report
  hitType: 'event'
  eventCategory: 'Small App report'
  eventAction: 'set report'
  eventLabel: <smallAppId>
  eventValue: <reportId>
}
{ // When changing slide
  hitType: 'event'
  eventCategory: 'Small App slide'
  eventAction: 'set slide'
  eventLabel: <smallAppId>
  eventValue: <slideId>
}

Last updated