# GA4 attribution models for ecommerce stores

Data-driven vs last click in GA4. Paid, organic and email on the same purchase. What to show a merchandiser.

- Date: 2026-07-24
- Category: Analytics

# GA4 attribution models for ecommerce stores

GA4 attribution is how a purchase gets shared across paid, organic, email and direct when more than one session showed up. I am a Gold Coast web developer with 18 years on storefronts. Merchandisers still want a last-click story because it is easy to print. In 2026 data-driven attribution is the GA4 default for many properties, and it will disagree with Google Ads, with Klaviyo, and with the warehouse. The job is to pick a model for the meeting and to keep the purchase event honest underneath.

Google's [GA4 attribution documentation](https://support.google.com/analytics/answer/10596866) explains data-driven versus last click and the reporting identity around credit. This note is what I put on a slide for a store that also runs Performance Max. Sibling reading: [GA4 ecommerce events that match real revenue](https://alanvo.com/blog/ga4-ecommerce-events/) and [Performance Max vs Search campaigns for stores](https://alanvo.com/blog/performance-max-vs-search/).

If `purchase` is duplicated, every model is theatre. Fix tracking first.

## How GA4 attribution actually assigns a purchase

GA4 attribution actually assigns a purchase by looking at the key event and at the paths of sessions (and, with signals, more user-level context) that Google is allowed to see. Data-driven attribution uses a model that credits channels based on how paths that convert differ from paths that do not. Last click gives all credit to the last non-direct session before the purchase, with rules for what counts as a click. Paid and organic search, shopping, social, email and affiliates fight over that last slot.

Direct is the remainder and the dumping ground. Payment gateways, poorly tagged newsletters, iOS in-app browsers, and missing UTMs all inflate Direct. I filter payment referrals. I still cannot filter a user who bookmarked the PDP after a week of ads.

Lookback windows matter. A high-consideration Magento appliance might convert on day 20. A cookie pack on Shopify might convert the same afternoon. If you compare last click 7-day in Ads to GA4 90-day data-driven without saying so, you will have an argument that is really a window argument.

Cross-device is limited by consent and by whether Google Signals is on for Analytics. After the June 2026 Ads-side change, Signals is not the control for ads data into Google Ads. It can still affect how GA4 stitches users for reporting. Do not assume a logged-out Safari user and an Android paid click are one person.

Campaign names have to persist. If PMax is "Campaign #14" and Search is renamed weekly, path reports are unreadable. Stable names are an attribution strategy.

![GA4 attribution charts on a widescreen monitor](../../images/blog/ga4-attribution-ecommerce-1.jpg)

