What Is Google Analytics 4 (GA4) and How Does It Work?

04 AUGUST 202610 min readGoogle Analytics

What Is Google Analytics 4 (GA4) and How Does It Work?

Everyone who spends money on advertising sooner or later faces the same question: what did this money bring in? The tool that answers it is Google Analytics 4 — GA4 for short. This post explains what GA4 is, how it works and the logic behind the numbers, from scratch. All the definitions and limits here are taken from Google’s official documentation.

Short answer

GA4 is a measurement system that records everything that happens on your website or app as an event. Its main difference from the old Universal Analytics is this: there the unit of measurement was the “pageview”; here everything — a page load, a button click, a form submission — is an event in the same format, with a name and parameters. This model makes it possible to measure a website and a mobile app in the same place.

This post is the starting point of the cluster. Setup, custom events, reports and advanced features are each explained step by step in separate posts — there are links to all of them at the end.

What is GA4?

An analytics report on a laptop screen — a traffic chart and a pie chart
GA4 is Google’s free analytics platform — website and app measurement come together in the same report.

Google Analytics 4 is Google’s free web and app analytics platform. It records where the people who visit your site come from, which pages they look at, how long they stay and which goal actions (form, call, purchase) they take.

In practice, GA4 is needed for three questions:

  • Where does the traffic come from? Google Search, Meta ads, direct visits, email — how many people each channel brought.
  • What do people do? Which page they stay on, where they leave, which button they press.
  • How many turn into customers? Which channel brings not just traffic but real leads.

The third question is the most important. The ad account shows traffic too — but the ad account grades its own work. GA4 compares all channels with the same yardstick.

How is GA4 different from Universal Analytics?

In July 2023 the old Universal Analytics (UA) stopped collecting data. GA4 isn’t just a “new version” — the measurement model itself has changed.

Universal Analytics (old)

  • Unit of measurement: pageviews and sessions
  • Events had a separate category / action / label structure
  • Website and app required separate properties
  • Bounce rate = single-page sessions
  • Limited options for custom measurement

GA4 (current)

  • Unit of measurement: the event — everything is an event
  • Every event has a name and any number of parameters
  • Website and app come together in the same property
  • Bounce rate = the inverse of engagement rate
  • Custom events and parameters can be set up freely

The key difference: in UA a “pageview” and an “event” were separate things. In GA4 the pageview itself is an event called page_view — so everything is in the same format.

Why does this change matter? Because a modern website is no longer “moving from page to page”. A person stays on one page, watches a video, fills in a form, taps the WhatsApp button — none of these creates a pageview. The event model can measure these behaviours too.

Account structure: account, property and data stream

GA4 has a three-level structure. This is exactly where beginners get confused most.

Level 1

Account

The top level — usually the company. One account can contain several properties.

Level 2

Property

The specific business you measure. Reports, audiences and goals live at this level. One website should have one property.

Level 3

Data stream

The source the data comes from: a website, an Android app or an iOS app. The measurement ID (starting with G-) is created right here.

Note: a website and a mobile app should be two separate streams of the same property — that way a user appears as the same person in both places. In UA this wasn’t possible.

The Measurement ID is a code starting with G- — for example G-XXXXXXXXXX. You find it under Admin → Data streams → (your website’s stream) → Stream details. Every tag connected to the site uses exactly this ID.

The most common mistake

Opening two properties for the same website (for example, “test” and “main”). As a result the data gets split in two and neither has a complete history. In GA4 it’s impossible to merge history — so set up one property at the start and stick with it.

The event — GA4’s basic unit

Everything collected in GA4 is an event. An event has two parts: a name and parameters. The name says what happened; the parameters give the details.

page_view ← the event name: what happened
page_location https://namigpashayev.com/en/blog/what-is-ga4
page_title What Is GA4 and How Does It Work?
page_referrer https://www.google.com/
engagement_time_msec 4820 (time actively spent on the page, in milliseconds)

The anatomy of an event: the name on top, the parameters below. In reports, the answer to “how many views did each page get” is built from exactly these parameters.

Up to 25 parameters can be sent with one event. For parameters to appear as separate columns in reports, they need to be registered as custom dimensions — I showed how step by step in the events and dataLayer post.

