📊 Replace Google Analytics with warehouse analytics. Get the guide.

Log in

Learning Center

Learning Topics

Subscription

Subscribe

We'll send you updates from the blog and monthly release notes.

Learning Center

GA4 Migration Guide

Google Analytics 4 (GA4) is the next generation of Google Analytics. It’s significantly different from the previous version, Universal Analytics (UA). This means that migration from UA to GA4 is not as simple as you might guess and can lead to some challenges. In this GA4 migration guide, we take you through the steps of migrating from UA to GA4 to ensure no loss of accuracy in your reporting process and to make the process as painless as possible.

Should I use UA or GA4?

Unfortunately, soon you won’t have a choice whether to use UA or GA4. Google has announced that UA will stop collecting data in July 2023, so it’s best to understand GA4 and migrate to it as soon as possible. Additionally, since your historical UA data cannot be migrated to GA4, waiting until the July deadline to migrate will mean your GA4 account only has July data in it when you make the switch. Another reason to migrate as soon as possible is that bugs are likely to arise during migration, which will take time to resolve. Given that interaction data collection is implemented differently between UA and GA4, we advise you to have both versions running alongside one another for as long as possible to work out the inevitable bugs that will arise during implementation.

However, before jumping into the migration, it can be beneficial to understand some of the major design differences between UA and GA4. Some key new features of GA4 include generalizing all parts of the UA data model, including “hits” to “events,” more customization of data and reports, and a heavier emphasis on compliance with privacy legislation. We go into much more detail on the differences in some of our other GA4 learning center articles such as Benefits and Limitations of GA4 and GA4 vs. Universal Analytics.

Can you migrate data from UA to GA4?

One major issue with migrating from UA to GA4 is that you can’t import the raw data from UA into GA4. This is because the data model in GA4 is substantially different from the one in UA, with the UA model being based on sessions and the GA4 model being based on events. You can export your raw data from Google Analytics 360 (the premium version of UA) to BigQuery (Google’s cloud data warehouse solution), but you cannot export your raw data from the standard version of UA. There are dedicated ETL tools that allow you to export custom UA reports – not raw data – and sync to a data warehouse, but this is relatively complicated and could be considered a separate project on its own. Even if you were able to migrate data from UA to BigQuery, there’s no practical way to import historical UA data into GA4, due to the differences in data models. While GA4 does offer import functionality, it is meant to enrich existing GA4 event data with extra metadata for users or e-commerce items. This makes it all the more important to begin the switch now, by collecting data in GA4 alongside your UA data collection, so that when UA data collection is switched off, you will have a decent amount of historical data in your GA4 property.

How do I switch from UA to GA4?

After you’ve decided to migrate to GA4, it’s best to follow the phased approach detailed below. This can serve as a high-level checklist of the steps needed for a successful migration. As you’re going through this GA4 migration checklist, it can be beneficial to research in more depth the new features of GA4 in order to understand which steps in the migration process might be more troublesome than you initially thought.

Phase 1: familiarize yourself with account structure differences

The first step in migrating to GA4 is to understand your new GA4 account structure and how it differs from UA. One notable difference is that GA4 has smoother integration between data from web- and mobile-based applications. In UA, you had to set up multiple separate properties – one for your website and others for each type of mobile app. By contrast, GA4 encourages you to think of your website and mobile app as a single property, while still recognizing that the data comes from different sources by having multiple separate data streams feed into that same property. Since you can have multiple data streams for a single property, it’s more beneficial to think of a property in GA4 as representing the user base for your entire web product, not for an individual application like in UA.

One other notable difference in the account structure is that there are no views, which were previously used in UA to filter data. Although there are no views in GA4, the explorations and reports sections on the GA4 dashboard can be used to filter data in reports. There’s also the ability to filter GA4 data for properties as a whole, rather than according to views like in UA. For example, you could filter out internal/development web traffic on your GA4 property. However, it’s not possible to set up multiple conflicting filters on the same property – once you’ve chosen to filter out internal/development traffic you can’t also have another filter that allows internal/development traffic as you could in UA.

Phase 2: create a GA4 property and data streams

