Next-generation Google Analytics with event-based tracking, cross-platform measurement, AI-powered insights, and privacy-first design.

113936 detections
20 websites tracked
Updated 15 Jun 2026

Websites Using Google Analytics 4

What Is Google Analytics 4?

Google Analytics 4 (GA4) is the current generation of Google's free web analytics platform, built around an event-based data model that replaced the session-based Universal Analytics. Universal Analytics stopped processing data on 1 July 2023, and GA4 became the only version of Google Analytics that collects and reports new data. Because Google Analytics as a whole is detected on more than half of all websites and holds roughly an 80 percent share of the analytics market according to W3Techs, GA4 is now the single most commonly encountered analytics tag on the web—if a site tracks anything, there is a strong chance it runs GA4.

GA4 was engineered for a multi-device, privacy-constrained world. It unifies website and mobile-app measurement in one property, treats every interaction as an event rather than a page view, and uses machine learning to model behavior when consent or cookies are unavailable. For the broader family history and the legacy footprint, see our companion profile on Google Analytics; this page focuses specifically on GA4 and, most usefully, on how to detect it on any site.

The shift from Universal Analytics to GA4 was not a cosmetic rename—it changed the underlying data structure, the reporting interface, and the way the tag behaves in the browser. That matters for detection because the two generations leave different fingerprints. A site that migrated will have swapped its UA- property for a G- measurement ID, replaced analytics.js with gtag.js, and begun sending events to a different collection path. Recognizing those exact differences is what separates a confident "this is GA4" verdict from a vague "there's some Google tracking here."

How Google Analytics 4 Works

GA4 collects data through a single JavaScript library—the global site tag, gtag.js—which can be embedded directly or, very commonly, deployed through Google Tag Manager. When the tag loads, it initializes a measurement ID, generates or reads a client identifier, and begins sending events to Google's collection endpoint.

The defining concept is the event. In Universal Analytics, the page view was the atomic unit and most reports were session-centric. In GA4, a page view is just one event among many, and so are scrolls, outbound clicks, file downloads, video engagement, site searches, and any custom interaction you define. Each event can carry parameters—key-value pairs that describe context such as the item purchased, the form submitted, or the value generated.

A typical GA4 implementation loads https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX, then runs an inline configuration call:

gtag('config', 'G-XXXXXXX');

From that point, events are dispatched to https://www.google-analytics.com/g/collect (or to a region-specific or server-side collection endpoint). GA4 sets a first-party _ga cookie to persist the client ID across visits and a per-property _ga_<CONTAINER-ID> cookie to track session state. Enhanced Measurement automatically captures common interactions without extra code, while BigQuery export—free for all GA4 properties—streams raw event data for SQL analysis.

Because GA4 is so often delivered via Google Tag Manager, the analytics request frequently appears only after GTM executes. That relationship is central to detection and is explored further in our guide on how to check if a website uses Google Tag Manager.

