Most arguments about marketing performance are really arguments about credit. GA4 attribution is the machinery that settles those arguments inside Google Analytics, and it works differently from the Universal Analytics setup a lot of people still have in their heads. Universal Analytics stopped processing data on 1 July 2023, and the model list you remember from it no longer exists.
Here is what attribution decides, which models survived, how the lookback window quietly reshapes your numbers, and how to read the Advertising reports without drawing the wrong conclusion.
What attribution actually decides
Attribution answers one question: when a key event happens, which touchpoint gets the credit? Note the language — GA4 renamed “conversions” to key events in 2024, and the reporting surfaces followed. If you are reading an older tutorial that says “conversions,” it means the same thing.
Attribution does not change how many key events you recorded. It changes how those key events are distributed across channels, campaigns, and sources. Two reports can show the same total and completely different channel splits, and both can be correct. That is the single most common source of confusion when someone says the numbers “don’t match.”
The models GA4 still offers
Google removed first click, linear, time decay, and position-based models from GA4 in late 2023. Trying to reproduce a position-based split inside the interface is wasted effort — it is gone, and it is not coming back through a setting.
What remains:
- Data-driven attribution (DDA) — the property default. Credit is distributed fractionally across touchpoints based on modeled contribution.
- Last click (cross-channel) — all credit to the last channel before the key event, ignoring direct traffic unless the entire path is direct.
- Google Paid Channels last click — all credit to the last Google Ads click in the path. Useful for reconciling with Google Ads, useless for judging organic.
That last one trips people up. If you switch to it and organic search collapses to near zero, nothing broke. You asked a model that only credits Google Ads to describe a world that includes SEO.
Worth saying plainly: for a site whose growth comes from organic search and content, the choice is really between data-driven and cross-channel last click. The Google Paid Channels model exists to help advertisers reconcile with Google Ads reporting, and it will systematically understate everything you do in SEO. Use it for that one job and nothing else.
Data-driven attribution without the hand-waving
DDA compares paths that converted with paths that did not, then assigns fractional credit to touchpoints that measurably shift the odds. That is why you see decimals — 3.4 key events attributed to organic search is normal output, not a rounding bug.
Two honest caveats. First, the model is opaque; Google does not publish per-property weights, so you cannot audit why a channel got 18% instead of 24%. Second, DDA needs volume to say anything interesting. On a site with a few dozen key events a month, the data-driven split will usually look a lot like last click, because there is not enough path variety for the model to learn from. Do not build a budget reallocation on a thin month.
There is a third thing to watch. DDA only sees touchpoints GA4 recorded. Sessions with no resolvable source — consent declined, cross-domain gaps, untagged links — cannot contribute credit to anything, so their influence quietly lands wherever GA4 could see a touchpoint. Clean tagging is not a separate project from attribution; it is the input attribution runs on. If a meaningful share of your sessions sit in “unassigned” or show “(not set)” for campaign, treat every attribution conclusion as provisional until that share comes down.
Lookback windows move your numbers more than you think
The lookback window sets how far back GA4 looks for touchpoints when crediting a key event. It lives in Admin under attribution settings, alongside the model selection.
- Acquisition key events (first visit, first open): 7 or 30 days, defaulting to 30.
- All other key events: 30, 60, or 90 days, defaulting to 90.
Shorten the window and long consideration cycles lose their early touchpoints, which usually flatters whatever channel sits closest to the sale — brand search, direct, retargeting. Lengthen it and top-of-funnel channels look better. Neither is dishonest. Pick a window that matches your real buying cycle and then stop moving it, because moving it changes every historical comparison you make.
Worth knowing: changes to the model and the lookback window apply retroactively to your data in reports. That is unlike custom channel groupings, which only apply going forward. It also means a colleague quietly flipping a setting can change last quarter’s numbers with no audit trail in the report itself.
Model comparison and conversion paths, read properly
Both reports sit in the Advertising section. Model comparison puts two models side by side over the same date range, so you can see which channels gain and lose credit. Use it as a sensitivity check, not a verdict: if organic search holds roughly the same share under both data-driven and last click, your organic number is robust. If it doubles under one model, you have an assisting channel, and you should say so out loud before someone cuts its budget.
Conversion paths adds the part most teams skip — path length and days to key event. Median path length of one touch means attribution barely matters for you and you should spend the time elsewhere. Median of four or five touches over 20 days means single-touch reporting is actively misleading your channel decisions.
Where attribution and your other reports disagree
Three reliable mismatches, all expected:
- User acquisition vs traffic acquisition. User acquisition uses first-user dimensions — the source that first brought that person to the site, ever. Traffic acquisition uses session-scoped source and medium. Neither uses your attribution model. Only the Advertising key-event reporting does.
- GA4 vs Google Ads. Google Ads counts key events by click date and uses its own attribution and its own window; GA4 counts by the date the event happened. A 10–20% gap between the two platforms is routine, not a bug to chase.
- Consent mode and modeled data. Where consent is declined, behavioral modeling can fill gaps. Modeled sessions frequently fail to carry a clean source, which is one of the reasons “unassigned” or “(not set)” shows up in channel reports even when your tagging is fine.
A practical attribution routine
Do this once, then leave it alone:
- Confirm your key events are actually the ones that matter. Attribution across 14 loosely-defined key events tells you nothing.
- Set the lookback window to something defensible for your sales cycle and record the date you set it.
- Link Google Ads and Search Console so paid clicks and query data are not stranded outside the model.
- Run model comparison monthly. Report the range, not a single number, when a channel swings hard between models.
- Check conversion paths quarterly. If path length changes, your attribution assumptions changed with it.
One more piece of realism. GA4 attribution describes what happened inside GA4’s identity graph — cookies, consent, cross-device signals where available. It is not omniscient. Blend it with what you know from Search Console, ad platforms, and actual revenue, and treat a big shift with suspicion until a second source agrees.
Pairing attribution data with search performance
Attribution tells you which channels earned credit. It does not tell you which pages and queries earned the visit in the first place — GA4 has never reported keyword-level search terms, and Search Console remains the source for that.
This is where a lot of reporting stacks fall down: third-party rank and traffic estimates in one tab, GA4 in another, Search Console in a third, and nobody reconciling them. SEO Rocket connects Search Console and GA4 as ground truth for your own site and shows them beside third-party estimates, clearly labeled so you know which number is measured and which is modeled. It does not replace GA4 or implement tracking for you — your attribution settings and your tagging are still yours to get right. What it does is stop the estimates and the measured data from living in separate spreadsheets, which is usually where the wrong number wins the argument.