Since there is no UA to GA4 property conversion feature and you can’t import your UA data into GA4, it is crucial that you create your GA4 property as soon as possible. This will give you time to debug your GA4 implementation while comparing it to your existing UA project, gain experience interacting with GA4’s new interface and reporting functionality, and strengthen Google’s machine learning insights. Machine learning plays a large role in GA4, as it can be used to spot trends or anomalies and give you insights about them, which you can use to make useful business decisions. However, to do this effectively, GA4 must first accumulate data for a while to understand what is “normal” and form a baseline before it can spot trends or alert you to any anomalies.

croll to the bottom of your GA4 home page to see “Insights & recommendations.” These insights improve over time once you have recorded more data.

To create a GA4 property, go to Admin and select Create property. By default, all new properties will be GA4 properties (although it‘s possible to override this). Once you’ve named your new GA4 property and answered the standard questions, you will be automatically prompted to add a data stream.

Ensure that your GA4 tracking code is properly enabled on your website and mobile applications. Setting up a data stream tells GA4 to expect data from a particular source, but you still need to add GA4 tracking code to your site or app so that your site or app sends data to GA4. This can be done in a few ways:

  • Using Google’s Global Site Tag (gtag.js) – this is JavaScript code that sends data to your GA4 property and must be added to every page on your website.
  • Using Google Tag Manager (GTM).
  • Using Firebase – this is only relevant for app data streams.

For websites, we recommend using GTM because if you plan to use custom events, GTM allows you to avoid writing code for each event by providing a no-code GUI solution. GTM also allows you to manage tags from companies besides Google, such as the Meta Pixel, whereas Google’s global site tag is only for Google products like Google Analytics and Google Ads.

Google’s documentation explains the process of setting up a GA4 account, along with creating a property and sending data to it, in more detail. After successfully creating your GA4 property, it’s particularly important to ensure that the data is coming through as you expect so you can begin building up your historical GA4 data. You can do this by looking at the DebugView report, which is located under your property in the Admin view. This will show you events as they are triggered and allow you to look at their parameters to verify that your property and data stream have been set up correctly. This is also very helpful when creating custom events to verify that data is being sent from GTM as you expect.

DebugView report in GA4 Demo Account

Phase 3: find new ways of tracking important metrics in GA4

Because of the differences in account structure between UA and GA4, many of the things that you tracked in UA will have to be rethought and reimplemented in GA4. You will need to make a list of all the important metrics that you want to measure in GA4. These may come from your company KPIs, or you may choose to methodically go through all the metrics you’ve been measuring in UA and decide which ones you want to keep. A spreadsheet can be helpful for organizing this.

After determining which KPIs you want to track, it is important to understand some key differences between UA and GA4.

  • Hits are now events. In UA, there were various hit types, one of which was event. This event hit type was used to capture more nuanced behavior that didn’t require a page reload, like button clicks and page scrolls. Now, in GA4, all hits are events. It’s important to think of your various hit types in UA according to this new event-based model.
  • Goals are now conversions. Goals in UA are now called conversion events or just conversions. You can mark events as conversions, and if you want to replicate the functionality of Destination Goals in UA, you can define an event as a conversion based on the value of certain parameters, such as the URL.
  • Explorations play a larger role than reports. GA4 still has out-of-the-box reports. However, GA4 places more emphasis on explorations, which is an extension of the custom reports section in UA, so you should familiarize yourself with the different options this section gives you.

Unfortunately, because GA4 has a very different data model from UA, there’s no easy way to migrate the functionality you had in UA into GA4. After you know which KPIs you want to track and how to implement them in GA4, you must re-implement them one by one.

Phase 4: link GA4 to other tools

You may want to link your GA4 property with other Google tools such as Google Ads, BigQuery, or Ad Manager. Linking GA4 with Google Ads allows you to do things like see the results of your Google Ads campaigns in your GA4 reports and improve ad retargeting. Connecting GA4 to BigQuery enables you to export your data into the BigQuery cloud data warehouse and further explore the data using SQL-like queries. Integrating Ad Manager with your GA4 property allows GA4 to send data to Ad Manager reports and also import ad revenue data directly into your GA4 reports under Monetization > Publisher ads. You can link GA4 with all of these tools by going to Admin > Property > Product links in the GA4 interface and following the instructions there, as well as the more detailed instructions for each tool linked above.

