A number of companies approached us near the Universal Analytics shut-off-of-data-acquisition date of July 1; between those and our existing clients, June was pretty much Google Analytics 4 months 24/7 for us – a lot of midnight oil was burned, as it was throughout the industry.
Many clients we had transitioned earlier, but what we found as the deadline approached was that things were still changing in the GUI, we continued to learn, and thankfully, pretty much everything we needed was in place by the transition date.
But there were a LOT of nuances to be aware of or keep in mind when working with GA4. Here is a rundown of some gotchas that might be valuable to know if you’ve just transitioned or aren’t sure if you got it right.
Gotcha #1: Old engagement measurements not being available
We’ve always used Pages/Session, Seconds/Session, Seconds/Page, and Bounce Rate for engagement metrics. GA4 has a newer one “Engagement Rate” that is calculated a little differently. Users complained and at least two of these older ones were added in December, although you could not access them via Looker Studio. We took the tack of simply calculating all four ourselves, there is enough data recorded by GA4 to figure it out, so we have been able to give clients the reports they have been used to for many years.
Gotcha #2: Weeks in Looker (Google Data Studio) are now a Number
This field in UA was a nice string that gave you the name of the week, i.e. “Jul 9 -15”. Now instead it’s a number from 1-52. Not very helpful. Sadly there are no easy workarounds to this; one would be, you can create a custom field with a table that translates from the number to a string; we’ve done this before, but you have to redo it every year and it’s hard to get year/year graphs right with it. We have done this numerous times but are tired of it and it’s a pain to maintain. So this is one Gotcha we are just tolerating, for now.
We are hopeful that Google Analytics Product Management will just add another field that gives you the text name of the week (also – hey – how about adding “Last Month” back in date pickers. It’s literally the most common date range marketers always pick, it’s amazing it was overlooked even though “Last Week” was put in there!)
Gotcha #3: Views are Gone
There are several workarounds for this; you can do custom reports in GA4 that filter by IP or subdomain or whatever – but our reports are in Looker Studio, we have about 40 of them so that would be onerous to reproduce in GA4. Sadly you can’t filter by those things in Looker Studio. Another workaround is getting the very expensive paid version of GA4 and using a “rollup property”.
The approach we’re taking with clients who need multiple views (say, excluding internal traffic or whatever on one of them), is to set up separate Data Streams. Google recommends against having multiple “Web” data streams as you might inflate your numbers (we did a lot of poking around and it seems that this is the only reason it is recommended against).
Well, yes, if you have two streams measuring almost the same thing, your numbers overall will double and if you just look in the GUI you will get the wrong picture of things. But in Google Data Studio you can filter by data stream, so it’s straightforward to set up multiple reports for multiple data stream.
The only downside is you will have to reproduce all the same events in Google tag manager since each event is tied to the Data Stream ID.
Gotcha #4: Real-time data does NOT show up in 24 hours, it’s more like 48
Just an observation, but if you’re trying to debug your event tracking it’s super important to know this!
Gotcha #5: Attribution now affects conversion data that will be sent to Google Ads
This is a big problem in our view; it used to be that attribution analysis and the Multi-Channel Funnel stuff in GA were purely an observational thing; but now you have to select an attribution model, and that model will affect the data that is sent to Google Ads. Additionally there is a setting that allows you to only have Google Ads get conversion credit, or have Paid and Organic Channels get conversion credit. We’re trying to get a satisfactory in-depth answer out of Google as to what the best practice is, but advice from Google Ads reps is not the same as Product Management itself or the Google Ads evangelist explaining things, so in our view the jury is still out on what these settings should be. A colleague who has access to numerous agency accounts has said that those appear set to only allowing Google Ads credit; so it could be that some of the dedicated Google reps that agencies leverage are recommending this. For now we’re leaning towards only giving Google Ads credit, for bid management reasons. However, this affects all of the GA attribution features. We used to like how Google Ads could take credit for everything itself but then you could separately analyze across channels and campaigns within GA and make budgeting decisions on things like, for instance, early funnel display campaigns vs. search campaigns. But combining attribution with the mechanism that feeds bidding itself, we worry that we’ve lost some control over all of this. Time will tell and we will continue to query Googlers though!
Gotcha #6: You now have to use audiences to create certain types of Conversions
This is a new paradigm. In UA, you could do things like – if someone visits this page, make it a conversion. Now, you have to go in and create an audience, and there is an option to make that action a conversion. It has a very powerful interface where you can AND and OR things and it looks like a great feature, but the paradigm will take some getting used to.
Gotcha #7: If you want to pass parameters with an event, you have to also make those parameters be custom dimensions
This isn’t worth discussing at length, it’s simply what it says – important to understand you need to do that, or you won’t be able to see parameter values in reports.
In Conclusion
Clearly Google Product Management and their Dev team scrambled over the last year to add features back in that customers were demanding. It is the nature of software development that a new team comes along eventually, looks at old code it can’t comprehend, and says “this code is crap, there’s all this ‘technical debt’, let’s rewrite it or move to a newer code base.”
Well, inevitably, the team then finds out to their horror – much of that “technical debt” was actually code that solved real customer problems someone else ran into 10 years ago (it’s much like all that DNA that scientists had told us for years were “garbage DNA” – they’re now finding that all of it has a purpose). So the team is having to relearn about all those problems and solve them all over again due to a lack of institutional memory. I believe that is what happened here – the original Urchin team are all retired millionaires as are the Firebase team, and whoever is doing everything now are probably mostly 28-30 year olds who think they’ve seen it all, but haven’t quite yet!
The good news is, they’ve been responsive enough that GA4 is, in our opinion now “good enough – just barely” to satisfy our clients needs. So, it could have been very ugly but it looks like it’s working out OK. (Shame on the team for not figuring out a way to give people historical data from UA though!)
How about you, how did your GA4 transition go, and do you have any other “Gotchas” that you felt were non-obvious but once you learned them things went smoothly? Let us know below in the comments, thanks!