Google allows you to store information about what a web visitor does while they are using your web site. By default, it gives you a wealth of information, but often you want to track things that are unique to your organization. They provide a couple of ways for you to store your own specific data in their data servers. Custom Events is the term they use to describe one of the ways. Some examples:

  • as a visitor goes from page to page, sometimes clicking a button or link. You want to know what they saw, and in which order. If they purchase, you’ll be able to compare all the ways and re-arrange your site and content to optimize for that.
  • monitoring how long they watched a video. You’ll have a better idea for future videos at what point you lose people. Is it too long, or did you hit a boring part?

If you knew what they were doing when they dropped off, you could fix those areas and improve your conversion process. One way to monitor things that are specific to your site is to use Google Analytics Custom Events. This will give you a picture of what they saw and the order they saw it.

Custom Events are invisible to users. They are internal, they do their work inside of web pages while people are interacting with your web site. It takes a blend of skill, ranging from html programming through to business analysis in planning the best way to use Custom Events. If you don’t plan carefully, they won’t be useful when you want to improve your business. Also, take some time to think about the future. Maybe put version or date information in some of the things you are tracking (more on that below).

You can build some useful excel based dashboards that show valuable web analytics. As a web analyst, you may not need to program the event, but you should understand it’s normally done when the user makes a gesture such as button click. Usually, it’s an html programmer can use Javascript to store the name of the button and the type of event such as click or hover. There are four arbitrarily text values and one numeric value you can store in the GA Data servers.

  • Category e.g. a generic thing, such as “Button” or “HyperLink”
  • Action e.g. click, mouse in, mouse out
  • Label e.g. something that identifies which particular “thing” i.e. which button. Remember, Events can be multi-page, so you may or may not want to distinguish between a Submit button on page 1 and an identically named button on page 2
  • Value some value that would mean something if it was summed or averaged or counted in a report.

In other cases, Custom Events can be used after a delay occurs. In the following screenshot, the hosting service we use for our videos (screencast.com) uploads Custom Events to our GA profile, as follows:

  • Category: identifies the type of video
  • Event Action: video_started, video_finished, video_loading_time, video_percent_viewed, video_reply
  • Event Label: URL to video

The following screen capture shows the values that get added. It’s sliced into SIX METRICS, each one associated with the custom event plus the context of when it happened.

  1. Total Events
  2. Unique Events
  3. Event Value
  4. Avg. Value
  5. Sessions with Event
  6. Events / Session with Event

google-analytics-event-dimensions-sample-values
This simple table shows us that Custom Events are just traditional dimensions and metrics, ready for in-depth analysis. You can sort, filter, and aggregate any of these numeric values. You could pivot any of the columns, to get a two dimensional view. If the example had asked for a date dimension, you could, for example, get a trend of Avg. Value. Google Analytics lets you create reports that summarize and show trends of your custom Events and their custom values.

Other than this video example, you can also use events to track or measure the conversion funnel, as a visitor moves from when they first landed at your web site, through to conversion to an eCommerce purchase or a coupon redemption at the retail point of sale.

Web site programmers can use Javascript to store custom data in the Google Analytics data servers. More information can be found at: https://developers.google.com/analytics/devguides/collection/analyticsjs/events

People who have a copy of NEXT ANALYTICS software on their system can easily try this out. Just past the following text into a worksheet and rename that worksheet to _actions. Then press “Refresh Data”.

prompt,add,WIDGET_NAME,events
Prompt,add,

[GOOGLE_ID],
Prompt,add,[GA_PROFILE_ID],
Prompt,add,[GA_SEGMENT],&segment=gaid::-1
prompt,add,[PERIOD],LastCalendar 1 Weeks
Prompt,add,[MAX_RESULTS],&max-results=1000000
Prompt,add,[GA_DIMENSIONS],"&dimensions=ga:eventCategory,ga:eventAction,ga:eventLabel"
Prompt,add,[GA_METRICS],"&metrics=ga:totalEvents,ga:uniqueEvents,ga:eventValue,ga:avgEventValue,ga:sessionsWithEvent,ga:eventsPerSessionWithEvent"
Prompt,add,[GA_SORT],
Prompt,add,[GA_FILTER],
GetGoogleAnalyticsData[GOOGLE_ID],,,[GA_PROFILE_ID],[PERIOD],GoogleData.csv,"[GA_SEGMENT][MAX_RESULTS][GA_DIMENSIONS][GA_METRICS][GA_SORT][GA_FILTER]"
ImportDataFiles,GoogleData.csv,,0,1,utf-8,,yyyy-MM-dd,en-US,,""
prompt,add,[DATA_SHEET_NAME],events
prompt,add,[TOP_ROW],1
prompt,add,[TOP_LEFT],1
prompt,add,[BOTTOM_ROW],-1
prompt,add,[BOTTOM_RIGHT],-1
SaveInWorksheet,current,[DATA_SHEET_NAME],Overwrite,invisible,[TOP_ROW],[TOP_LEFT],unformatted,[BOTTOM_ROW],[BOTTOM_RIGHT]