Page views, unique visitors, bounce rate, session duration. These are the most common metrics when measuring engagement on a website. The issue is that these metrics only scratch the surface when trying to understand your audience and qualify your content.

For content-heavy websites more data is needed if you want to measure a richer engagement level. Did the visitor read all content or only the first paragraphs? Of all time spent on a page, how long was he interacting with it? Answering these type of questions gives us more knowledge about our audience content consumption patterns and, therefore, ability to make better decisions.

At Nonlinear, we wanted to better understand how visitors were consuming our blog content. We started with measuring users’ scroll behaviour, using a script created by Justin Cutroni that collects the data and sends it to Google Analytics using Universal Analytics. 

This is an example of how the code works:

bottom = $(window).height() + $(window).scrollTop();
// If user starts to scroll send an event
if (bottom > readerLocation && !scroller) {
    currentTime = new Date();
    scrollStart = currentTime.getTime();
    timeToScroll = Math.round((scrollStart - beginning) / 1000);
    if (!debugMode) {
        ga('send', 'event', 'Reading', 'StartReading', pageTitle, timeToScroll, { 'metric1': timeToScroll });
    } else {
        alert('started reading ' + timeToScroll);
    scroller = true;

With this script we could track the following events:

  • Page loaded

  • Scrolled down more than 150px

  • Scrolled to the end of the content
  • Scrolled to the end of the page

This extra data enabled us to rank the posts that were more engaging rather than just highly visited, and make content prioritizations based on this information.. Within Google Analytics, we are able to see the percentage of visitors who read to different points of completion using the Event Actions report, and which pages generate the most events using the Events > Pages report. 

Taking engagement measurement to the next level of granularity

There are other JS libraries that offer various approaches to capturing page-level events. Another example would be the ReadJS library (here on Github). ReadJS is a more modular and scalable library, that supports any type of integration, not only Universal Analytics.

The next level

At this point, we are tracking some key interactions at each page and sending it to Google Analytics to improve how we rank our content. What if we could use that information to qualify each visit to our website? If you’re using Sitecore this is easy (if not contact us and we’ll tell you what you’re missing). 

Sitecore’s Engagement Value is a feature of the Experience Database that measures visitor engagement (via actions that indicate trust or commitment) as a way to measure success and trigger automated targeting. In other words, the broad goal of our website is to share our knowledge and services and, ultimately, get people to contact us. Based on that we can assign points for key actions that tie in to a specific goal, like this:

  • Scrolled down more than 150px – 5
  • Scrolled to the end of a blog post – 10
  • Shared a page on a social network – 25
  • Commented on a blog post – 50
  • Submitted a Contact Us form – 100

That tells us a lot more about how engaging our content and website are instead of just counting page views and tracking scroll, right? The goals and points definition are part of the strategy process and are unique to each website.

All you need to do use the Engagement Value is assign goals for Sitecore items and for Javascript captured events make a simple Ajax call. To know more about how this works check the article Sneaky ways to assign engagement values in Sitecore.

Now we have a detailed profile of each of our visitors and how engaging our website is. Isn’t that the dream of every marketer? Instead of relying on just the page views you can easily tell which part of the website is driving more engagement and triggering more conversions.

Have fun with improving your organization's engagement measurement and let us know if you need any help.

comments powered by Disqus