Google Analytics 4 replaced Universal Analytics in July 2023. Every site that was running UA either migrated or started fresh. But here is the problem: most of those setups are incomplete. The default GA4 configuration leaves out several critical settings, and the migration assistant did not carry everything over.
The result is bad data. Not obviously bad, where numbers look wrong and someone investigates. Quietly bad, where metrics are directionally correct but missing conversions, filtering out real users, or losing months of historical data because of a retention setting nobody checked.
This is the GA4 setup checklist. If your property has been running for months but you never did a proper configuration audit, start here.
1. Data Stream Configuration
A data stream is the connection between your website (or app) and your GA4 property. Most sites need exactly one web data stream. If you have both a website and a mobile app, you will have separate streams for each.
The common mistake here is creating multiple web data streams for the same site. This happens when someone removes and re-adds a stream during troubleshooting, or when a developer adds the measurement tag to a staging environment that reports to production. Every duplicate stream inflates your user and session counts.
Check: Go to Admin > Data Streams. You should see one web stream per domain. If you see duplicates, remove the extras and make sure only one measurement ID is deployed on your production site.
2. Enhanced Measurement Events
GA4 tracks several user interactions automatically through enhanced measurement. These are toggled on by default, but that does not mean they are all configured correctly.
The enhanced measurement events:
Page views: Fires on every page load and on history state changes (for single-page apps). This one is always on.
Scrolls: Fires when a user scrolls to the bottom 90% of a page. This is a blunt metric, but it tells you whether people are reading past the fold.
Outbound clicks: Tracks clicks to links that leave your domain. Useful for understanding where you send traffic.
Site search: Captures search terms when users search your site. Requires your search page to use a URL query parameter (like ?q= or ).
AI analytics tools for marketing fall into four categories: built-in AI features in platforms you already use (GA4, ad platforms), general-purpose AI applied to marketing data (ChatGPT, Claude), dedicated AI analytics platforms (Amplitude, Mixpanel, Tableau),
ChatGPT data analysis works by uploading CSV or Excel files to the Code Interpreter (Advanced Data Analysis) environment, where ChatGPT writes and executes Python code on your behalf to clean, explore, visualize, and interpret datasets. It handles files up to
There are three ways to connect ChatGPT to Google Analytics: exporting CSV files and uploading them to ChatGPT, using the GA4 API through Code Interpreter, and connecting through an MCP server for real-time access. Each method has different setup requirements,
?s=
Video engagement: Tracks YouTube embeds: start, progress (10%, 25%, 50%, 75%), and completion. Does not track non-YouTube video players.
File downloads: Fires when users download files with common extensions (pdf, xlsx, docx, csv, etc.).
Form interactions: Tracks form starts and submissions. This is newer and can be unreliable depending on your form implementation.
The mistake: Leaving site search enabled but not verifying the query parameter. If your search uses a parameter GA4 does not recognize by default, search terms will not be captured. Test it: search your site, check the URL, and confirm the parameter matches what GA4 expects.
Check: Admin > Data Streams > Enhanced measurement. Click the gear icon to review individual toggles.
3. Custom Events for Business Goals
Enhanced measurement covers generic interactions. It does not know what matters to your business. You need custom events for actions that represent real value: form submissions, demo requests, purchases, newsletter signups, account creation.
There are two ways to create custom events:
In GA4 directly: Admin > Events > Create event. This lets you create new events based on conditions applied to existing events. For example, you could create a generate_lead event that fires whenever a page_view event occurs on your /thank-you page.
Through Google Tag Manager: More flexible, more reliable. GTM lets you fire events based on element clicks, form submissions, scroll depth thresholds, timer triggers, and custom JavaScript conditions. For anything beyond basic page-based triggers, GTM is the right tool.
The mistake: Relying entirely on enhanced measurement and never setting up business-specific events. Without them, you know how many people visited your site but not how many did something valuable.
4. Marking Conversions (Key Events)
GA4 changed its terminology in early 2024. What used to be called "conversions" are now called "key events." The functionality is identical, the name just changed to align with Google Ads terminology.
Creating an event is step one. Marking it as a key event is step two. Until you mark an event as a key event, it will not appear in conversion reports, it will not be available for Google Ads optimization, and GA4 will not calculate conversion rates for it.
Check: Admin > Key events. You should see every business-critical event listed here. If the list is empty or only contains purchase, you are missing data.
Common key events to mark: generate_lead, sign_up, purchase, begin_checkout, add_to_cart, contact_form_submit.
5. Google Signals
Google Signals enables cross-device reporting. When a user is signed into their Google account on multiple devices, Signals connects those sessions into a single user journey. Someone who browses on their phone during lunch and converts on their laptop that evening shows up as one user with one conversion path, not two separate anonymous sessions.
The tradeoff: Enabling Signals triggers data thresholds. If your traffic is low, GA4 will withhold data in reports to protect user privacy. You might see "(other)" in some dimensions or missing rows in reports. For most sites with reasonable traffic (a few thousand sessions per month), this is not an issue.
Check: Admin > Data collection > Google signals data collection. Toggle it on if it is not already.
6. Data Retention Settings
This is the setting most sites get wrong, and the consequences are invisible until someone tries to run a year-over-year comparison.
GA4 defaults to two months of data retention for event-level data. This means the Explorations section (where you build custom reports, funnels, and path analyses) can only access the last two months of data. Standard reports are not affected because they use aggregated data, but any custom analysis is limited.
Fix: Admin > Data retention. Change event data retention from 2 months to 14 months. There is no reason not to do this unless you have a specific legal requirement for shorter retention.
If your property has been running for six months with the default setting, you have already lost four months of exploration data. It will not backfill. Change it now to stop losing more.
7. Internal Traffic Filters
Your own visits skew your data. If your team visits the site 50 times a day during development, those sessions mix with real user sessions and inflate page views, distort engagement metrics, and dilute conversion rates.
GA4 handles internal traffic through a two-step process:
Step one: Define internal traffic. Admin > Data Streams > Configure tag settings > Define internal traffic. Add your office IP address (or IP range). GA4 adds a traffic_type parameter to events from those IPs.
Step two: Create a data filter. Admin > Data filters. Create a filter that excludes events where traffic_type equals internal. Start it in "testing" mode to verify it is catching the right traffic, then switch to "active."
The mistake: Skipping step two. Defining internal traffic without activating the filter does nothing. The traffic is tagged but not excluded.
8. Connect Google Search Console
This is free data that many sites never connect. Linking Search Console to GA4 brings organic search query data directly into your Analytics reports. You can see which queries drove traffic to which landing pages, along with impressions, clicks, click-through rate, and average position.
How: Admin > Product links > Search Console. Click "Link" and select your verified Search Console property. Once linked, the data appears under Reports > Search Console.
Without this connection, organic search traffic in GA4 shows up as (not set) for query data. The connection fills that gap with real query information from Google.
If you run Google Ads, this connection is essential. Linking Google Ads to GA4 does two things: it imports your GA4 key events into Google Ads for campaign optimization, and it pushes Google Ads cost and click data into GA4 for unified reporting.
Without the link, your Google Ads campaigns optimize based on Ads-side conversion tracking only, which cannot see what happens after someone lands on your site (beyond the initial click). GA4 key events give Ads a fuller picture of which clicks lead to valuable actions.
How: Admin > Product links > Google Ads. Click "Link" and select your Google Ads account. You will need admin access to both GA4 and the Ads account.
The Configuration Audit
If your GA4 property has been running for a while, run through this checklist:
One data stream per domain, no duplicates
Enhanced measurement events reviewed, site search parameter verified
Custom events for every business-critical action
All important events marked as key events
Google Signals enabled
Data retention set to 14 months
Internal traffic filter defined and activated (not just defined)
Search Console linked
Google Ads linked (if running paid search)
Most sites will find at least two or three items that need attention. The data retention setting alone is worth checking immediately, since every day at the two-month default is a day of exploration data you lose permanently.
Monitoring Your Setup Over Time
Configuration is not a one-time task. New team members join and change tag setups. Developers rebuild pages and break event tracking. IP addresses change and internal traffic filters stop working.
Set a calendar reminder to audit your GA4 configuration quarterly. Check the Realtime report to verify events are firing. Test key events by completing the actions yourself and confirming they appear. Review the data stream for anomalies in event counts.
If you want to combine your GA4 data with search performance, competitor analysis, and site health metrics in one place, Ooty Analytics connects directly to your GA4 and Search Console properties and surfaces the insights that matter for growth.
Good measurement starts with good setup. Get the foundation right, and every analysis you build on top of it will be more accurate and more useful.