If you ask any digital analytics expert what they like most about Google Analytics 4, they will probably mention the “Event-Based Model” as their favorite “feature”. This is also true for me. After struggling for years trying to cram “round pegs into square holes” with Universal Analytics, we finally get our customizable system to store our data in a way that makes the most sense to us. But with this increased flexibility, a new challenge arises: how to create structure and quality within all this newfound freedom?
In this post, I’ll outline my advice for companies that are trying to get the most out of the event-based model and are looking for some guidelines to do so.
Picking Event Names in Google Analytics 4
Every event requires an event name. The event name is the main identifier of the event in Google Analytics 4, and will always show up in the Google Analytics 4 interface.
In theory, you have two options when it comes to Event Names:
- High-level abstract event names (like “click”)
- Detailed descriptive event names (like “click_on_cta_form_bottom”)
The obvious advantage of the detailed descriptive naming convention is that you have an easy way to directly see a lot of detail within the Google Analytics 4 interface without any additional steps. After all, the event names always show up in Google Analytics 4. This is why many novice users tend to go down this route and decide the give very explicit names to their events. The downside is that if you want to report on aggregates (how many total “clicks”), you have to take additional steps to do so to “sum” all your different click events together.
One additional downside that is often overlooked (and only noticed when the damage has been done) is the data collection limitations of Google Analytics 4. You would be wise to bookmark this page. If you go down the “detailed descriptive route”, you run the risk of running into limitations with regard to data collection in the future.
Our advice is to go with the high-level abstract event names approach instead, using event parameters to add context and the ability for deeper analysis further down the line.
Also, keep into account google’s reserved namespace for default events and google’s “Recommended Event Names” which suggest that Google might build features leveraging those event names in the future.
One of my favorite tools to check for default event names or parameters is data.ga4spy.com
Defining Event Parameters in Google Analytics 4
Event parameters are where we make up for our high-level generic event names. In the free version of Google Analytics 4, we can include up to 25 event parameters per event we send.
One thing to keep in mind with Event Parameters is that they do not show up in Google Analytics 4 by default. This is very confusing to novice users because you’re used to seeing “what you send in” show up in the interface right away. For event parameters to become visible in the GA4 interface, you need to register them as a custom dimension first.
Mapping out your Event Naming Structure
Ideally, all main conversions should have their own unique event name. This is because in order to “mark events as conversions” in Google Analytics 4, you would need them in there ready to be selected.
(Now, you could use the “Modify/Create Event” interface to manually construct an event based upon some event_name + event_parameter combination, however we generally advise against that as it introduces additional complexity to your setup via layers that are hidden from the outside in.)
I prefer to use a tool like Miro to whiteboard out the customer journey, starting out at the user’s first visit all the way through to the main conversion and potentially the repeat conversions. Identify all key steps a user can take and write down a descriptive event name for each step. (Don’t worry about the details yet.)
Define Event Parameters per Event
Define what event parameters you would like to include per event in order to perform analysis and maintain the analytics implementation from a technical point of view. A good way to determine what parameters you need is to ask yourself “how would I want to slice & dice this number”?
For example: If the event name is “video plays” you would likely want to slice it by “video title” and “location of video play”.
Consolidate Event Names
Consolidation of event names is essential if you want to make the most out of the Event Based model and work within the limits of Google Analytics 4.
Consolidate the event_names that you could later split out using event_parameters that you’ve added. For instance, you’ll likely have multiple “click” events throughout the customer journey. It’s probably unlikely that these need to be main conversions (which require unique event names), so you should be fine capturing them all as “event_name: click” and segmenting them with event_parameters like “click_type” (e.g. button, text, banner) and “click_location” (e.g. footer, nav, article).
Consolidate Event Parameters
Just like with the event_name’s, you’ll will want to reuse your event_parameters as often as possible. So instead of creating an event_name “click” with the event parameters of “click_type” and “click_location”, you’ll instead want to go with “type” and “location”. That way, you can re-use them when building your naming convention for something else (like event_name “form_submit” with “type” and “location” tied to it to differentiate it from other form_submits).
The event-based model that Google Analytics 4 provides us with is great, but it does require more work in planning and organization before sending events in. Just like with Universal Analytics, there is no way to delete data once it gets into the system, so you better make sure that what gets in there makes sense!
In our opinion, event_name and event_parameter consolidation is an essential step for everybody that wants to get the most out of Google Analytics 4. This is why it’s a default element in our Google Analytics 4 & Google Tag Manager audit.
Want to receive more tips like these? We have an irregularly published but highly relevant newsletter about marketing analytics that will update you whenever we publish new content like!