Multi-Touch Attribution with Google Analytics
It is well known that Google Analytics relies on last touch campaign attribution. In short, this means that conversions and transactions are attributed to the most current traffic source of the visit (i.e. the ‘last touch’). It goes without saying, but you should read Avinash Kaushik’s Web Analytics 2.0 (attribution models are discussed chapter 12) if you haven’t done so already. It’s a great intro to the issue at hand. Additionally, there has been lots written about this already, with a number of different solutions given for how to overcome the limitation in Google Analytics. After many hours of scouring the web, I must admit that I didn’t find a solution that adequately met my needs for Google Analytics.
To be fair, I just came across http://www.multitouchanalytics.com/ which uses it’s OWN cookie to pass data into GA using event tracking (use a 2nd tracker so you don’t skew your bounce rate). I’m interested in trying it out. I especially like how YourAmigo has a number of out of the box reports that automate a number of attribution models. Very cool.
Also, what we’re about to see here isn’t really an attribution model. The *value* assigned to the first touch, middle touches, and last touch aren’t addressed here. What this post does address is the lack of visitor level data in GA. Using the method below, you’ll be able to IDENTIFY all of the touches that bring visitors back to you site. So while branded keywords may indeed be the best converters on your site, wouldn’t it be nice to know how many of those visitors first visited your site after clicking on a PPC ad?
In any case, here’s how I push VISITOR level data back into GA (which of course can and should then be sliced and diced via advanced segments and custom reports – yummm!!!).
The UTMA Cookie.
Google provides an excellent introduction to the cookies that GA uses here. If you are new to the cookies, definitely watch the presentation. Here is a screen cap of the __utma cookie info. ( © 2008 Google)
The UTMA cookie is central to a TON of the reporting in Google Analytics. Visitor Loyalty, Visitor Recency, Days to Purchases, Visits to purchase, etc etc… all of these metrics rely on this visitor level cookie. As can be seen in the image above, every visitor who comes to your site is assigned with a random unique ID.
A lot of inspiration for my method comes from Allaedin Ezzedin. I also give a huge thumbs of to Danny Ng for his method of parsing GA cookies. While I am quite familiar with the GA cookies, I’m by no stretch of the imagination a Javascript Ninja (yet). However you choose to parse your cookie, the main idea is to push that unique ID back into Google Analytics via custom variables.
_setCustomVar(1,”Visitor”,UniqueId,1)
Example Reporting
In this custom report, I’ve chosen the first dimension to drill down on the individual visitor, followed their visitor session count (the last digit in the UTMA cookie).
While the most powerful data-mining is for sure to be done via the Google Analytics Export API, using Analytics Pro’s Dimensionator can yield tremendous insight as well – data that was previously not available in Google Analytics.
Here I see that this visitor bought something on their third visit to the site, chatted with an operator on their next visit (the same day), and then came back and made another purchase 4 days later.
While in the example above I chose the date as the second dimension, I can obviously choose the Source / Medium / Keyword / Campaign / etc etc. Again, the Export API is a must to really get a handle on this sort of data.
What about Personally Identifiable Information (PII)???
***Disclaimer*** I am not a lawyer.
There is always a lot of chatter in the Analytics Community about PII and Google Analytics Terms of Service. Indeed, Google Analytics natively does NOT provided visitor level data (although Urchin does – hmm…?). So is this a violation of the Google TOS?
As far as I can tell, I don’t think so. There is nothing about the obfuscated unique visitor ID in the UTMA cookie that is “personally” identifiable. It isn’t a phone number, email address, social security number, IP address, or name. In fact, it is a lot LESS personally identifiable that then Transaction ID that almost all ecommerce stores are passing into GA when they record a sale (the trans id can be looked up by a store to determine which sale it was – name, address, and all). So while I’m sure that any method that allows this level of granular tracking will ruffle some feathers (hopefully it doesn’t anger the GA folks), I honestly do not believe that it is problematic and many existing Analytics packages have visitor level tracking available.
Fabien DUTRIEUX says
Hi Yehoshua, thank you for this detailed post.
You said “After many hours of scouring the web, I must admit that I didn’t find a solution that adequately met my needs for Google Analytics.”.
I think “Mazeberry Express” can be an interesting tool for you. It’s an attribution solution based on Google Analytics data.
Feel free to try it during 30 days: http://www.mazeberry-express.com.
Fabien
Yehoshua Coren says
Hi Fabien,
Thanks for commenting. I want to point out that at the time of your comment this post is now approaching two years old. Google Analytics is releasing their attribution modeling feature to all users this year. So yes, this post is beginning to show its age. 🙂
Btw, do you work for Mazeberry?
Yehoshua