GA4: the operator's ultimate guide
Google Analytics 4 (GA4) is the analytics backbone of the modern marketing stack. It's the source of truth for behavior data, the audience builder for paid platforms, the conversion-event publisher for Google Ads, and the data origin for BigQuery-based attribution and MMM work. It's also famously controversial — the 2023 migration from Universal Analytics produced more operator pain than any other platform transition in recent memory. This guide is the long version — what GA4 actually is, how to set it up well, the audience and BigQuery patterns that compound, and how it dovetails with GTM, Conversions API, Google Ads, and your warehouse.
Where GA4 came from
Universal Analytics (UA) was Google's free web analytics platform from 2012 to 2023. It used a session-and-pageview data model — a session was a series of pageviews from a user, and most reports were built around sessions and pages. UA was the de facto industry standard; nearly every site on the open web ran it.
Google announced GA4 in 2020 as the successor. The model was fundamentally different — event-based instead of session-based, with every interaction tracked as a discrete event with parameters. The strategic reasons for the shift: cross-platform tracking (apps and web in one property), privacy-resilient measurement (events can be aggregated and modeled even without user identifiers), AI-driven insights (BigQuery export and machine-learning predictions), and Google's broader move toward a privacy-first analytics architecture.
The 2023 migration was rough. UA stopped collecting data on July 1, 2023; properties that hadn't migrated lost continuity. Many operators discovered late that GA4's UI was less polished, that historical data didn't transfer cleanly, and that custom reports and dashboards had to be rebuilt. Three years later, GA4 has matured considerably but the institutional pain hasn't fully faded.
The event-based data model
FIG. 01 — GA4 event data model
This is the conceptual shift that confuses everyone migrating from UA. In GA4:
- Everything is an event. A page view is a
page_viewevent. A click is aclickevent. A purchase is apurchaseevent. There's no separate concept of pageviews vs. Transactions vs. Interactions — they're all events with parameters. - Events have parameters. A
purchaseevent hasvalue,currency,items,transaction_id, etc. Apage_viewhaspage_title,page_location,page_referrer. - Some events are auto-collected.
page_view,scroll,click(for outbound),video_start/progress/complete,file_download. Enhanced Measurement. - Some events are recommended. Ecommerce events (
add_to_cart,begin_checkout,purchase), engagement events (sign_up,login). You implement these explicitly via GTM or gtag. - Custom events. Anything you need that isn't auto-collected or recommended. Use clear naming conventions.
The setup ladder
- Create the GA4 property. In Google Analytics admin → Create Property → choose business type and goals.
- Set up a data stream. Web data stream for a website. Mobile data streams for apps. Configure the stream's tracking ID (G-XXXX format).
- Install the Google tag via Google Tag Manager. Don't paste gtag.js directly on the site; GTM is the modern install path.
- Enable Enhanced Measurement. Auto-collects scroll, click, video, file download, and form-submit events. Configure the toggles in the data stream settings.
- Configure ecommerce events if applicable. Push
view_item,add_to_cart,begin_checkout,purchasevia your ecommerce platform's data layer. - Set up conversions. Mark the key events (purchase, lead, signup) as conversions in Admin → Conversions.
- Set up custom dimensions and metrics. Register event parameters and user properties as custom dimensions in Admin → Custom definitions.
- Configure data retention. Default is 2 months for event-level data. Change to 14 months (the max for the free tier) in Admin → Data Settings → Data Retention.
- Link to Google Ads. Admin → Product Links → Google Ads. Enables audience export and conversion data sharing.
- Link to BigQuery. Admin → BigQuery Linking. The single most important post-setup decision. Free for most properties; gives you raw event-level data access.
- Configure Consent Mode v2. Required for accurate measurement in regions with consent requirements.
- Configure Enhanced Conversions. Hashed first-party identifiers passed through to Google Ads for better attribution.
Audiences — the platform's secret weapon
GA4 audiences are user segments defined by event conditions. Built in GA4, they sync to Google Ads automatically (when properties are linked) and can be exported via BigQuery for activation in Meta, TikTok, LinkedIn, and any other paid platform. The audiences every account should build:
- All converters (suppress from prospecting).
- High-intent non-converters (cart abandoners, pricing-page viewers).
- Engaged sessions (3+ pages or 2+ minutes).
- Past customers by tier (single, multi, high-LTV).
- Lapsed customers (90+ days since last purchase).
- Predictive likely purchasers (auto-generated by GA4's ML).
Per-vertical audience recipes in GA4 audience recipes by vertical. Full audience builder mechanics in audience builder deep dive.
The BigQuery export — the single highest-leverage decision
GA4's free BigQuery export is the most underutilized feature in modern analytics. Once enabled, every event GA4 collects lands in a BigQuery table within minutes, queryable via SQL with no row limits. What this unlocks:
- Custom attribution models beyond GA4's defaults.
- Cohort analysis tied to product usage data.
- Activation of GA4 audiences in non-Google paid platforms via Reverse ETL.
- Marketing mix modeling input (event-level signal beats aggregated reports).
- Cross-source joins (GA4 + CRM + product data in one query).
- Long-term historical retention beyond GA4's 14-month limit.
Setup: Admin → BigQuery Linking → Link → choose your Google Cloud project. Free for most properties (data volumes under 1M events per day are within the free tier).
Reports vs Explorations vs raw data
| Surface | What it's for |
|---|---|
| Standard reports (Reports tab) | Predefined dashboards — acquisition, engagement, monetization, retention. Good for high-level monitoring. |
| Explorations | Custom analyses using GA4's report builder. Funnel, path, segment overlap, free-form, cohort. The main analyst surface. |
| BigQuery raw data | Event-level data accessible via SQL. The serious analytics surface for non-trivial work. |
| Looker Studio | Free dashboards on top of GA4 (or BigQuery). See Looker Studio. |
The conversion model: events become conversions become signals
The chain that makes paid optimization work:
- An event fires (e.g.,
purchasewith value=120). - You mark
purchaseas a conversion in GA4. - GA4 syncs the conversion to Google Ads (when linked).
- Google Ads' Smart Bidding optimizes toward that conversion event.
- For non-Google platforms (Meta, TikTok), you also fire the same event via Conversions API to feed each platform's optimization.
Without accurate GA4 conversion configuration, the downstream paid platforms optimize toward the wrong outcomes. Spend the hour to get this right.
Common GA4 mistakes
- Default 2-month data retention. Bump to 14 months immediately.
- Not linking BigQuery. Free, takes 10 minutes, unlocks everything downstream.
- Sending PII in event parameters. Violates Google's terms. Hash or strip before send.
- Treating GA4 like UA. Sessions and bounce rate don't translate. Learn the event model.
- Building audiences without exclusions. Cart abandoner audiences need customer exclusion to actually be useful.
- Skipping Enhanced Conversions and Consent Mode. Both are now standard, not advanced. Without them, Smart Bidding underperforms.
How GA4 fits the broader stack
- GTM for tag delivery — fires GA4 events, also fires platform pixels.
- Conversions API for server-side conversion duplication to Meta, TikTok, LinkedIn, etc.
- Google Ads for paid optimization fed by GA4 conversions and audiences.
- BigQuery for raw data access, custom attribution, cohort analysis.
- Looker Studio or Tableau for dashboards on top of GA4 + BigQuery.
- Reverse ETL (Hightouch, Census) to push GA4 audiences into Meta, TikTok, etc.
Is GA4 free?
Yes, for properties under 10M events per month. Above that, GA4 360 (the paid tier) is required — pricing is custom enterprise, typically $50K-$150K/year.
How long does the GA4 learning curve take?
Basic setup and reports: 1-2 weeks. Productive analyst-level work: 2-3 months. Expert-level (custom dimensions, BigQuery SQL, complex audiences): 6-12 months.
Should I run GA4 + Adobe Analytics?
Most companies don't. GA4 + BigQuery covers the use cases most teams had been using Adobe Analytics for, at a fraction of the cost. Enterprises with deep Adobe ecosystem investments may continue running both for transition periods.
Can I import historical UA data?
Officially no — Google retired UA on July 1, 2023. Unofficially, some operators exported UA data to BigQuery before the cutoff and use it for historical reference. New GA4 data doesn't connect to historical UA data in any meaningful way.
What about server-side GTM and GA4?
Server-side GTM lets you proxy GA4 events through your own server before they hit Google. Benefits: improved data accuracy (ad-blocker workaround), better consent control, ability to enrich events with backend data. See server-side container.
Is BigQuery export really free?
The export itself is free. BigQuery storage and query costs apply. For most marketing analytics use cases, costs are under $20-$50/month. High-volume sites may exceed the free tier.
Operating checklist
- Define the business outcome before opening the platform UI.
- Configure conversion definitions to match real revenue, not vanity events.
- Onboard first-party data and verify identity match rates.
- Set bid strategy and target based on actual margin economics.
- Build the structural taxonomy (campaigns, ad groups, ads) before launching.
- Launch with controlled budget; monitor daily for first 14 days.
- Pull weekly performance + search-term + audience reports.
- Document the runbook so the next operator can pick it up.