[UA→GA4] Universal Analytics versus Google Analytics 4 data

Comparing the Universal Analytics and Google Analytics 4 data models
This article explains the differences between the UA and GA4 data models. To understand the differences between specific metrics in UA and GA4 (for example, comparing Pageviews numbers you see in GA4 vs in UA), read this article.
In this article:

Hit types

Universal Analytics hit types include page hits, event hits, ecommerce hits, and social interaction hits.

In contrast, Google Analytics 4 data is event-based, with the principle that any interaction can be captured as an event. As such, Universal Analytics property hit types translate to events in a Google Analytics 4 property.

In a Universal Analytics property,

a hit type ...

is captured in a

Google Analytics 4 property as an ...

Page View








User timing




App/screen view



Events represent a fundamental data model difference between Universal Analytics and Google Analytics 4 properties.

A Universal Analytics event has a Category, Action, and Label and is its own hit type. In Google Analytics 4 properties, every "hit" is an event; there is no distinction between hit types. For example, when someone views one of your website pages, a page_view event is triggered.

Google Analytics 4 events have no notion of Category, Action, and Label and, unlike Universal Analytics reports, Google Analytics 4 reports do not display Category, Action, and Label. Therefore, it’s better to rethink your data collection in terms of the Google Analytics 4 model rather than port your existing event structure to Google Analytics 4.

Pageviews and screenviews

Page views in Universal Analytics translate to the page_view event in Google Analytics 4 properties. A page_view event is automatically triggered by the config gtag command or by the Google Analytics 4 Configuration tag in Google Tag Manager.

Some Universal Analytics pageview attributes have Google Analytics 4 equivalents, as shown below:

Pageview attribute in Universal Analytics

Pageview attribute in Google Analytics 4









A screenview is the app analog to a pageview. In Google Analytics 4 properties, a screen_view event is triggered each time a user views a screen.

The Pageviews total should be fairly close between Universal Analytics and Google Analytics 4, usually within a few percentage points, since the Google tag functions identically when recording pageview hits. The range of variation between the totals is usually due to different filters applied in Universal Analytics and Google Analytics 4.


A session is a group of user interactions with your website that take place within a given time frame.

In Universal Analytics, a session can comprise multiple page views, events, social interactions, and ecommerce transactions. Sessions are typically defined as having ended once there has been a 30 minute period of inactivity or another qualifying reset event has occurred.

Google Analytics 4 session metrics are derived from the session_start event, an automatically collected event. The duration of a session is based on the time span between the first and last event in the session. This and other nuances can lead to sessionization differences between your Universal Analytics and Google Analytics 4 properties.

Active user calculation

User activity is detected automatically in Google Analytics 4. In contrast, Universal Analytics relies on manual instrumentation (firing of an interactive event). A user can launch an app and be considered an active user in Google Analytics 4 but not in Universal Analytics. This may lead to higher active user counts for Google Analytics 4.

Session counting

Some aspects of session counting in Google Analytics 4 differ from Universal Analytics. In Universal Analytics, a new campaign will start a new session regardless of activity. In Google Analytics 4, a new campaign does not begin a new session. This may lead to lower session counts in your Google Analytics 4 property.

Late hits may also be a factor. Late hits are hits that aren't sent immediately. In Universal Analytics, hits are processed if they arrive within 4 hours of the close of the preceding day. In Google Analytics 4, events are processed if they arrive up to 72 hours late. Because Google Analytics 4 events are processed across a wider time range, you may see higher session counts in your Google Analytics 4 property, as well as variations in reported figures within these 72 hours.

For example, a user loses service while browsing your website on their mobile device and then regains service 48 hours later. Google Analytics 4 processes the late hit, while Universal Analytics doesn't, leading Google Analytics 4 to produce a higher session count.

Logged Google Analytics 4 events are uploaded automatically when iOS apps are backgrounded. This is not the case in Universal Analytics. As a result, iOS-related metrics may be significantly higher in your Google Analytics 4 reports.

Custom dimensions/metrics

Custom dimensions and custom metrics in Universal Analytics are used to add information to collected data. In Google Analytics 4, event parameters serve this purpose. Map your custom dimensions and metrics as follows, according to their scope.

Scope in your Universal Analytics property

maps to the following in your Google Analytics 4 property


Event scoped custom dimension


User scoped custom dimension


No Google Analytics 4 property equivalent


E-commerce parameters

Events, event parameters and user properties are subject to the limits of the Google Analytics 4 property.

Content grouping

In Universal Analytics, content grouping lets you group content into a logical structure, and then view and compare metrics by group name. For example, you can see the aggregated number of pageviews for all pages in a group such as 'Men/Shirts,' and then drill in to see each URL or page title within that group.

