New Google’s November 2026 Core Update Is Rolling Out

Analytics & Data

GA4 Migration Checklist: Before Universal Analytics Stops

Universal Analytics stops processing data on July 1, 2023. Here is the step-by-step checklist I use to move tracking, conversions and reports to GA4 in time.

GA4 Migration Checklist: Before Universal Analytics Stops
In This Article14 sections
  1. The Dates That Shape Your GA4 Migration Checklist
  2. Step 1: Audit What Universal Analytics Tracks Today
  3. Step 2: Create or Check Your GA4 Property
  4. Step 3: Change the Default Settings Most People Miss
  5. Step 4: Rebuild Events and Conversions
  6. Step 5: Rebuild Ecommerce Tracking
  7. Step 6: Link Google Ads, Search Console and Other Tools
  8. Step 7: Check the Numbers and Understand Why They Differ
  9. Step 8: Rebuild Your Reports and Dashboards
  10. Step 9: Save Your Universal Analytics Data
  11. Step 10: Train the Team and Write It Down
  12. A Simple Timeline to Finish Before July
  13. Conclusion: Work Through Your GA4 Migration Checklist Now
  14. Frequently asked questions

Quick Answer

To migrate to GA4, list everything Universal Analytics tracks, create or check your GA4 property, fix its default settings, rebuild events, conversions and ecommerce, relink Google Ads and Search Console, compare the data, rebuild reports, and export the old reports you want to keep. Start now, because standard Universal Analytics stops processing on July 1, 2023 and GA4 has no historical data.

Key Takeaways

  • Standard Universal Analytics stops processing data on July 1, 2023. Universal Analytics 360 stops on July 1, 2024.
  • Your old data will not move into GA4, so every week of GA4 data you collect now helps later comparisons.
  • Set GA4 data retention to 14 months and filter internal traffic before building anything else.
  • Goals become conversion events, and a standard property allows up to 30 of them.
  • Audiences and custom dimensions only collect data from the day you create them, so build them early.
  • Export the Universal Analytics reports you need, because the old data will only stay viewable for a limited time.

Universal Analytics stops processing new data on July 1, 2023, and that is less than six months away. If you still rely on it, you need a GA4 migration checklist you can work through now, so you don’t lose tracking or year-over-year data. This is the checklist I use, in the order I use it.

The short version: list everything your Universal Analytics property tracks, rebuild what matters in GA4, test it, and save the old reports you will want later. The earlier you finish, the more months of GA4 data you will have before the switch-off.

The Dates That Shape Your GA4 Migration Checklist

Google set the timeline in March 2022, and it has only changed for paying customers since. Here is where things stand in January 2023:

  • Standard Universal Analytics properties stop processing new hits on July 1, 2023.
  • Universal Analytics 360 properties (the paid version) now stop on July 1, 2024. Google moved this from October 2023 back in October 2022.
  • Old reports stay viewable for at least six months after processing stops, according to Google. After that, the data goes away.

You can read the official dates on Google’s Universal Analytics shutdown help page. I covered the original announcement in Google’s Universal Analytics shutdown date announcement, if you want the background.

The key point is simple. Your old data will not move into GA4. GA4 only holds data from the day you added its tag. So every week you wait is a week of missing history when you compare this year to next year.

Step 1: Audit What Universal Analytics Tracks Today

Before I touch GA4, I write down what the old property actually does. Most sites have built up years of settings that nobody remembers. A simple spreadsheet is enough.

Go through the Admin area of each Universal Analytics property and list:

  • Goals in each view: destination goals (thank-you pages), event goals, duration goals and pages-per-session goals.
  • Events you send: look at Behavior > Events > Top Events for the category, action and label values.
  • Custom dimensions and metrics: things like author, logged-in status or membership level.
  • Filters: IP exclusions, hostname filters, lowercase filters and any rewrite rules.
  • Views: why each one exists and who uses it.
  • Segments and audiences: especially remarketing lists used in Google Ads.
  • Linked products: Google Ads, Search Console, Merchant Center, Optimize, BigQuery (360 only).
  • Ecommerce: standard or enhanced ecommerce, and which steps are tracked.
  • Reports and dashboards: custom reports, Data Studio (now called Looker Studio) dashboards and any tool that pulls data through the API.

