BACK TO BLOG
TOOL HOW-TOOctober 27, 20267 min read

How to Attribute Shopify Revenue Across Meta, Google, TikTok

JH

By Joris van Huët

Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs

Published

2026-10-27

The short answer: one order, four answers. A Shopify store on Meta, Google and TikTok gets at least four for every order (Shopify's, GA4's and one per ad platform), and they disagree by design. Give each source one job. Shopify says what sold, GA4 records the path, and a causal read says what each channel caused. For that last job, Causality Engine runs on GA4's Attribution paths export with no Shopify app and nothing to grant in the admin, per its Shopify integration page. The first finding is free on the start page, and the full read is €99 once. The route: Shopify's Attribution page, its model switch and path view, a week of GA4 against orders, clean UTMs, then the read.

Disclosure: I founded Causality Engine and own it, and this page recommends it. Every claim about it links to Causality Engine's own pages.

Three sources, three jobs:

  1. Why the dashboards outnumber the till. For example, a buyer clicks a TikTok ad, then a Meta ad, then a Google Shopping ad, and places a €100 order. It can appear as €300 across the three ad accounts (3 x 100) and as €100 in Shopify. Causality Engine's Shopify guide calls claimed divided by real the claim ratio. Here it is 3.0. That is the system counting, not your team failing.
  2. Start with the report you already pay for. Shopify's Attribution page offers five models and a path-to-purchase view, per Shopify's help centre, on the store you already run.
  3. One check decides whether GA4 can be trusted. Compare GA4 transactions with Shopify orders for a full week. A clear shortfall means a tracking gap to fix before any model, as the Shopify guide advises.

Inputs and outputs

  • In: staff access to Shopify's Marketing and Reports areas, a GA4 property connected to the store, the three ad accounts, and a list of every link you paid to place.
  • Out: Shopify's view under two models, a weekly GA4-to-Shopify order check, tagged links, and every channel's caused share next to last-click.

Step 1: Open Shopify's Attribution page

In the admin, go to Growth, then Attribution. The Performance view shows sales, orders, average order value and sessions, with top channels and campaigns. The date range, attribution model and traffic type are adjustable, with Last non-direct click and Marketing traffic as the defaults, per Shopify's marketing performance page. Staff need the Marketing and Reports permissions to see it. Sales attributed to marketing exclude direct traffic, so this total sits below the store's total sales.

Step 2: Switch the model and watch who moves

Shopify lists five models: Last non-direct click, Last click, First click, Any click and Linear, per the same help page. Any click is generous by design, with full credit to every channel the customer clicked, and Shopify points to it for reconciling channel-reported numbers. Put Shopify's Any click figure per channel beside what each ad account claims for the same dates. An ad account that claims far more than even Any click shows is taking credit for orders Shopify never saw that channel's click on, such as views or modelled conversions.

Step 3: Read the path to purchase

The Path to purchase view reports median touchpoints before an order, median time to purchase and the channel sequences that lead to sales. It counts touchpoints from up to 30 days before an order, per Shopify's page. If TikTok opens many sequences and rarely closes one, last-click will keep calling it a loser. A channel does not have to write the ending to be a relevant chapter.

Step 4: Confirm GA4 sees the same orders, with an agent doing the tally

Shopify's GA4 setup page connects GA4 through the Google & YouTube sales channel and the GA4 tag. Then compare a week of GA4 transactions with Shopify orders. An AI agent can do the GA4 side through Google's experimental Analytics MCP server, which runs Data API reports with a read-only scope. It pulls transactions and purchase revenue by day, and you paste the week's order counts from the Shopify admin next to them. The agent flags days where the two diverge. A person opens those days in both systems before deciding what to fix. Purchase revenue in GA4 is net of refunded transaction revenue, per the Data API schema, so compare order counts first and revenue second.

Step 5: Tag every link you paid for

Shopify counts traffic arriving with utm_campaign in the URL as marketing, per its help page. GA4 wants utm_source, utm_medium and utm_campaign on every link, in one consistent lowercase spelling, since values are case-sensitive, per Google's URL builder page. An influencer link without tags lands in Direct in GA4. Google's direct traffic page lists that as the first cause of direct / none.

Step 6: Run the causal read on the GA4 export

Download Key event attribution paths from GA4's Advertising section for 12 months or more and drop it on the start page. The free preview reads the file in your browser and does not upload it, per the privacy policy. The €99 read then returns, per channel, what it caused next to last-click, with a data-health score and a next step. It takes 1 to 2 minutes, per how it works. On integrations, the wording matters. The home page lists Google Analytics 4 as live today, and Shopify, Meta Ads, Google Ads and TikTok Ads as coming soon. So the GA4 file is the whole input for now.

Step 7: Act on the gap, in steps

The case-studies page reports that a first read for Me Gorgeous, a Dutch fashion beta brand, surfaced roughly 8K EUR a month of Google spend that was not incremental. The brand moved it, and the page reports a +30% revenue lift for 2025. Those are the company's own published results from beta engagements, not a forecast for your store. The rule for your own numbers is on the agents page: under 90 data health, move budget in steps, and test a verdict in one region first.

Mistakes that skew a Shopify read

  • Comparing marketing-attributed sales with total sales. Shopify leaves direct out of the first, per step 1.
  • Mixing models between sources. Last non-direct click in Shopify against data-driven in GA4 is two rules, not two measurements.
  • Untagged links. Each one turns a paid visit into Direct, and every downstream number inherits it.

Meta, Google and TikTok are each paid for the clicks and views their own dashboards credit, and each counts a shared order in full. So the default view inside every ad account doubles as that account's argument for a bigger budget.

Free first, then the read

Steps 1 to 5 cost nothing. They already tell you which claims are inflated and whether GA4 is fit to read. Causality Engine, which I founded, does the remaining step from the same GA4 file. The first finding is free on the start page. The read is €99 once, refundable within 30 days, with Pro at €299 a month for automated GA4 ingestion, per the pricing page (checked on 27 October 2026). Shopify itself is covered in the Shopify entry, and the product in the Causality Engine entry.

FAQ

Which Shopify attribution model should I use day to day?

Keep the default Last non-direct click for trend reading. Use Any click when you reconcile against ad accounts, which is the use Shopify's help page suggests for it.

Why does GA4 show fewer purchases than Shopify?

Consent choices, blockers and broken tags all reduce what GA4 observes, while Shopify records every order it takes. A steady shortfall is a known gap. A sudden one is a tracking change, which is why step 4 compares a full week.

Do I need a Shopify app for the causal read?

No. Causality Engine's Shopify integration page says the read runs on one file, the GA4 Attribution paths export, with nothing to install on Shopify.

TAGS
ShopifyAttributionMeta AdsTikTok AdsGA4Causality Engine

ABOUT THE AUTHOR

I am Joris van Huët, an enterprise interim CMO. 15+ years, 50+ organizations, including ING, P&G, Nestlé, BNP Paribas, WeTransfer and Vinted. I take on innovation projects (venture building, design sprints), agentic marketing (setting up and running AI agents) and hands-on multi-channel work. See the track record.

I wrote and published this with AI assistance, and I answer for it. Claims about my own experience are limited to the track record above, and a statistic links to its source or is labelled as an example. I sell interim and fractional CMO work, which is why this site exists. How this site is written.

Senior marketing execution

A senior operator doing the work: campaigns, channels, CRM and AI agents, live from day one.