Google Analytics 4 properties have one predefined event parameter for content group ("content_group" in gtag.js or "Content Group" in GTM) that populates data into the "Content Group" dimension. Additional Universal Analytics content group dimensions may be implemented and operate separately in GA4 as event-scoped custom dimensions.

User ID

User ID in Universal Analytics and Google Analytics 4 serve a similar purpose in providing an identity space for users to analyze their data. From a data collection standpoint, no specific changes are necessary to map user IDs in a Universal Analytics property to a Google Analytics 4 property.

User ID in Google Analytics 4 properties presents a cross-platform, cross-device view of how users interact with your app or website. To use this feature, you have to be able to generate your own unique, persistent IDs, consistently assign those IDs to your users, and include the IDs along with the data you send to Analytics. Analytics creates a single user journey from all the data that is associated with the same user ID. Unlike Universal Analytics, a Google Analytics 4 property incorporates User ID natively across all reporting, analysis and insights and does not require a separate User-ID reporting view.

Aligning between app and web

If you need to obtain a singular view of users across app and web, make sure that the implementation of User ID on web is consistent with the implementation of User ID on app. Ensure that:

  • The same identifier is used to track users on app and web.
  • The values passed for User ID are of the same type across app and web (e.g. the string '555321' on web vs the integer 555321 on app)

Client ID

The Client ID is a unique, randomly generated string that acts as a pseudonymous identifier and pseudonymously identifies a browser instance. It gets stored in the browsers cookies, so subsequent visits to the same site can be associated with the same user.

Client ID in Universal Analytics and Google Analytics 4 share the same semantics and serve the same purpose in providing a pseudonymous user identifier. The app equivalent in Google Analytics 4 property is referred to as the App Instance ID.

Parameters (Google Analytics 4 properties)

In Google Analytics 4 properties, you can send parameters with each event. Parameters are additional pieces of information that can further specify the action the user took, or add further context to the event. For example, parameters can be used to describe the value of purchase, or to provide context into where, how, and why the event was logged.

Some parameters, such as page_title, are sent automatically. In addition to the automatically logged parameters, you can log up to 25 parameters with each event. For a game-style event such as level_up, for example, you may want to add parameters such as level_number, character_name, etc. Or, for a content-style event such as content_view, you may want to add parameters such as article_id, article_title, author_name, author_id, and so on.

User property (Google Analytics 4 properties)

User properties are attributes that describe groups of your user base, such as their language preferences or geographic. Analytics automatically logs some user dimensions so you don't have to set user properties for them.

Data collection settings that can be migrated

The following data collection settings migrate one-to-one from Universal Analytics to Google Analytics 4 as long as your Universal Analytics property data collection is implemented in gtag.js or Google Tag Manager.

Data collection settings with no equivalent in Google Analytics 4

  • control over IP masking- IP masking is enabled by default on Google Analytics 4 properties
  • custom task (analytics.js only) - not available in Google Analytics 4
  • timing - not available in Google Analytics 4

Event batching for Google Analytics 4 properties

In Google Analytics 4 properties, most events are batched client-side. However,

  • key events are always transmitted immediately, although they may be part of a batch
  • Containers loaded in debug mode will never batch events, to facilitate the realtime DebugView
  • If any events are still held client-side when the user leaves the page (e.g. by navigating to another page), those events are sent immediately
  • In browser environments that do not support the sendBeacon API, all events are sent as they happen, with no batching.

Comparing report data in your Universal Analytics and Google Analytics 4 properties

In addition to the data model differences outlined in this article, your tagging and configuration settings can cause variations between your Universal Analytics and Google Analytics 4 property data. When comparing your Google Analytics 4 property data to your Universal Analytics data, ensure that:

  • Your Tracking ID (from your Universal Analytics property) and tag ID (from your Google Analytics 4 property) are both collecting data from the same web pages.
  • Both properties have equivalent tag implementations. For example, review these considerations when using connected site tags.
  • All tags are firing successfully. Google Tag Assistant can help you verify that your tags are working correctly.
  • Your Universal Analytics property and Google Analytics 4 property use the same time zones (Property settings > Reporting time zone).
  • You compare an unfiltered view in your Universal Analytics property to a single web data stream in your Google Analytics 4 property.
  • Both the Universal Analytics property and the Google Analytics 4 property have been collecting data for at least 30 minutes, so that you can compare data in the Realtime reports.

With all of the conditions above in place, you can compare the following data in the Realtime reports between your Universal Analytics property and Google Analytics 4 property:

UA property metric / report Google Analytics 4 property metric / report


Realtime > Content > Pageviews tab

Event count (for page_view event)

Realtime > Event count by Event name card

Goal completions

Realtime > Key events

Key events by Event name card

(If you marked an event as a key event that maps to one of your goal completions, for example, you created and marked the event for opening a specific page that maps to your destination goals as a key event.)

Was this helpful?

How can we improve it?
Clear search
Close search
Google apps
Main menu