4 types of events

  1. Automatically collected. They come on their own as soon as the code is connected — you do nothing.
  2. Enhanced measurement. Turned on with one switch: scrolling, outbound link clicks, file downloads, video.
  3. Recommended. Events whose names Google has defined in advance but that you have to set up — for example purchase in e-commerce.
  4. Custom. Events you name yourself — like “WhatsApp button pressed”.

Automatically collected events

These fire as soon as the code is connected:

EventWhen it firesWhat it’s for
first_visitWhen a user visits the site for the first timeNumber of new users
session_startWhen a new session startsNumber of sessions and their source
page_viewWhen a page loads or the browser history changesPageviews
user_engagementWhen the page stays in focus for at least 1 secondReal engagement time

The user_engagement event is a little-known but very useful difference in GA4: it counts not just the page being open, but being in focus. So a tab left open in the background doesn’t record time.

Enhanced measurement: 7 events with no code

The data stream settings have an Enhanced measurement switch. When it’s on, GA4 collects these events on its own — without writing any extra code:

EventWhenMain parameters
scrollWhen the user reaches 90% of the page (once per page)engagement_time_msec
clickWhen a link to an external domain is clickedlink_url, link_domain, outbound
file_downloadWhen a link to a PDF, Word, Excel, video or other file is clickedfile_name, file_extension, link_text
form_startOn the first interaction with a form in a sessionform_id, form_name, form_destination
form_submitWhen a form is submittedform_id, form_name, form_submit_text
view_search_resultsWhen an internal site search is donesearch_term
video_start · video_progress · video_completeWhen a YouTube video starts, reaches 10/25/50/75% and endsvideo_title, video_percent, video_duration
Admin › Data streams › Web › Enhanced measurement

Data streams

Web

Android

iOS

Data collection

Custom definitions

Action measuredStatus

Page views — pageviewsOn

Scrolls — 90% depthOn

Outbound clicks — external linksOn

Site search — internal searchOn

Form interactions — formsOn

Video engagement — YouTubeOn

File downloads — file downloadsOn

The enhanced measurement control panel: each row can be switched off separately. Practical advice: keep them all on — when you need one later, there won’t be any history otherwise.

A trap

The form_submit event doesn’t work on every form. On forms submitted without reloading the page (via AJAX), GA4 often can’t catch it. So always measure important forms with your own custom event — don’t rely on enhanced measurement.

Users, sessions and the “engaged session”

GA4 has three basic units of measurement, and all three are often confused.

  • User: one device, recognised by a cookie stored in the browser. If the same person visits from a phone and a laptop — that’s two users.
  • Session: one period of a user’s activity on the site. By default it ends after 30 minutes of inactivity.
  • Engaged session: a session that shows real interest, not one that just “counts”.

By Google’s definition, a session is engaged if it meets at least one of three conditions:

Longer than 10 seconds

The session lasted more than 10 seconds

or

A key event happened

A form, a purchase, etc. — an action you consider important

or

2+ pageviews

Two or more pages/screens were opened

One of the three conditions is enough. Two main metrics come from this — engagement rate and its inverse, bounce rate.

Engagement rate and bounce rate

Formula
# Engagement rate
Engagement rate = engaged sessions ÷ total sessions × 100

# Bounce rate — the inverse of engagement rate
Bounce rate = 100% − Engagement rate

This is the biggest misunderstanding carried over from UA. In UA, a “bounce” meant a single-page session. In GA4, a person who stays on one page for 30 seconds reading an article isn’t a bounce — that’s an engaged session. So when you move to GA4, a sharp drop in bounce rate is normal; the site hasn’t improved, the definition has changed.

A first look at GA4 reports

The left menu has four main sections. Knowing this structure is enough to start:

Google Analytics 4 — left menu

Home

Reports

Realtime

Acquisition

Engagement

Monetization

Retention

Explore

Advertising

Admin

SectionThe question it answers

Realtimewho’s here right now?

Acquisitionwhere do they come from?

Engagementwhat do they do?

Monetizationhow much do they bring?

Retentiondo they come back?

ExploreI have my own question

The ready-made reports are in the Reports section; for questions the standard reports don’t answer there’s Explore (Explorations). The practical use of each is in the reports post.

