Skip to content

How to build a marketing measurement plan, step by step

Confirm purchase is a key event in GA4 and set the attribution settings. Then match GA4 revenue to Shopify, compare two models, export the paths and book one lift test. Leave mix modeling until you have two years of weekly data.

By , Founder & CEOUpdated 8 min read

If you sell online, you can usually build a working measurement plan in an afternoon. Confirm purchase is a key event in GA4 and set the attribution settings. Match GA4 revenue to Shopify, compare two models, export the paths and book one lift test. Mix modeling comes later, once you have two years of weekly data.

Step by step

  1. Confirm purchase is a key event. In GA4, go to Admin > Data display > Events. GA4 marks purchase as a key event by default on websites, so look for it with a filled star. If it's missing, your store isn't sending purchases to GA4, and nothing below will work.
  2. Set the attribution settings on purpose. In Admin > Data display > Events, click Attribution settings and pick the reporting attribution model and the key event lookback window. The default lookback for purchases is 90 days, with 30 and 60 days as options. Changes to the lookback apply going forward, so note the date you change it.
  3. Match GA4 revenue to Shopify. In Shopify, go to Analytics > Reports, filter the Category to Sales, open Total sales over time and group it by month. In GA4, open Reports > Monetization > Overview for the same month. Expect a gap: Shopify's help notes that Google can only count visitors with JavaScript and cookies turned on. Write both totals into the plan with the date. A gap that holds steady is a known offset, while a gap that suddenly widens is a tracking fault.
  4. Read credit by channel. In GA4, go to Reports > Acquisition > Traffic acquisition, which shows Session default channel grouping by default. These session dimensions always use paid and organic last click. Changing the reporting model in step 2 does not touch them.
  5. Compare two models side by side. Click Advertising, then Attribution > Attribution models. Use the drop-down in the Attribution model (non-direct) columns to set paid and organic last click next to data-driven, and note which channels move.
  6. Export the paths. Click Advertising, then Key event attribution paths under Key events, and choose purchase in the key events drop-down. Click Share this report in the top right to download the table. The file lists each path with its revenue, touchpoints and days to the key event.
  7. Book one lift test. Pick the channel whose credit swung most between the models in step 5. In Google Ads, open the Lift studies tab under Campaigns > Experiments, select the plus button and choose Conversion Lift. You set a holdback between 1% and 50% of the audience. In Meta, build an A/B test in Ads Manager rather than switching ad sets on and off, which Meta advises against.
  8. Decide when a mix model makes sense. In Shopify's Total sales over time report, set Group by to week and count the weeks you have. Robyn, Meta's open-source mix model, asks for a minimum of two years of weekly history. Until you have that, attribution plus tests is the plan.

A worked example

For illustration, say you sell candles through Meta ads, Google Ads and email. Say the model comparison in step 5 shows Meta at 20% of purchase revenue under paid and organic last click and 30% under data-driven. In this worked example, email holds 15% under both.

That swing is the signal. Meta's value depends on which model you ask, so no model can settle it. A Meta lift test can. Suppose the test finds far fewer extra purchases than either model credited. Then trust the test for Meta, keep attribution for email, and leave the overall split alone until a mix model has the history. Log the test's dates in the plan, because a test describes the weeks it ran, not every week after.

Now compare one store's GA4 export. On its Journeys sheet, journeys with 2 to 3 touches took 12.5 days to buy, and journeys with 4 to 9 touches took 16.9 days. Every lookback option GA4 offers covers that, so the window was not this store's problem. Its harder fact sits on the Journeys sheet too: journeys with 1 touch hold 79.5% of revenue. No model comparison can split a sale that had one touch. If your own paths look like that, lean on tests rather than models.

Which decision does each number support?

A plan is only useful if it says which number settles which argument. Write it down before the next budget meeting, not during it.

