10 Pitfalls of GA4 Auto Migrations & How to Avoid Them
Some of you may have chosen to opt-in for the GA4 auto-migration on the 1st of March. If not and you still haven’t migrated to Google Analytics 4, then you may end up using the automatic migration feature before sunset on July 1st.
If you use Universal Analytics for basic tracking, enabling the automatic creation of GA4 properties may be useful. However, if you use GTM.js or advanced features such as custom dimensions or non-interactive events these won’t automatically migrate. Or worse, they won’t work as expected.
In this article, we’ll highlight the top 10 things that could break during the GA4 auto-migration process. By understanding these potential issues in advance, you can take steps to minimise disruption and ensure a smooth transition to GA4.
Things that will break when GA4 auto-migrations starts
- Google Ads deflation caused by broken GA4 imported conversions which break CPA bidding.
- Google Ads inflation caused by working GA4 imported conversions running simultaneously as Adwords conversions, with both set to primary for CPA bidding.
- Google Ads inflation caused by over-counting of conversions due to GA4, no deduping same-session conversions. Visiting a print order pages would be an example of this.
- GDPR privacy violations due to inline remarketing settings that are set to OFF get auto-changed to ON. Such as allowAdFeatures/allow_google_signals or allowAdPersonalizationSignals/allow_ad_personalization_signals. The Google Ads cost data importer in the GA4 set-up wizard auto-enables ad personalisation.
- Any website using mobile AMP pages will under-report, as GA4 does not support AMP.
- If a GA4 property has been created already manually. For example, via the set-up wizard and this property is linked to GA3 and the default currency has been changed from what was imported. In this scenario, the GA4 imported goal values will be wrong; as these are not automatically converted into the local currency when they are created as new GA4 events. This will cause either over or under-bidding, due to the wrong GoogleAds conversion value being recorded. You can read about this issue here.
What could break imported goals/conversions?
For GA4 conversions especially, here is a list of things that could cause imported goals to break:
- If you use Paypal or Stripe, the exclude referral setting is not copied to GA4. Thus conversion won’t be attributed to SEO or PPC. They will all be attributed to referrals from Paypal.com or Stripe.com. You need to edit the GA4 setting for referrals to fix.
- If you are using Hubspot and have an exact match goal active such as /form/thankyou.html the exclude params setting for ?submissionGuid= is not copied to GA4. Hence this imported conversion won’t work. You need to change the goal setting from Exact match to StartsWith match or better use GTM to remove this URL parameter.
- If you are a Banking website that uses a Content Security policy (aka CSP) and you have forgotten to whitelist *.google-analytics.com and *.analytics.google.com then both GA4 pageviews and event conversions will be blocked. You can read the GA4 guidance on CSP here.
- If you are using GA filters on a URL, such as “Move all Error 404 pages into folder /error-404/”. Thus a landing on a fake thankyou page of /form/thankyou2 would be changed to /error-404/form/thankyou2.html then this protective measure won’t work, and a fake conversion will show in GA4.
- If you are using SmartGoals, Duration Goals, or Pages/Session goals, these cannot be imported into GA4.
- Lastly, RegEx URL and event-based goals can not be imported, so these must be manually copied.
It’s worth noting that GA3 had a verify “goal is working” feature, whereby it tested the goal against the last 7 days of data. GA4 does not test or verify that a goal is working when it imports from GA3 into GA4. Furthermore, there’s no automatic validation when it rotates your Google Ads primary and secondary goal, from GA3 to GA4 as primary goal to use for CPA bidding.
What you should do to stop the GA4 auto migration issues
If you are using gtm.js rather than the gtag.js there’s no automatic migration path for GA3 events. Hence GA3 event goals will be imported into GA4, but they won’t work! You need to manually migrate them to GA4 within GTM or use a 3rd party tool such as ga4migrator.com
Similarly, if you are using inline analytics.js you will need to migrate to either gtag.js or gtm.js for GA3 event goals imported into GA4 to work.
My suggestion is for you to take 1 of 3 actions:
- Do not use the GA4 auto migration feature.
- For agencies or sites with more than 100 properties, use Ben Kuehn`s free GoogleSheet tool to bulk opt-out all your clients from GA4 auto-migrations.
- If using GoogleAds, you can manually import the GA4 transaction or conversion. Then review it to make sure there are not 2 primary conversions and then opt-out.
- Remember to change “Bid on GA4 conversions” to “mark as complete” in the GA4 set-up wizard. This prevents these changes from being overwritten.
- If you are a small website that does not use Goals or Google Ads, just let the auto-migration run its course.
Google sacked 6% of its workforce or 12,000 people on 20th January. The majority of the Google Ads teams have remained, but Analytics was a peripheral service. Hence a larger proportion of the workforce was sacked. The chaos above is partly due to the people at Google responsible for GA4 migrations no longer working for the company!
Want more? Check out our blog for tips on Google Analytics, GTM, and a whole host of other Google packages.
- GTAG within GTM – The what, why and how! - 17/11/2023
- Results of GTMgrader.ai Competition - 17/10/2023
- What does “Review your updated GA4 property” email from Google mean? - 04/08/2023