It is also worth understanding what a GA4 collection request actually carries, because the parameters double as detection signals. A typical /g/collect hit includes v=2 (the Measurement Protocol version that distinguishes GA4 from Universal Analytics' v=1), tid=G-XXXXXXX (the measurement ID), cid (the client ID read from the _ga cookie), en (the event name, such as page_view or purchase), dl (the document location), and dr (the referrer). When several events batch together, GA4 may send them in a single POST request body rather than as separate query strings. Seeing v=2 and en= parameters is, in practice, an unambiguous GA4 confirmation that no other analytics tool produces.

How to Tell if a Website Uses Google Analytics 4

GA4 leaves a distinctive fingerprint. The most reliable way to confirm it is to corroborate two or more of the following signals. Here is the practical detection workflow.

1. View the page source. Press Ctrl+U (Cmd+Option+U on Mac) and search the HTML for:

  • googletagmanager.com/gtag/js?id=G- — the GA4 library being loaded.
  • gtag('config', 'G-XXXXXXX') — the explicit GA4 measurement ID, which always begins with G-.
  • gtag('event', ...) — custom GA4 events.

The G- prefix is the single clearest GA4 marker. (A UA- prefix instead indicates the retired Universal Analytics.) Note that tags injected by Tag Manager may not be visible in source view.

2. Inspect the Network tab in Chrome DevTools. Open DevTools (F12), select Network, filter for collect or gtag, and reload. Look for:

  • A request to google-analytics.com/g/collect — the /g/ path is specific to GA4.
  • A tid=G-XXXXXXX parameter inside that request, which reveals the exact measurement ID.
  • The download of gtag/js?id=G-XXXXXXX.

Because these requests fire even for GTM-injected tags, the Network tab is the definitive check.

3. Examine cookies. In DevTools, open Application → Cookies. GA4's signature is the pairing of a _ga cookie with one or more _ga_<CONTAINER-ID> cookies (for example _ga_ABC123DEF4). That container-suffixed cookie is unique to GA4 and is the easiest cookie-based confirmation. On consent-gated sites, these cookies may appear only after the visitor accepts tracking.

4. Use the Console. Type gtag and press Enter—if GA4 is present, gtag is defined as a function. Type dataLayer to inspect the Tag Manager data layer, which often contains the GA4 configuration and events. You can also inspect the _ga cookie directly from the Console with document.cookie to confirm the client identifier is being stored, which is a quick corroborating check when DevTools panels are inconvenient.

5. Grep the HTML with curl. Run curl -sL https://example.com | grep -i "gtag\|G-" to scan server-rendered markup for the GA4 library and G- IDs. Since curl does not execute JavaScript, it will not catch tags injected by GTM—use a browser or a rendering analyzer for those.

6. Reach for detection tools. Wappalyzer, BuiltWith, and Google Tag Assistant identify GA4 and frequently display the measurement ID. They are quick but can miss GTM-injected or server-side implementations, so confirm with the Network tab when accuracy matters.

A server-side detector such as StackOptic automates these checks when you analyze a URL, reporting GA4 alongside other tags. For step-by-step detection, see how to tell if a website uses Google Analytics 4, and for a wider audit of every tracker on a page, how to find out what analytics a website uses.

A reliable rule of thumb when auditing: trust the Network tab over everything else. Source view tells you what the server sent, extensions tell you what a third party guessed, and cookies tell you what was stored—but the live /g/collect request with a v=2 and a G- measurement ID is the one piece of evidence that proves GA4 is not merely installed but actively collecting. If you see the gtag.js library load yet no collection request fires, that often means consent has not been granted, the tag is misconfigured, or an ad blocker intercepted the beacon, each of which is a meaningful finding in its own right.

Key Features

  • Event-based model: every interaction is an event with custom parameters, not a rigid page-view hit.
  • Enhanced Measurement: automatic tracking of scrolls, outbound clicks, site search, video, and downloads.
  • Cross-platform measurement: unified web and app reporting in a single property.
  • Predictive metrics: machine-learning estimates for purchase probability, churn probability, and predicted revenue.
  • Explorations: funnel, path, cohort, and segment-overlap analysis beyond standard reports.
  • Free BigQuery export: raw event-level data for SQL queries and modeling.
  • Consent-mode modeling: behavioral modeling that fills gaps when users decline tracking.

Pros and Cons

ProsCons
Free, with raw BigQuery export includedEvent model has a steeper learning curve than UA
Unified web + app measurementMigrating from UA broke historical continuity
Privacy-aware design with consent modelingReports can feel less intuitive than the old UI
Deep integration with Google Ads and Search ConsoleData thresholding can hide low-volume detail
Predictive, ML-driven audiencesStill requires consent management in the EU

Google Analytics 4 vs Alternatives

GA4 is the default, but it is not the only option—particularly for teams that prioritize data ownership, simplicity, or product-grade behavioral analysis.

ToolModelHostingBest for
Google Analytics 4Event-basedGoogle cloudWeb + app analytics with Ads integration
MatomoSession + eventSelf-host or cloudData sovereignty, GDPR control
MixpanelEvent-basedVendor cloudProduct funnels, retention, cohorts
PlausibleAggregateVendor or self-hostLightweight cookieless metrics

Organizations with strict data-residency needs often choose Matomo for full ownership, while product teams that need granular funnel and retention insight frequently complement GA4 with Mixpanel.

Common Use Cases

  • Unified web and app analytics: measuring the same users across a website and a mobile app in one property.
  • Marketing attribution: tying Google Ads campaigns to on-site conversions.
  • Funnel and retention analysis: using Explorations to find drop-off and return patterns.
  • Audience building: creating predictive and behavioral audiences for remarketing.
  • Raw data analysis: exporting events to BigQuery for custom SQL and machine learning.
  • Technical audits: confirming GA4 deployment as part of reviewing the full technology stack a website uses.
  • Consent verification: checking whether GA4 correctly withholds its cookies and collection requests until a visitor accepts tracking, a frequent requirement in privacy reviews.
  • Migration verification: confirming a clean cutover from the retired Universal Analytics to a live, correctly configured GA4 property.

Frequently Asked Questions

How do I know a site uses GA4 and not Universal Analytics?

Look at the measurement ID prefix. GA4 IDs always start with G- (for example G-ABC123DEF4), the library loads from gtag/js?id=G-, and events go to /g/collect. Universal Analytics used UA- IDs and analytics.js, and it stopped processing data in 2023—so any live data collection today is GA4.

What cookies does GA4 set?

GA4 sets a first-party _ga cookie holding the client ID and one or more _ga_<CONTAINER-ID> cookies holding session state. The container-suffixed cookie is unique to GA4 and is the clearest cookie-based way to confirm it. These cookies may be deferred on sites that gate tracking behind a consent banner.

Why does the GA4 request only appear after the page loads?

Many sites deploy GA4 through Google Tag Manager, which injects the tag at runtime. The gtag/js download and the /g/collect request therefore fire after GTM executes, which is why the DevTools Network tab reveals GA4 even when "View Source" shows only a dataLayer and a GTM container.

Can I detect GA4 with a server-side tool or curl?

curl -sL <url> | grep -i "gtag\|G-" finds GA4 only when the tag is hard-coded in the HTML, because curl does not run JavaScript. Tags injected by Tag Manager require a browser Network tab or a rendering-based analyzer like StackOptic that executes the page before reporting.

Is GA4 GDPR compliant out of the box?

Not automatically. GA4 includes privacy controls, IP-address discarding, and consent-mode modeling, but EU sites still need a compliant consent-management platform and proper configuration. Detection-wise, this means GA4 cookies and collection requests often will not fire until a visitor explicitly accepts tracking.

Can a site run both GA4 and Universal Analytics signatures?

You may occasionally find both, but for different reasons. During the 2023 migration many sites ran GA4 and Universal Analytics in parallel ("dual tagging") so they could build GA4 history before the cutover. Today, a leftover UA- reference usually means stale code that no longer sends usable data, since Universal Analytics no longer processes hits. If you see a live /g/collect request, GA4 is the version actually collecting; a UA- string with no corresponding /collect traffic is just a fossil in the markup.

Curious which analytics tags, measurement IDs, and trackers a site runs? Analyze any URL free at https://stackoptic.com.