Short Answer: It’s not just you, Google Analytics 4 (GA4) is completely different than Universal Analytics (UA).
Shakespearean answer: If the topic of Google Analytics and all things web tracking feels like a foreign language and you’re more of a theatre person here is a quick Shakespearean summary of what is going on. Google Analytics 4 (GA4 | code: gtag.js) is the Malcolm to Google’s Macbeth played by Universal Google Analytics (UA | code: gtag.js/analytics.js).
The fate of the final battle, scheduled for July of 2023 has already been foretold by the witches and the Google Analytics team played by Macduff who is going to do the whole Macbeth head cutting off work. Macbeth, as your high school memory serves you, came to power after killing Duncan aka Classic Analytics (GA2 | code: ga.js) which happened in 2012. The death of urchin.js or GA1 happened before the first act of the play. Not a whole lot is really known about Malcolm’s governing style, but it is clear he is very opposed to Macbeth for the whole killing of Duncan and Macduff’s family thing.
Plain English answer: In case that didn’t clear things up, GA4 is replacing UA in July, 2023 and everyone needs to update their own code or lose the ability to track website engagement. For a non-Shakespearean summary here is what is happening with the UA deprecation and how to plan.
This article is meant to help people that were familiar with UA and are now trying to make the transition to GA4 for reporting.
- UA is going to be sunset in July, 2023 and GA4 is its successor
- Different navigation with fewer out-of-the-box reports in GA4
- Everything in GA4 is an event, designed to work cookie-less unlike UA.
- More robust tracking out-of-the-box when enhanced events are chosen (full list of GA4 events)
- GA4 Events are more robust. Events have up to 25 parameters and are reusable
- All of the GA4 metrics are tracked and named slightly differently than UA
- GA4 allows users to carefully remove PII data without losing everything.
- GA4 has some new features that aren’t available in Universal Analytics, such as the ability to track user engagement across devices and platforms, and use AI to generate insights.
Navigation Has Changed
There is no easy way to say this, but you can pretty much throw away everything you liked or hated in UA because it’s gone. Here are some high-level guideposts to compare the two platforms from a navigation perspective.
- All of the default Audience/Behavior/Acquisition/Attribution from UA are gone and there are very few default views in the “Reports” section in GA4 (but things change weekly).
(Snapshots of navigation from 5/11/2022)
- All customized reports have been moved to “Explore” in GA4
- Search is way better in GA4. The search bar allows you to type a question about your data like: “how many users came to the site last month?”
- Custom “User dimensions” from UA is now “User Properties” in GA4
- “Goals” in UA have become “Conversions” in GA4
- “Segments” used to filter the view in UA are now “comparisons” in GA4 and you can have up to 4.
Why UA Metrics won’t Match GA4
Why are sessions lower in GA4 vs UA?
- Sessions in GA4 are triggered by the session_start event and time out after 30 minutes but don’t double count sessions where the source/medium changes mid-session the way UA did. ([GA4] About sessions – Analytics Help).
- Also, sessions aren’t double counted restarted at the day reset in GA4 (https://support.google.com/analytics/answer/11986666#sessions&zippy=%2Cin-this-article).
- People that click to open your site in a new tab but don’t go it aren’t triggering the session_start event in GA4 the way they used to in UA which was based on a hit.
Why are engaged sessions in GA different than the UA bounce rate was?
On the surface it may just seem like engagement rate is the inverse of what bounce rate was, the truth is they are based on different triggers. Engaged Sessions have replaced bounced sessions/rate, the engagement rate is calculated very differently in GA4 than bounce rate was in UA.
Engagement is determined by 2+ page_view Events OR 1+ Conversion Events OR lasts 10+ seconds (can be customized to up to 60 seconds). This is a more accurate measure than UA which was reliant on another page load or a custom event being triggered. Learn more: [GA4] User engagement – Analytics Help and Engagement metrics in Google Analytics 4
Why are “New Users“ in GA4 higher than “New Users” in UA?
In UA, there are two User metrics: Total Users, and New Users. In GA4, there are three: Total Users, Active Users, and New Users.
GA4 relies on the first_open event to determine a new user and not a 2-year cookie the way that UA determined the count. This number will also be off for newly installed accounts as the database builds up a history of user IDs.
Why are Events in GA4 different that Events in UA?
GA4 was built around event-based tracking to make sure data collection can be controlled and isn’t reliant on cookies the way that hit-based triggers in UA. Also, because you didn’t eat enough vegetables when you were a kid, your parents were right it would come back to haunt you.
GA4 events will look different as well since they have 25 customizable parameters that can be added, vs the fixed Category/Action/Label parameters that UA events had ([UA→GA4] Universal Analytics versus Google Analytics 4 data ).
Events are Everything in GA4
Because GA4 needs to work in a system without cookies, events are the key to all of the tracking data. Universal Google Analytics depended on predefined hits that weren’t as flexible or able to save the extra parameters that GA4 can with events.
Primary Events Automatically setup
Here are the default advanced events set by GA4 that serve as the backbone reporting:
- first_visit: first time a user visits a site/app with the Analytics code. These are counted after 10 seconds of an active user. So if a user click
- page_view: every page load or the browser history state is changed by the active site. Automatically collected, and can’t be turned off.
- Session_start: immediately on site load in the foreground. Note that if someone clicks to open your site in a new tab, it is in the background and this session won’t be triggered ([GA4] About sessions – Analytics Help).
- User_engagement: triggered when the user has the site in focus (no background tab) for at least one second.
- First_open (app): when a user that hasn’t been to the web/app before opens a page.
Advanced Events Options
These are the enhanced measures in GA4 ([GA4] Enhanced measurement events – Analytics Help)
- Scroll: when a user gets 90% down a given page.
- Outbound (click): outbound clicks to other sites from links on your site. Note that clicks to domains configured for cross-domain measurement will not trigger.
- Site search: logged when a user searches for something in the internal site search. It does this by looking for query parameters in the url. These can be configured if your site has a non-standard search.
- Video Engagement: automatically logged for most embedded videos including Vimeo and YouTube (YouTube Embedded Players and Player Parameters | YouTube IFrame Player API | Google Developers )
- Video_start: recorded when the video is started. Note that auto-play will mess with this and potentially inflate numbers.
- Video_progress: logged at 10%, 25%, 50%, 75% the way through.
- Video_complete: logged at video end
- File_download: recorded when a user clicks a link on your site with a common file extension. Regular expression they use that can be configured further: “pdf|xlsx?|docx?|txt|rtf|csv|exe|key|pp(s|t|tx)|7z|pkg|rar|gz|zip|avi|mov|mp4|mpe?g|wmv|midi?|mp3|wav|wma”
At Whole Whale we love the chance to learn something new and always try to find ways to be excited about massive changes like this. For all the headaches that this new GA reporting system brings, there are also great opportunities for understanding and trusting our data at a deeper level. There is a lot to learn here and we like to remind ourselves that SLEEP, yes getting sleep will help promote the creation of new neural pathways that will make learning easier (Sleep, Learning, and Memory).
Good luck, rest up!