Enhance Google Analytics with Super Cookies

Google Analytics mechanics are quite different to Omniture Stie Catalyst, for Google Analytics many of the calculations such as pages per visit, first visit, last visit, etc are stored in cookies, they are not calculated on the server side. Additionally the visitor ID is not necessarily the same for a given user, it isn't used to tie information together, instead Google Analytics relies on your cookies telling the truth. The problem is that cookies inherently only ever tell partial truths, the attrition rates are huge, so how can you trust this information? The answer is you can to a point, but be aware of what you're looking at, because its far from perfect. If you want to make it more accurate, then use super cookies. This post is aimed to touch on several of these areas where we think flash can add major value to existing Google Analytics solutions. We've already covered the super cookie technology in a previous post, so we won't dwell on the basics, if you need some more background please read the previous post:

Examples of Super Cookie additions to Google Analytics deployments
  1. Flash based persistent cookies work across multiple domains and multiple browsers - Use super cookies to re-set targeting and other custom variables across your network of domains, in any browser.
  2. Cookie deletion measurements - Find out how often do your existing users delete their standard cookies?
  3. Browser switching measurements - Do your users switch between multiple browsers? How does this affect your analytics?
 
Which browser? Who cares!!!
1. Super persistant cookies
For those wanting to get better accuracy from google analytics, or if you're using the Google Analyitcs custom variables for targeting and reporting, this is for you. 
Persisting the profile - In order to keep the rich information on your users no matter whether they delete cookies or switch browsers, you have two main options:

a) Respawn their past GA cookies before loading GA - All their profile information is associated with their visitor ID. By reseting this to it's original value (stored either prior to cookie deletion, or from a previous browser), their profile remains intact. This method can also help you to keep more realistic figures on unique visitors as long as you can replace the visitor ID prior to sending any requests to Google. Although this gives the smoothest operation, the privacy issues are obvious and must be addressed. 
b) Keep a copy of targeting parameters in a super cookie - If you detect a cookie deletion, resend the the parameters to Google Analytics so they can be re-bind them to the new visitor ID. This is a little more privacy friendly, as you're allowing the user to remove association to a specific ID, but their profile remains. You no longer know who they are, but you still know a little about them to help serve them better.

2. Cookie Deletion Measurements
If you grapple with privacy concerns but are still desperate to know how many of your users delete their cookies, then you can use this method to find out without fear of privacy invasion. This technique is useful for adjusting data inaccuracies caused by cookie deletion. 

Super cookies remain after users delete their standard cookies. Because flash cookies are not currently dealt with by browser settings (Chrome has some functionality), or understood by consumers, they are rarely deleted (assume this will increase in the future). By comparing the super cookie value to the standard cookie value, you can quickly tell if a previous value existed and has since been deleted. The high level logic is found below (note: this over-simplistic and does not allow for browser switching, see section 3!). The following pseudo code would actually be done in JavaScript:

IF standardCookie(a) is not equal to superCookie(a) AND superCookie(a) is not null THEN
{
LOAD GA CODE
Set custom variable to indicate a cookie deletion
SEND GOOGLE REQUEST
} ELSE {
LOAD GA CODE
SEND GOOGLE REQUEST
}

The above logic would enable you to see several things including:

a) The total number of cookie deletions (using the prop or event)
b) Conversion rates of users who have deleted their cookies vs those that haven't (using the custom variable). Note: This is particularly useful for Targeting, where profiling enhances conversion. You can directly measure the uplift of normal users compared to users post cookie deletion.

3. Browser Switching Measurements
Many people now use multiple internet browsers for a variety of reasons, evaluation, different features, old bookmarks and probably most importantly, technical issues. The problem for analysts is that traditional cookies are browser specific, so each browser appears as a different user. Super cookies can quantify this issue. Super cookies provide the capability to keep a cross browser profile that remains even if a user uninstalls a specific browser and switches to a completely new one, but for the purposes of the exercise we are only looking to quantify the issue.

To create this capability the following logic can be used. Again this would be written in JavaScript. 
IF current browser is not equal to superCookie(browser) THEN
{
LOAD GA CODE
set custom variable "browser A > browser B"
SEND GOOGLE REQUEST
set superCookie(browser) = "browser B"
ELSE {
LOAD GA CODE
SEND GOOGLE REQUEST
}

The above logic would enable you to see:

a) Which browsers people are switching from/to. This can help you plan future testing resource allocations, etc.
b) Which pages browser switches are commonly associated with (above logic does not show a direct correlation to a specific page, but you can store the final session page in the super cookie and use that to see if the user has made a browser switch on the same page, which may indicate a browser issue).
c) How many browser switches have occurred (set the variable to be page specific)
d) How many users use multiple browsers (if you keep a common visitor ID across multiple browsers)

Hopefully this article has helped to show you how super cookies can be used to improve your Google Analytics deployment accuracy. For actual code examples, please see our original super cookie post or download the zip file below. For any questions or enquiries, please contact us at insights@datalicious.com

 

 

Use Google Analytics custom variables and simple JavaScript to target site content in real-time

I was reading this on another blog earlier today and thought it was worth passing on. In essence Google Analytics have provided a function to read the custom variables for targeting purposes. Although this is essentially nothing more than being able to read a cookie and use it to segment and target page content, it's nice to be able to use the same variables used by Analytics, as the targeting immediately has context in reports.
 