Then mark each item as “keep”, “rebuild differently” or “drop”. In my experience, about half of the goals and events on an older site are no longer used by anyone. The move is a good time to clean them out instead of copying the clutter across.

Ask Who Uses the Data

I also ask each team one question: which three numbers do you check every month? The answers tell you what must work on day one. Everything else can wait a few weeks.

Step 2: Create or Check Your GA4 Property

Many sites already have a GA4 property that someone created in 2021 or 2022 and then forgot. Check that first, because an older property already holds months of useful data.

If you have one, confirm it is tagged on every page and that it still receives data. Look at the Realtime report while you browse the site. If you don’t have one, the GA4 Setup Assistant in your Universal Analytics Admin area will create it and link it for you.

I explained the setup steps, including the tag options for gtag.js, Google Tag Manager and CMS plugins, in how to set up GA4 alongside Universal Analytics. Running both at the same time is exactly what you want until July.

Get the Account Structure Right

GA4 has no views. One property holds one set of data, with one or more data streams (a stream is a single website or app sending data). So think about structure now:

  • One website usually means one property with one web data stream.
  • A website and its app can share one property, with a web stream and an app stream.
  • Separate brands or countries that never need combined reports are often easier as separate properties.

I’d avoid creating one GA4 property per old view. Views were mostly filtered copies of the same data. In GA4 you do that with comparisons, report filters and Explorations instead.

Step 3: Change the Default Settings Most People Miss

These settings take ten minutes, and they protect the quality of everything you collect from here on. I do them before I build any events.

  1. Set data retention to 14 months. Go to Admin > Data Settings > Data Retention. The default is 2 months, which limits how far back your Explorations can go. Standard reports are not affected, but you will want the longer window.
  2. Define internal traffic. In your data stream settings, add your office IP addresses as internal traffic. Then turn the “Internal Traffic” data filter from Testing to Active once you have checked it works.
  3. List unwanted referrals. Add payment gateways and similar sites (for example, PayPal) so they don’t steal credit for sales.
  4. Set up cross-domain measurement if visitors move between your own domains, such as a main site and a separate booking site.
  5. Review enhanced measurement. GA4 can track scrolls, outbound clicks, site search, file downloads and YouTube video plays without extra code. Turn off any you don’t want, and check the site search query parameter matches your site (often s or q).
  6. Check the time zone and currency at property level, so they match Universal Analytics and your ad accounts.

Step 4: Rebuild Events and Conversions

This is the biggest job in most migrations. Universal Analytics used hit types (page views, events, transactions). GA4 uses events for everything, and each event can carry parameters (extra details, like a button name or page location).

Map Old Events to New Ones

Go back to your audit sheet. For each old event, choose a clear GA4 event name. Use lowercase with underscores, and keep names short and consistent.

Here is a practical example. In Universal Analytics, you might have sent a newsletter signup like this: category “Form”, action “Submit”, label “Newsletter”. In GA4, I would send one event called newsletter_signup, with a parameter for where the form sits:

gtag('event', 'newsletter_signup', {
  form_location: 'footer'
});

Before you invent a name, check whether Google has a recommended event for it. Names like login, sign_up, generate_lead and purchase unlock extra report features. I always use the recommended name when one fits.

Turn Goals Into Conversions

GA4 has no goals. Instead, you mark any event as a conversion. You can do this in Configure > Events by switching on “Mark as conversion”.

  • Event goals become conversion events with the same meaning.
  • Destination goals (thank-you page visits) need a new event. I create it in GA4 with Configure > Events > Create event, using the page_view event and a page_location rule, or I fire it from Tag Manager.
  • Duration and pages-per-session goals mostly don’t need rebuilding. GA4’s engagement metrics cover the same idea.

The Setup Assistant also has a goals migration tool that copies eligible goals across as conversion events. It is handy, but I still check every one by hand afterwards.