Decision you faceNumber to useWhere it lives
Which ad or creative to pausePlatform results, checked against GA4Ads Manager, Google Ads, GA4 Traffic acquisition
Whether a channel earns its budgetA lift test resultGoogle Ads Lift studies, a Meta A/B test
How to split next quarter's budgetA mix model, once the history existsWeekly Shopify sales next to weekly spend
Whether tracking brokeGA4 revenue against Shopify salesMonetization overview, Total sales over time

Two rules keep the plan honest. First, a platform's own report never settles a question about that platform's budget, because it is the party being judged. Second, every number gets a date and an owner, because settings drift. A lookback changed in March quietly changes every report after it.

If you only act on one row, make it the last one. When GA4 and Shopify stop agreeing, every other number in the plan is suspect until you know why.

What to check when the numbers look wrong

  • Revenue or sessions jumped overnight. Check for a measurement change before you credit a campaign. Shopify changed how it measures sessions from September 21 to 23, 2026, and warns that session-based metrics can shift without any real change in traffic.
  • Meta reports more sales than GA4 ever saw. Meta's standard settings also count purchases within 1 day of an ad view, with no click at all. GA4 records site visits, so those view-through sales have nowhere to show up in it.
  • Decimals appeared in key events. That is fractional credit. GA4 shows it when a data-driven model splits one purchase across several touches.
  • The model change did nothing in Traffic acquisition. Session dimensions ignore the reporting model. Look in Attribution models instead.
  • Direct is tiny in attribution reports and huge in Traffic acquisition. GA4's models give Direct credit only when the whole path was Direct.
  • Google Ads and GA4 disagree on conversions. GA4 uses last click for Google Ads conversions based on key events, whatever model you picked.

What to do this week

  1. Star the purchase key event. In GA4, go to Admin > Data display > Events. Pass: purchase is listed with a filled star. Fail: it's missing or unstarred, so every report in this plan is guessing.
  2. Write down your lookback window. In Admin > Data display > Events, click Attribution settings. Pass: you know the window, who chose it and when. Fail: nobody knows, so reports from before and after a change may not compare.
  3. Export last quarter's paths. In GA4, click Advertising, then Key event attribution paths, set last quarter as the date range and use Share this report to download. Pass: you have a file of paths with revenue and days to key event. Fail: the report is empty, which usually means purchase was not a key event yet.

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: Mark events as key events (Google); Select attribution settings (Google); Sales reports (Shopify); Analytics discrepancies (Shopify); Order coupons report (Google); Traffic acquisition report (Google); Scopes of traffic-source dimensions (Google); Key event attribution models report (Google); Key events attribution paths report (Google); Get started with attribution (Google); Set up Conversion Lift based on users (Google); About Conversion Lift (Google); About A/B testing (Meta); Analyst's guide to MMM (Meta); About attribution models and attribution settings (Meta)

Frequently asked questions

  • Which attribution model should I pick in GA4?
    Data-driven is GA4's default for key event reports, and paid and organic last click is easier to explain. Pick one, write it down, and compare both in the Attribution models report before you move budget on either.
  • Should I trust Shopify or GA4 for revenue?
    Use Shopify for revenue, because it records every order. Use GA4 for where visitors came from. Shopify's help notes that Google only counts visitors with JavaScript and cookies on, so GA4 usually comes in lower.
  • Can I run a lift test without an account rep?
    Sometimes. Google Ads lists Conversion Lift under Campaigns, then Experiments, though it isn't available in every account. Meta lets you build A/B tests yourself in Ads Manager. If neither works, a geo holdout needs only regions, a calendar and patience.

Go deeper: Causal attribution, explained.

Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.

Keep reading

Terms in this article

Browse the full glossary

Your platforms guess.
We run the math.

Upload a GA4 export and see what each channel caused, next to last-click, in 1–2 minutes. The read is yours to keep.

Free, in your browser: your file is not uploaded. The full read is €99, refundable within 30 days. Prices exclude VAT.
Or book a 30-min call.