If you already use the custom variables (index 1-5), you can now use the following function to read the value and switch out content using some simple JavaScript.
 
_getVisitorCustomVar()
 
_getVisitorCustomVar(index)
 
Returns the visitor level custom variable assigned for the specified index.
 
pageTracker._getVisitorCustomVar(1); 
 
Parameters
 
Int index The index of the visitor level custom variable.
 
Returns
 
String The value of the visitor level custom variable. Returns undefined if unable to retrieve the variable for the specified index.
 
Read the original blog post from Michael Whitaker here or check out the code reference in Google's help section if you want to find out more.

Automated marketing dashboards with data from multiple channels including web, retail and call center

Are you and your team still spending more time compiling reports in Excel than actually analysing them and taking action? Would your company benefit from an automated dashboard solution that mashes up and visualises data from all your various channels including online, retail and call center?

Check out the screen shots of our sample multi-channel marketing dashboard below and you will get an idea how powerful single source reporting with data from multiple channels can be.

Email us at insights@datalicious.com if you would like to get access to our live sample dashboard below and we will email you the login details (and maybe a polite follow-up later on).

Please note: The data and reports are currently still hosted on a demo server which is also used for data crunching so load times might be a bit slower sometimes. In a live scenario the dashboards would be hosted on a dedicated server to guarantee optimal performance at all times.

Or check out our recent article on open source column based databases if your company still needs a high performance data warehouse solution to power its business intelligence platform.

             
Click here to download:
Tableau_marketing_dashboards_t.zip (1057 KB)

Omniture Site Catalyst and Google Analytics custom variable comparison

Many online businesses don't really need the complex capabilities of Omniture Site Catalyst, Google Analytics is good enough to meet their requirements, or almost good enough. Omniture's custom variables are very powerful, but i would think the average utilisation that i observe (when we're not setting it up!) is less than 10%, which is interesting considering the cost. I've experienced the frustration of Google Analytics limitations, but I can also appreciate that for free it is a pretty nice piece of software. Both have their rightful place, so I thought it would be appropriate to illustrate the differences you need to consider before deciding which to deploy.

One of the interesting features of Google Analytics is the custom variable, which can be set to any value and then later used for custom segmentation. The functionality of this variable is different to Omniture though and unlike with Omniture's variables, it is not configurable. The key difference is is the way the value sticks. With Google, although it can be changed during a session, the value associated with reports does not change for the rest of that session, so it can effectively only be one value per session. If it's changed again during that session, subsequent sessions will reflect this new value, but the current session will not. For some things this is ok, but for other applications it is quite frustrating.

Summary of key characteristics

Omniture Variables

- Can be related to pageviews (i.e. they don't have to stick). These are called props
- Can be related to success events, like purchases, registrations. These are called eVars
- Can change during the session (or not if you prefer, first or last setting can be configured)
- Can be made to expire
- Can be configured to be stacked (this stores a sequence of values)
- Many variables available, so you can customise lots of different things at the same time

Google Analytics Variable
- Cannot change during a session (can change between sessions)
- Can be stacked using javascript
- Has nice custom segmentation tools which are easy and instant, unlike Omniture ASI segments

Which to choose?

If you have the cash and the resources to use Site Catalyst properly, their custom variables are far beyond Google Analytics, the two aren't even close. If you also consider many variables are important to your business, then Google will probably not get you where you need to go. But if you just want standard usage information and possibly only require one variable to perform some basic segmentation, then Google Analytics is for you. You can also stack the custom variable, which will buy you a little extra capability, but it's pretty clunky. If you need some advice, drop Hamish a line at hogilvy@datalicious.com.

Aussie: Custom web analytics implementation covering Google Analytics and Atlas ad server tags

Challenge

Aussie engaged us to review their web analytics set-up including Google Analytics and Atlas ad server tags prior to a major website re-launch. Key shortcoming of the existing implementation was the lack of conversion goals and actual dollar values, preventing Aussie from measuring return on advertising spend across paid and organic channels.

Solution
 
During the project we used the standard Google Analytics set-up process to configure conversion goals but also introduced new custom page views triggered on-click to track conversion goals on 3rd party forms which traditionally were thought to be outside of Aussie’s control. This solution enabled a full view of the value Aussie’s website and online campaigns were generating for the business.
 
Using filters and custom segments populated with data from online forms, we were also able to break the so far anonymous website traffic up into visitor segments delivering more granular insights on campaign responses and website usage. Additionally, a new code architecture was implemented, introducing a central JavaScript file that now controls all Google Analytics as well as Atlas ad server tags thereby significantly reducing required code maintenance effort.

Testimonials
 
“We were seeking a custom, integrated approach for our web-based data tracking and data management needs. From the get-go, the team at Datalicious were insightful, knowledgeable and willing to provide a solution tailored to our needs, not theirs. At every stage of the process Datalicious was willing to work closely with us, not just providing the solution, but also actively allowing us to understand and help develop the solution. Their entire team was very friendly, trustworthy and professional and I would recommend them to anyone with similar needs to ours.” Richard Frey, Web Producer.