How to pick the best ecommerce attribution model in GA4
Check which model GA4, Google Ads and Shopify each use. Compare data-driven with last click in GA4's Attribution models report and size your multi-touch revenue. Then see whether the model flips a channel across break-even ROAS.
By Joris van Huët, Founder & CEOUpdated 7 min read
Run the numbers for your store: the free attribution window calculator.
The best attribution model for ecommerce is usually the one that fits the decision in front of you. In GA4, that is often data-driven for reporting, checked against last click. To pick, compare the two side by side, size your multi-touch revenue, and see whether the switch moves any channel across break-even.
Step by step
You need GA4 with purchase marked as a key event, and a few months of data. Changing attribution settings needs Marketer access or above on the property. The rest is reading. Set the date range to the last full month, and use the same range in every tool.
- Check GA4's current model. In GA4, go to Admin, click Events under Data display, then Attribution settings. Note the reporting attribution model and the channels that can receive credit. Changing the model also rewrites past reports, so record today's setting before you touch it.
- Read the lookback windows. On the same page, check the key event lookback window. GA4 defaults to 30 days for acquisition key events and 90 days for all other key events, purchase included. Changes to the window apply going forward only.
- Compare models side by side. In GA4, open Advertising, then Attribution > Attribution models, and select your purchase key event. Use the drop-downs in the Attribution model (non-direct) columns to set data-driven next to paid and organic last click. Then read the % Change columns channel by channel.
- Size the revenue a model can move. Open Attribution paths under Attribution. In the Path length setting, choose equal to, enter 1 next to touchpoint(s) and click Apply. Single-touch revenue gets the same credit under every model, so only the rest is up for debate.
- Check what Google Ads bids on. In Google Ads, go to Goals > Summary, select your purchase conversion, then Edit settings > Attribution model. Data-driven is the default for most conversion actions, and the model you set changes how automated bidding optimises.
- Compare models in Google Ads too. Go to Goals > Attribution and pick Model comparison in the page menu on the left. Use the Compare and With drop-downs to set last click against data-driven, and look for campaigns whose value moves most.
- Open Shopify's attribution menu. In Shopify admin, go to Analytics > Reports, filter the Category to Marketing and open Performance by referring channel. With a sales metric and a marketing dimension, an Attribution menu appears in the configuration panel, set to Last click by default.
- Export the paths. Back in GA4's Attribution paths report, click Share this report in the top right and download the data. The report covers paths up to 20 touchpoints long, with purchase revenue and days to key event for each.
A worked example
Here is how the steps play out for a store that sells through Google Ads, Meta and email. For illustration, say your margin is 40%. One store's Break-even sheet holds the arithmetic for that margin: 1 divided by 0.40 gives a break-even ROAS of 2.5x.
Say your Attribution models report credits Paid Search with 30,000 of revenue under paid and organic last click, and 22,000 under data-driven. In this worked example, Google Ads shows 10,000 of spend on the same campaigns. For illustration, that is a ROAS of 3.0x under last click and 2.2x under data-driven.
Say the % Change columns also show Email up 15% and Organic Social up 20% under data-driven. In this worked example, data-driven moved credit away from the click that closed and toward touches earlier in the path. Nothing about your sales changed. Only the split did.
So the same campaigns sit above break-even under one model and below it under the other. That is the moment the model choice matters, and the moment to test before you move money. If the two numbers had been 3.0x and 2.7x, both above 2.5x, the model would not change your decision.
Here is how the example ends. You keep data-driven as the reporting model, because the team needs one number. You leave Google Ads on its default while its bidding learns from it. And you settle the Paid Search question with a holdout: pause it in some regions for a few weeks and compare total sales.
Now the second trap, from Shopify. Its Any click model gives every clicked channel full credit, so its totals can run above the orders you really received. In one store's Channels sheet, the touched column sums to 110.4% by design. A journey that touched two channels counts in both, just as Any click counts it twice. Views like that show reach. Never add them up as revenue.
What to check when the report looks wrong
GA4 and Google Ads disagree on the same campaign. GA4 uses last click for Google Ads conversions built on GA4 key events, while Google Ads applies the model set on each conversion action. Only key events where Google Ads is the last non-direct click become Google Ads conversions, whatever model Ads itself uses. Time zones can differ too: GA4 reports in the property's time zone, Google Ads in the account's.
Last month's numbers changed. In GA4, a new reporting model applies to historical and future data, so one switch rewrites old reports. In Google Ads, a new model only changes how conversions are counted from then on.
Odd rows such as (not set), Unassigned or Direct appear. GA4 uses (not set) when a dimension received no information, such as a tagged URL missing its source. Unassigned means no channel rule matched. In this report, Direct also covers key events with no path data to credit, such as imported data.
Key events show decimals. Data-driven splits one key event across several touches, so a channel can hold part of a sale. GA4 calls that fractional credit, and it is expected, not a bug.
Conversions shift after the fact. GA4 can reattribute conversions for up to 7 days after they happen, so read the most recent week with care.
Shopify shows a different winner. Shopify's Last click counts direct visits, while GA4's paid and organic last click ignores direct traffic. Same name, different rule, different winner.
What to do this week
- Write one line per tool. Note GA4's reporting model, the Google Ads model on your purchase conversion, and the model selected in your Shopify report. Pass: every report you share names its model. Fail: two reports built on different models land in the same meeting.
- Run the comparison for last month. In Advertising > Attribution > Attribution models, compare data-driven with paid and organic last click for purchases. Pass: no channel's revenue swings enough to change a decision. Fail: one does, so mark it for a test.
- Check the flagged channel against break-even. Divide 1 by your margin to get break-even ROAS, then compare it with the channel's ROAS under both models. Pass: both sit on the same side of break-even. Fail: the model decides whether the channel makes money, so run a holdout before you cut or scale it.
Check the homework. Your GA4 Attribution paths export already holds the evidence. Causality Engine reads that one file and shows what each channel caused next to what last-click gave it, in 1 to 2 minutes, for €99 once (excluding VAT), refundable within 30 days. Check the homework
Sources, 1 October 2026: Select attribution settings (Google); Key event attribution models report (Google); Get started with attribution (Google); Key events attribution paths report (Google); About attribution models (Google); Marketing reports (Shopify).
Related answers
Frequently asked questions
Where do I change the attribution model in GA4?
In Admin, click Events under Data display, then Attribution settings. Choose the reporting attribution model and click Save. The change applies to historical and future data, so note the old setting first.Why does Google Ads show different conversions than GA4?
They use different models and clocks. GA4 uses last click for Google Ads conversions based on its key events, while Google Ads applies the model set on each conversion action. Each tool also reports in its own time zone.Which attribution models does Shopify offer?
Shopify Analytics supports last non-direct click, last click, first click, any click and linear. In reports with a sales metric and a marketing dimension, Last click is selected by default, and it counts direct visits.
Go deeper: Incrementality testing, explained.
Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.
Keep reading
Terms in this article
- AttributionAttribution identifies user actions that contribute to a desired outcome and assigns value to each. It reveals which marketing touchpoints drive conversions.
- Attribution ModelAn Attribution Model defines how credit for conversions is assigned to marketing touchpoints. It dictates how marketing channels receive credit for sales.
- Attribution WindowAttribution Window is the defined period after a user interacts with a marketing touchpoint, during which a conversion can be credited to that ad. It sets the timeframe for assigning conversion credit.
- ConversionConversion is a specific, desired action a user takes in response to a marketing message, such as a purchase or a sign-up.
- Direct TrafficDirect Traffic refers to website visitors who arrive by typing the URL directly into their browser or through bookmarks. They do not come from search engines or referrals.
- Google AdsGoogle Ads is an online advertising platform where advertisers bid to display ads, service offerings, and product listings.
- IncrementalityIncrementality measures the true causal impact of a marketing campaign. It quantifies the additional conversions or revenue directly from that activity.
- Incrementality TestingIncrementality Testing measures the additional impact of a marketing campaign. It compares exposed and control groups to determine causal effect.