A standard GA4 property allows up to 30 conversion events. That is plenty if you only mark the actions that matter to the business. I’d rather have five honest conversions than thirty that nobody trusts.

Register Custom Dimensions

Parameters you send with events don’t appear in reports until you register them. Go to Configure > Custom definitions and add each one as a custom dimension or metric. Do this early, because custom dimensions only show data from the day you create them, not before.

Step 5: Rebuild Ecommerce Tracking

If you run an online shop, this needs the most care. GA4 ecommerce uses a new set of events, so your old Universal Analytics ecommerce code will not feed GA4 reports properly.

The main events to set up are:

  • view_item_list and view_item for category and product pages.
  • add_to_cart and remove_from_cart.
  • begin_checkout, add_shipping_info and add_payment_info.
  • purchase, with the transaction ID, value, currency and items.
  • refund, if you track refunds.

Many ecommerce platforms and plugins can send these events for you. Even so, I always place a test order and compare the revenue in GA4 with the order total in the shop. The currency parameter is the one I most often see missing, and without it revenue can show as zero.

Links do not carry over from Universal Analytics. You need to create each one again in GA4 under Admin > Product links.

  1. Google Ads: link the account, then import your GA4 conversions into Google Ads. Check that you are not counting the same action twice, once from the old import and once from the new one.
  2. Audiences: rebuild your remarketing audiences in GA4. Audiences only start filling from the day you create them, so build them now so they have members by July.
  3. Search Console: link it so you can see organic queries and landing pages inside GA4. You then publish the Search Console report collection from the Library. If you use the links data too, my guide to the Search Console Links report shows how I read it.
  4. BigQuery: link it if you want raw event data. The BigQuery export is free for standard GA4 properties, which was not true in Universal Analytics.

Step 7: Check the Numbers and Understand Why They Differ

Run both tools side by side for a few weeks, then compare. Don’t expect them to match. They count things in different ways, and that is normal.

The main differences I explain to clients and teams are:

  • Sessions: Universal Analytics starts a new session at midnight and when campaign source changes. GA4 doesn’t, so GA4 often shows fewer sessions.
  • Users: GA4’s main user metric is active users, not total users, so the headline figure can look different.
  • Bounce rate: in GA4, bounce rate is the opposite of engagement rate. An engaged session lasts longer than 10 seconds, has a conversion, or has two or more page views. It is not the same as the old bounce rate, so don’t compare them directly.
  • Conversions: a Universal Analytics goal counts once per session. A GA4 conversion counts every time the event fires, unless you set it up differently.

As a rule of thumb, I am happy when page views and purchases are close between the two tools. If those are far apart, something is wrong with the tag, not with the way GA4 counts. Users and sessions can differ more without being a problem.

Common Tracking Gaps I Look For

  • Pages or templates without the GA4 tag, such as landing pages built in a separate tool.
  • Checkout or booking steps on a different domain with no cross-domain setup.
  • Thank-you pages that load without a full page refresh, so no page view fires.
  • Your own team’s visits still counted because the internal traffic filter was left in Testing.

Step 8: Rebuild Your Reports and Dashboards

GA4 reports look very different. Many popular Universal Analytics reports are gone or have moved. Plan where each team will find its numbers.

  • Use the Reports section for quick, everyday numbers. You can customise the left menu through the Library.
  • Use Explorations for funnels, paths and detailed tables. These are close to the old custom reports.
  • Rebuild Looker Studio dashboards on the GA4 data source. Old dashboards built on Universal Analytics will stop updating after July.

For SEO reporting, I build one simple organic report first: sessions, engaged sessions and conversions from organic search, by landing page. That covers most of what clients and managers actually ask about.

Step 9: Save Your Universal Analytics Data

Once processing stops, you can still look at old reports for a while. After that, the data is gone, so decide now what to keep.

  1. Choose the reports you will want for year-over-year comparisons, such as monthly traffic by channel, top landing pages and conversions by source.
  2. Export them from the report screen as CSV, Excel or Google Sheets files.
  3. For larger or repeated exports, use the Google Analytics Sheets add-on or the Reporting API.
  4. If you have Universal Analytics 360, use the BigQuery export to keep raw data.
  5. Store the files somewhere shared, with a note on which view and date range each one covers.

