Google Analytics allows you to track user interaction “events” independent of a page view, such as file downloads or video plays. The website developer needs to embed code to track these events, and Google gives them a lot of freedom over how the various parameters can be used. The dimensions and metrics used to track these events have a few odd behaviours that can be confusing. In this article, we’ll look at the common problems people have with the Total Events and Events/Session With Event metrics.
The image above shows the Google Analytics Events Overview report for a single test session that involved 15 events. As you can see, only 9 are being reported. The reason for this is simple: not all the events were populated with Category values.
Unlike many dimensions in Google Analytics that will display “(not set)” when values are empty, Events don’t work that way. Let’s look in detail at how the events get recorded by Google Analytics using data from the API, and compare it to what we saw in the web interface.
I logged a series of 15 events with different combinations of categories, labels and actions (detailed below). You can see that if the event did not include a Category value (numbered 4,6,7), it was not counted in the Total Events metric and does not appear in the standard reports.
Similarly, if there is no value for Action or Label, there is no indication of the event in the respective report, BUT THE TOTAL EVENTS COUNT INCLUDES THEM. This is the most common reporting discrepancy that people face. Incomplete event interactions are left out, or appear in the total but disappear in the detail. Your reports makes no sense!
IMPORTANT CODING TIP: Make sure there are values for every event Category, Action and Label logged! NEVER let them be empty! Do NOT assume a default value, FORCE one to be used.
Hits Fill Up The Charts
If your web developer didn’t follow that little coding tip, and your event tracking reports are a real mess, what can you do? Well, relief is possible through Custom Reporting and a brand new, but very old, metric: Hits (found under the Users grouping). Among other things, Hits measure the interactions of all events, even if they are partially defined. Build a set of custom reports with the Event Action or Event Label (only 1 per report), along with the Hits and Total Events metrics to see.
Note that if the Total Events count is lower than the Hits count (action4, action6), then you probably have empty Category values. Call your website guru! Then make a combination report (Action + Label) to try to get some missing detail. Check the totals again to make sure you don’t also have missing Action or Label values.
Sessions with Event, and Events/Session with Event
Having sorted out our Total Events count, we are then faced with a new problem when trying to see how many events occurred in the average session. In my previous article, I showed that you shouldn’t mix the Sessions metric with Hit-level dimensions like Page. Well, it turns out that metrics calculated from the Sessions metric behave similarly, and all of the Event dimensions (Category, Action and Label) are Hit-level dimensions. The result: the calculated Sessions with Event and Events/Session with Event numbers are zero for everything except that first interaction.
As you can see in the image below, those metrics have values only for the first hit, but the same query, without the event dimensions, shows the correct totals. Note that you MAY get some numbers in your reports – these come from the sessions where that event was the first interaction, but the numbers do NOT include the other events. For example, the first row shows 2 Events/Session, but we know the top reported number was 9 (and should actually have been 15)! This is the worst possible scenario — being given numbers that are wrong.
So what can you do? Only use Sessions with Events or Events/Session with Event metrics in reports without the Event category/action/label dimensions.
Events/Session With a Specific Event
So how do you find out how many other events occurred in sessions that included a specific type of event? The answer: Custom Segments. A custom segment allows you to restrict the sessions included in the report to only those with a specific category, action or label. Now your top-level metrics are accurate, plus the detail reports will show what other categories, actions or labels were also included in those sessions.
If you were hoping for a single report that shows all of the categories and the Events/Session With Event counts for each, sorry. You will have to create multiple segments (one for each category) and run multiple segmented reports. That can be a lot of work, but some relief can be obtained using third-party tools like Analytics Edge to make the queries through the API and combine the results.
I hope this explanation has helped you to better understand your Event reporting problems.