On [Their Nibs](https://alanvo.com/work/their-nibs/) the published lift was storefront conversion and orders after a rebuild. Attribution did not create that lift. It only described where people came from once the journey worked. On [retail conversion at scale](https://alanvo.com/work/retail-conversion/) Magento operations, we used funnels and conversion as management tools against $2.5 million year-on-year sales movement. Channel credit was a second conversation after the catalogue converted.

Reporting identity (blended, observed, device-based) changes how often Google can stitch those paths. Blended will look more complete and more mysterious. Device-based will look more conservative and will inflate Direct on people who switch phones. I pick one identity for the monthly pack and I do not swap it the morning of the meeting. If consent rates are low, no identity setting will invent a path Google was not allowed to store. That is a CMP conversation, not a model conversation.

Paid shopping clicks deserve a special look. The click is often a product card. The session may still get a later brand Search click before purchase. Last click will give Search the order. Data-driven may split. Neither is lying. The feed still earned the visit. If you only fund the closer, the card disappears and the closer has less to close. That is the same logic as [Performance Max vs Search](https://alanvo.com/blog/performance-max-vs-search/), read through GA4 instead of the Ads UI.

## Which GA4 attribution model to show a merchandiser

The GA4 attribution model to show a merchandiser is data-driven for "what assisted," and last click for "what closed," in the same meeting, with the same date range and the same key event. I do not pick one and hide the other. People need to see that brand Search closes and that PMax or email opened.

If the room can only hold one number, I give gateway revenue by week, then GA4 purchase revenue, then Ads conversion value. Attribution models are the fourth slide. That order prevents a redesign of organic because last click said Direct won.

Paid social and paid search will always disagree. Social often assists. Search often closes. Cutting social because last click is weak is how you starve the path. Cutting brand Search because data-driven spreads credit is how you lose cheap closers. Hold both thoughts.

Email is a special case. If Klaviyo uses its own last click, it will claim orders GA4 gives to paid. That is not a bug. It is two models. Decide whether email is allowed to overwrite UTMs on every click. Many flows send people to the homepage and steal credit. Send them to the product they were considering.

![Spreadsheet and coffee while reconciling revenue](../../images/blog/ga4-attribution-ecommerce-2.jpg)

Organic is not free in the sense of work. It is free in the sense of CPC. Last click organic looks healthy on a content site. On a store it can be brand navigational queries. Do not stop writing collection copy because PMax took the Shopping click. Do not stop Shopping because organic brand exists.

I avoid first click as a primary store model. It over-credits display and YouTube experiments. Use it as a diagnostic when you launch a new channel.

When I am in the room with someone who only buys Search, I still show an assisted conversion view for email and organic collection pages. Stores that "do not do content" still have size guides and delivery pages in the path. Last click will never thank those URLs. That does not mean they were useless. It means they are a cost of making the closer possible. Cut them only if you have a page-level conversion story, not because the model is silent.

Ads data-driven and GA4 data-driven are not the same model. They do not see the same path. Reconcile directionally. Do not expect identical CPA.

## Production checklist for models, key events and UTMs

A store is ready to talk GA4 attribution when this list is true.

1. One money key event: `purchase`. Not 15 key events of equal weight.
2. Transaction_id on purchase for deduping discussions with Ads.
3. Auto-tagging from Google Ads. Manual UTMs that do not collide with gclid.
4. Unwanted referrals: gateways, 3-D Secure, wallets.
5. Email UTMs consistent: medium email, campaign the flow name, content the module.
6. Reporting attribution settings documented: model, lookback, whether ads model is mixed in.
7. Channel group reviewed. Custom channel group if default lies about your mix.
8. Internal traffic filtered so staff last-click does not become Direct.
9. Consent not dropping the first session of a path while keeping the last.
10. A monthly export, not a live argument over today's incomplete lag.

Conversion lag: wait. Yesterday's model is incomplete. I use a lag of several days for paid, longer for high AOV.

## What breaks a model without anyone changing settings

A new PMax campaign that absorbs brand. Last click paid search falls. Data-driven still shows brand demand. If you only watch last click Search, you turn off the closer.

![Analytics graphs on a laptop in a dark office](../../images/blog/ga4-attribution-ecommerce-3.jpg)

A CMP that starts denying analytics on the landing and granting on the second page. Paths lose the first touch.

A theme that strips query parameters. gclid dies. Everything is Direct. Attribution looks like a recession in paid.

App-plus-web without user_id. Mobile app session and mobile web checkout are two people.

Refunds not sent. Channels that drove returned products keep their glory.

Timezone mismatches between Ads and GA4. Monday in one system is Sunday in the other. Weekly meetings become theatre.

I treat parameter stripping as a release blocker. Pretty URLs are not prettier than a working gclid.

## How to measure what you show in the merchandising meeting

Build one exploration: purchase key events, session campaign, data-driven. Duplicate it with last click. Same dates. Screenshot both.

Add a table of gateway orders. If GA4 is 15 percent under, say so before anyone cuts a channel by 15 percent.

For PMax, do not use last click GA4 as the kill switch. Use Ads conversion value, incrementality if you ever run a geo test, and brand Search volume as a canary. If brand queries in Search Console are stable and PMax last click exploded, you likely moved credit, not demand.

I do not invent incrementality percentages for my own work. I will say when a rebuild moved conversion because the work case already published it: [Their Nibs](https://alanvo.com/work/their-nibs/) at 31 percent conversions and 48 percent orders. Attribution models did not produce those figures. The storefront did.

## Related work on this site

[Retail conversion at scale](https://alanvo.com/work/retail-conversion/) is Magento ecommerce operations: measurement, merchandising and a $2.5 million year-on-year sales increase over three years. Channel meetings sat on top of a funnel that worked. [Their Nibs](https://alanvo.com/work/their-nibs/) is the Shopify rebuild where purchase journey moved the numbers. For the event that attribution needs, read [GA4 ecommerce events](https://alanvo.com/blog/ga4-ecommerce-events/). For the paid structure that steals brand credit, read [Performance Max vs Search](https://alanvo.com/blog/performance-max-vs-search/).

## FAQ

### What is the default GA4 attribution model for ecommerce?

Many properties use data-driven attribution for reports that support it. Confirm in Admin. Last click is still available and still what many merchandisers mean when they say "source." Check rather than assume.

### Should GA4 attribution match Google Ads ROAS?

Not exactly. Different models, different conversion actions, different windows, and Consent Mode will split them. They should move in the same direction when you change spend. If they diverge wildly, look at duplicates and at brand cannibalisation.

![Team looking at a dashboard on a wall screen](../../images/blog/ga4-attribution-ecommerce-4.jpg)

### Can I use GA4 attribution to prove email does nothing?

Not with last click alone, and not if email UTMs are missing. Look at assisted paths and at the ESP's own model, then decide whether flows send people to the right URL.

### Does GA4 attribution work if purchase events are wrong?

No. GA4 attribution will confidently share a duplicate or a missing order. Fix the purchase payload, then model. DebugView is faster than a philosophy debate.



HTML version: https://alanvo.com/blog/ga4-attribution-ecommerce/