I’d export monthly totals rather than daily data for most small and medium sites. You rarely need daily figures from three years ago, and monthly tables are much easier to work with later.

Step 10: Train the Team and Write It Down

The last step is the one most people skip. Write a short tracking plan: every event name, what it means, its parameters, and which ones are conversions. Keep it next to your audit sheet.

Then show each team where their numbers now live. Ten minutes of training saves weeks of “the numbers look wrong” emails after July. If you are planning your year, I also put this migration near the top of my list in SEO priorities for 2023.

A Simple Timeline to Finish Before July

If you are starting in January, this pace works for most sites:

  • January: audit Universal Analytics, create or check GA4, fix the default settings.
  • February: rebuild events, conversions, custom dimensions and ecommerce.
  • March: link Google Ads and Search Console, build audiences, compare data.
  • April and May: rebuild dashboards, fix gaps, train the team.
  • June: export the Universal Analytics reports you want to keep.

Smaller sites can do most of this in a couple of weeks. Larger sites with ecommerce, several domains or heavy Google Ads use should start now and not leave anything to June.

Conclusion: Work Through Your GA4 Migration Checklist Now

A GA4 migration checklist is not about copying Universal Analytics line by line. It is about deciding what you really need to measure, setting it up properly, and saving the history you will miss later.

My advice is to do Steps 1 to 3 this week. They are quick, and they make sure GA4 is collecting clean data while you work on the rest. Then move to events and conversions, because those take the longest to get right.

Frequently Asked Questions

When does Universal Analytics stop working?

Standard Universal Analytics properties stop processing new data on July 1, 2023. Universal Analytics 360 properties stop on July 1, 2024. Google says you will still be able to see old reports for at least six months after processing stops.

Will my Universal Analytics data move to GA4?

No. GA4 is a separate property and only collects data from the day its tag goes live. If you want to keep old numbers, export the reports you need before access ends.

How long does a GA4 migration take?

A small site with a few conversions can be done in one or two weeks. Sites with ecommerce, several domains or Google Ads usually need a few months, including time to compare data. Starting early also gives you more months of GA4 history.

Do I need to keep Universal Analytics running while I set up GA4?

Yes, keep both running until July 1, 2023. Running them side by side lets you compare numbers and catch tracking gaps. There is no benefit in removing the old tag early.

What is the difference between goals in Universal Analytics and conversions in GA4?

In Universal Analytics, goals were set per view and counted once per session. In GA4, any event can be marked as a conversion, and it counts each time the event fires by default. Thank-you page goals need a new event built on page views.

Why are my GA4 numbers different from Universal Analytics?

The two tools count sessions, users and bounces in different ways. GA4 does not start a new session at midnight or when the traffic source changes, so it often shows fewer sessions. Page views and purchases should be close, so check your tags if those differ a lot.

How do I export my Universal Analytics data?

Open each report you want and use the Export option to save it as CSV, Excel or Google Sheets. For bigger exports, use the Google Analytics Sheets add-on or the Reporting API. Universal Analytics 360 users can also export raw data to BigQuery.

Should I let the Setup Assistant copy my goals to GA4?

It is a useful starting point, because the goals migration tool copies eligible goals as conversion events. I still check each one by hand and remove any that are no longer useful. Some goal types, like duration goals, do not need copying at all.

Get the Next Guide in Your Inbox

Google updates, AI search changes and practical SEO guides. We email you when a new article is published, nothing else.

One email when we publish something new. No spam, unsubscribe in one click. Privacy

Written by Lovepreet Singh Digital Marketing Manager @ Softtrix
  • 12+ years in SEO
  • 333 articles
  • Punjab, India

Lovepreet Singh has been working in SEO for the last 12 years. He started as an SEO analyst, checking rankings and fixing on-page issues, and today he is Digital Marketing Manager at Softtrix Tech Solutions, looking after search and growth for client websites, from online stores to local service businesses.

  • AI Search & AEO
  • Technical SEO
  • Local SEO
  • Google Business Profile

Keep Reading