GA4 is the analytics standard for 2026, and it is also the analytics setup that most businesses got wrong when they migrated. The most common failure mode is not "GA4 is not installed" - it is "GA4 is installed but not set up to tell you anything useful." Events are firing with default names that do not map to business outcomes, conversions are either not defined or defined on everything, and the attribution model is on its default setting, which is a black-box data-driven model that GA4 will not explain.
This is the setup I run on every new client engagement. It is not a GA4 comprehensive guide. It is the subset of GA4 configuration that actually affects attribution accuracy, starting from a typical default install.
What does a working GA4 attribution setup actually look like?
A working setup has three things that most default installs lack: defined conversion events that map to real business outcomes (not just page views), a consistent event naming scheme that lets you query across properties without translating between names, and a reporting identity configuration that handles the consent and cross-device scenarios your traffic actually includes.
The default GA4 install gives you automatic events (page_view, session_start, first_visit), enhanced measurement events (scroll, file_download, video_play, form interaction), and whatever custom events you add. Out of the box, none of these are marked as conversions, and the event names are GA4's naming conventions rather than yours.
Why is event taxonomy the foundation of attribution accuracy?
Attribution models in GA4 assign credit to channels based on conversion events. If the conversion events are named generically or inconsistently (form_submission in one property, lead_form_submit in another, generate_lead in a third), you cannot query across properties, you cannot compare channel performance across clients or campaigns, and the data-driven attribution model is building models on noisy input.
The naming convention I use:
Action category + object + context (optional)
Examples:
generate_lead (form submission resulting in a CRM lead)
book_consultation (calendar booking)
purchase (e-commerce transaction)
start_trial (trial account creation)
view_pricing (pricing page intent signal)The naming convention should be documented before the first tag is placed and applied consistently across every property. When I take on a new client with an existing GA4 setup, the first hour is usually spent renaming events to a consistent scheme before touching anything else.
How do you define conversions correctly in GA4?
The most common misconfiguration I find is either no conversions defined at all or every significant event marked as a conversion. Both produce attribution data that is useless. No conversions means the attribution reports have nothing to model against. Too many conversions dilutes the signal - if form submissions, phone clicks, pricing page views, and purchases are all conversions, the data-driven model treats a pricing page view and a $5,000 purchase as equivalent outcomes.
The correct set of conversion events for a typical service business:
- One primary conversion: the action that directly produces revenue or a qualified lead (book_consultation, submit_quote_request, purchase)
- One to two secondary conversions: strong intent signals that predict the primary conversion (view_pricing, download_asset, start_trial)
- Nothing else marked as conversion
For an e-commerce business, add purchase_value as a conversion parameter so the attribution model can optimize toward revenue rather than transaction count.
What is the right attribution model for most businesses?
GA4's default is data-driven attribution, which uses a black-box machine learning model to assign credit. The model requires at least 400 conversions in the last 30 days to run reliably. Below that threshold, GA4 falls back to last-click for most reports without flagging this clearly.
For businesses under 400 monthly conversions, data-driven attribution is not actually running, and the fallback to last-click understates the contribution of upper-funnel channels (display, brand awareness campaigns, organic social). The practical recommendation:
- Under 400 monthly conversions: set the attribution model explicitly to linear or time-decay so you know what you are measuring, rather than relying on a fallback model that is not disclosed.
- 400+ monthly conversions with most traffic on Google channels: data-driven is fine.
- Significant multi-channel or offline conversion activity: linear or position-based, depending on whether you believe touchpoints are weighted toward recency or toward first/last.
The attribution model setting in GA4 is under Admin → Data Settings → Attribution Settings. It is not changed per report; it is set globally for the property.
How do you handle consent mode in GA4?
If you have EU traffic above 15 percent of sessions and you are not running consent mode v2, your conversion data is structurally incomplete. Consent mode v2 is Google's mechanism for GA4 and Google Ads to model conversions for users who decline consent, using behavioral patterns from consenting users as a proxy. Without it, rejected-consent sessions produce no conversion signal, which biases attribution toward channels that over-index on cookie-accepting audiences.
The implementation:
- Install a consent management platform (CMP) that supports Google Consent Mode v2. Cookiebot, OneTrust, and Usercentrics all have native GTM integrations that set the correct consent signals before GA4 fires.
- In GTM, set the default consent state to denied for analytics_storage and ad_storage, and update the state based on the CMP's output.
- Verify in GA4 DebugView that consent state changes are being passed correctly. You should see consent_update events firing when a user accepts or rejects.
For US-only businesses with no GDPR exposure, consent mode is less urgent. For any business with meaningful EU or California traffic, it is a measurement integrity requirement.
What is the reporting identity configuration and why does it matter?
GA4's reporting identity setting determines how it handles cross-device and cross-session attribution. There are three options:
- Blended (default): GA4 uses Google Signals for users who are signed into Google, and device-based identity for everyone else. This is the default setting and the one most installs leave untouched.
- Observed: GA4 uses only user IDs you provide and Google Signals, without modeling. More conservative, better for privacy-sensitive deployments.
- Device-based: GA4 treats each device as a separate user. Worst for attribution accuracy in multi-device scenarios.
For most businesses, Blended is the correct setting, and it should be confirmed explicitly rather than assumed. The reporting identity is under Admin → Reporting Identity in GA4.
If you have a logged-in user state on your site (account creation, checkout, portal access), implementing user ID collection is the single highest-value improvement to attribution accuracy you can make. A user who converts on mobile after reading three blog posts on desktop becomes attributable as a single journey if both sessions carry the same user ID. Without user ID, those sessions are two separate users with no visible connection.
How do you validate that the setup is working?
The validation sequence I run before considering a GA4 setup complete:
- Open DebugView and complete every primary conversion action on the site. Verify the correct event fires with the correct parameters.
- Check the Realtime report during the same session. The conversion event should appear with the correct event name.
- Pull the Traffic Acquisition report for the last 30 days. Verify that the channel groupings make sense - if 60 percent of your traffic shows as direct, your UTM tagging is incomplete. Direct should be under 20 percent for most businesses with a normal mix of paid, organic, and email traffic.
- Pull the Path Exploration report and trace three to five actual conversion paths. Verify that the paths match what you know about the business's acquisition funnel. If they do not, the event naming or the conversion definitions need adjustment.
- Compare GA4 session counts to the server-side request log for the same period. The two should be within 15 percent of each other. A larger gap indicates missing sessions from consent rejection, bot traffic, or a tracking gap.
A GA4 setup that passes this validation is producing attribution data you can use to make channel investment decisions. One that does not is producing data you will use to make decisions but should not.