GA4’s limitations — what you should know in advance

GA4 is powerful, but it isn’t magic. Knowing these at the start removes later surprises:

  • Data retention period: in the free version, user-level data is kept for 2 or 14 months. The default is 2 months — your first job after setup is to raise it to 14 months. This setting only affects Explorations and funnel reports; the ready-made reports are kept longer.
  • The numbers won’t match the Meta and Google Ads accounts. That isn’t a bug — each system uses different attribution and windows.
  • Thresholding: in segments with few users, GA4 may hide data to prevent individuals from being identified.
  • The “(other)” row: in fields with many different values (for example page URLs), when GA4 exceeds a daily limit it groups the remaining values under “(other)”.
  • Cookie consent: if a user doesn’t accept cookies, data doesn’t arrive in full. The solution is consent mode — I explained it in the advanced post.

The order for learning GA4

If you read this cluster in this order, you go from zero to a working system:

1

Learn the logic (this post)

The event model, account structure, sessions and engagement.

2

Set it up properly

Property, data stream and setup with Google Tag Manager, then testing. See: GA4 setup.

3

Set up your own events

dataLayer, custom events and parameters — the real power of measurement is here. See: events and dataLayer.

4

Learn to read the reports

Which report to look at when, and how to build Explorations. See: GA4 reports.

5

Move to the advanced level

Key events, attribution, audiences, Google Ads and BigQuery. See: advanced GA4.

What makes GA4 hard isn’t its interface — it’s its model. For someone who accepts the idea that “everything is an event”, everything else becomes a technical detail.

Is GA4 free?

Yes, the standard version is free and completely sufficient for most websites. The paid version, Google Analytics 360, is for large companies: it offers higher limits, longer data retention and an SLA. Small and medium businesses don’t need it.

Will my old data from Universal Analytics be moved to GA4?

No. UA and GA4 are built on completely different data models, so it’s impossible to migrate the history. GA4 only collects data from the day it’s installed. That’s why delaying the setup means directly losing history.

Why don’t GA4 numbers match the Meta and Google Ads accounts?

Because each system counts conversions by different rules. Ad accounts give credit to their own clicks and views (some also count view-through conversions), while GA4 distributes the action on the site with its own attribution model. A 10–30% gap is considered normal; what matters is that the trend within each system is correct.

Why did the bounce rate change sharply after moving to GA4?

Because the definition changed. In Universal Analytics every single-page session counted as a “bounce”. In GA4, if a session is longer than 10 seconds, or a key event happened, or 2 pages were opened — it’s an engaged session and doesn’t count as a bounce. So someone who reads an article for 40 seconds and leaves is no longer a bounce.

How many GA4 properties does one website need?

One. Even if you have a website and a mobile app, they should be two separate data streams of the same property — that way the user appears as the same person in both environments. Opening two separate properties splits the data and makes comparison impossible.

Do you need a developer to set up GA4?

Not for the basic setup — connecting the measurement ID with Google Tag Manager or your website platform’s built-in field is enough. A developer may only be needed for custom events: for example, to write data like add-to-cart or purchase value into the dataLayer.

How long is data kept in GA4?

For user-level and key event data there’s a choice of 2 or 14 months; the default is 2 months. This setting affects Explorations and funnel reports. The aggregated metrics in ready-made reports don’t depend on it. Raise this setting to 14 months as soon as you open a property — otherwise you won’t be able to compare with the same month last year.

Conclusion

GA4 looks complicated because people view it through the logic of the old Universal Analytics. Once you accept the principle that “everything is an event”, everything else — reports, audiences, funnel analysis — becomes a continuation of the same logic.

The next step is setup: setting up GA4 correctly with Google Tag Manager. If you’d like me to build the measurement system for your business, see our analytics and tracking service or go straight to the get a quote form.

Source: Google Analytics official documentation — automatically collected events, enhanced measurement, engagement metrics, data retention.

Share

Namig Pashayev

Digital marketing specialist. Works on advertising, analytics and tracking, and writes here about what he sees in practice.

Need help with this topic?

Tell us what you need. We'll review your ad accounts and website and send a written proposal within 5 business days. The audit is free.