GA4 product links section in Admin panel

Phase 5: manage users

In this phase, you have a functional GA4 property that is measuring and reporting useful data. This is the time to bring other users into your GA4 property. All the same roles from UA exist in GA4 and account-level permissions should automatically take effect. The only additional work that should be required is porting over property-level and view-level permissions. You must duplicate any property-level permissions granted in UA to the new GA4 property level. If you assigned view-level permissions in UA, you might also need to make adjustments to your permissions strategy, as there are no longer views in GA4. Assigning users to groups and assigning roles to those groups can reduce work for both of these tasks, especially if you have a large organization.

Phase 6: determine a UA end date

At this point, you should have your old UA properties and new GA4 properties running in parallel with the same data sources. This is a good idea so that you can gain a better understanding of some of the nuanced differences in measurement between UA and GA4. Eventually, you will have to decide when to take the leap of using GA4 as the new single source of truth for your organization. Waiting one year would be ideal, to build up sufficient historical data in GA4. However, because UA will stop collecting data in July 2023, this is no longer possible. Therefore, you should do the best you can to build up historical data in GA4 and become accustomed to the new tool until you are forced to make the leap.

Phase 7: train users

One benefit of choosing a UA end date for your organization before the deadline is to give training time for other users in your organization. You will likely know the best way to train other GA4 users in your company, whether it be through presentations, demos, videos, or some other medium. However, there is no substitute for jumping in and using the new tool, as true proficiency will only come with an extended period of use. Migrating as soon as possible will give you the option of going back to UA temporarily if you run into any issues. However, if you decide to wait until the deadline to make the leap, you won’t be able to go back to UA and will be forced to deal with any issues as they arise.

Phase 8: archive your UA data

After your business has successfully transitioned to using GA4, it’s important to ensure that you don’t lose your historical data in UA. UA properties will stop processing new data in July 2023, but previously processed data will be available for at least six months – until at least January 2024. The paid version of UA, Google Analytics 360, will stop processing data in July 2024. Because your historical data from UA can be helpful in spotting trends moving forward, it’s important to consider your options for exporting it before it’s no longer available. When exporting data and reports from UA, you should think about which data you need and how often you will typically want to access it for future reports. There are ETL providers like RudderStack, Stitch, and Fivetran that can help you sync custom UA reports to your data warehouse. However, it is worth noting that this is not nearly as well-documented, easy to set up, or cheap as Google BigQuery. But while the BigQuery integration itself may be easy and cheap, it’s only available with Google Analytics 360 – the premium enterprise version of Universal Analytics. And it’s only possible to do a full export of your raw data to BigQuery if you’re already a Google Analytics 360 customer. If you’re not, the best you can do is to work out what your most important individual reports are, and export those.

Key takeaways and next steps: GA4 migration guide

You should now understand how to successfully migrate from UA to GA4 by identifying the key pieces of UA functionality that were useful to your organization, determining the new ways to do them, and actually implementing them in GA4. The migration process is fairly complex, so it can be beneficial to have someone with in-depth knowledge of Google Analytics to help you during the process. If there’s nobody in your organization with that expertise, it could be beneficial to look for outside help. As of January 2023, you’re up against the clock, as there are only six months until UA stops processing new data. For this reason, time is of the essence and you should start the migration process as soon as possible.

Further reading

In this GA4 migration guide, we covered the process of migrating from UA to GA4 in a step-by-step way. To find out more about other aspects of GA4 and learn why you should migrate, check out our other GA4 articles in our learning center.

Get the Data Maturity Guide

Our comprehensive, 80-page Data Maturity Guide will help you build on your existing tools and take the next step on your journey.

Get the Guide
Build a data pipeline in less than 5 minutes
Create an account
See RudderStack in action
Get a personalized demo
Collaborate with our community of data engineers
Join Slack Community