Adobe Analytics, Google Analytics, and Matomo

The history of Google Analytics

Google Analytics is one of the most popular Web Analytics systems, and it will be our example for the course.  Google Analytics comes in two flavors, a free version that can be used until 10 million hits, and a premium version that starts with $150.000 (in 2016), depending on the number of hits sent to the Google Analytics servers. The difference between the two versions is not only the traffic, but also some features: the free version only offers aggregated data whereas the premium version lets users download raw data; also, most sophisticated features such as data-driven attribution models are only available in the premium version. Having said that, since Google Analytics is freely available, there are many training resources available on the web. The community is huge. Google did not invent Google Analytics, the product is the result of the acquisition of Urchin in 2005 (Urchin is still present when you look at so-called UTM tags where UTM means Urchin Tracking Manager).

Adobe Analytics

In contrast to this, Adobe Analytics, based on the Omniture product acquired in 2009, does not offer a free version, and it is much less a “implement tag and start analysis” solution. As a consequence, resources are scarce, and implementation is complex. Having said that, Adobe Analytics requires users to think more about what they want to track beforehand, and it’s WorkSpace feature is just beautiful. Making the switch from Google to Adobe requires a learn curve, however. This well-written comparison between Adobe and Google Analytics is important to read.


Matomo (formerly known as Piwik) does not offer all features that Google Analytics has but has the huge advantage that you don’t have to pay for the raw data and that you can host it yourself.

General concepts in all web analytics products

The basic concept of analytics is the session. A session is set to 30 minutes (which can be changed), and with every event that a user triggers or every page that he visits, the counter starts from the beginning. In other words, if a user stays 31 minutes on one page and then clicks on a link to another page on the same website, this would be two sessions (or two visits, as some people would say, although logically, this is one visit). A new session can also be started by re-entering the site via another channel. Advanced users with access to the premium version of Analytics often do not visit the Analytics site at all but perform their own analysis based on raw data.

By understanding how exactly is being measured, you will also identify a few constraints that most people are not aware of (although it is mentioned in the Google Analytics help), and these constraints are true for all web analytics systems that are based on JavaScript tags being fired. Since the script fires when a page loads, the time a user spends on a single page is measured by the distance in time between two visited pages. You visit the first page at 8 a.m. and then click on a link to another page on the same website at 8:03 a.m. You have spent 3 minutes on the site by now. If you spend 2 minutes on the 2nd page and close the browser window after reading the page, you have spent 5 minutes, but since you have not requested another page, only the first 3 minutes have been measured. As a consequence, time on site basically is the average of the time spent on the website minues the last page because it cannot be measured (in fact, it could be measured, but most website owners don’t do that for good reasons).

Similarly, bounce rate is not the rate of users who “immediately” leave the site after entering it but users who come to your site and only see one page, no matter whether it is 5 seconds or 30 minutes. Although this can be changed (“Adjusted Bounce Rate”), this is rarely done although it provides valuable information.

Another important concept of Analytics is the existence of events, e.g. the DOM being completely loaded or a timer that fires a specific action after x seconds. This allows us, for example, to implement an Adjusted Bounce Rate since the event basically checks if the user is still there after x seconds.

Testing an implementation

There are several ways to test an implementation. Google offers the Tag Assistant, a Chrome extension that shows an overview of implemented tags and also recordings of tracked elements while interacting with a site. Another approach is to monitor the network traffic in a browser and see what information is transmitted to Google Analytics in a server call.