How to Explain Attribution to Your CFO in One Number
By Joris van Huët
Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs
Published
2026-10-27
The short answer: three platforms, three numbers, and the CFO wants one. A CFO accepts a marketing number when it ties back to revenue the books already hold, so give that: the store's booked total, with each channel's caused share of it. Show the platform claims only as the reason that share was needed. Causality Engine is what I recommend for producing the share. Its €99 read of your GA4 export (pricing, checked on 27 October 2026) comes with receipts that check every number against the file. A link shares the read with whoever signs off the budget (how it works). You can see the first finding free at app.causalityengine.ai/start before you pay. Build it in four lines: what the platforms claimed, what the store booked, what each channel caused, and the link with its receipts.
Disclosure: I founded Causality Engine and own it, and this page recommends it. Every claim about it links to Causality Engine's own pages.
What a finance reviewer looks for first:
- The gap in euros, not in ratios. For example, Meta claims €58,400 for the quarter's first month, Google €39,700 and TikTok €9,150. That is €107,250 in claims against €76,800 of net sales in Shopify, a gap of €30,450. One subtraction a CFO can redo on a napkin.
- A total the books already trust. Shopify's net sales is gross sales minus discounts minus sales reversals, by the definitions in its sales reports. Use the figure your finance team reconciles against payouts, and say which one it is.
- A way to check it again next quarter. A number that cannot be rerun is an opinion. Causality Engine's checkup page prices four quarterly reads at €396 a year (checked on 27 October 2026), so the same method can sit in every board pack.
The memo, in four lines
| Line | What it says | Where it comes from |
|---|---|---|
| 1. Claimed | What each ad platform reports it drove | Ads Manager, Google Ads, TikTok Ads Manager |
| 2. Booked | What the store took in | Shopify net sales, or finance's revenue line |
| 3. Caused | Each channel's share of the booked total | The causal read of the GA4 export |
| 4. Proof | The shared read, with receipts | The read's share link |
Everything else is an appendix. If the CFO wants the reconciliation behind lines 1 and 2, the spreadsheet in How to Reconcile Meta, Google and Shopify Revenue is the one to attach.
Building each line
Line 1: say why the claims are bigger than the business
One sentence does it: each platform counts the sales it touched, inside its own window. Nobody in marketing did the sums wrong. Meta's attribution settings page shows a 1 or 7 day click window and a 1 day view window, chosen per ad set. Google Ads counts 30 days after a click unless someone changed it, per its conversion window article. Two rulebooks, each applied correctly. One order, two claims.
Line 2: name the revenue definition
Write "net sales, excluding tax and shipping" or whatever your finance team uses, and keep it the same every month. A definition that changes between reports is the first thing a controller spots.
Line 3: give the caused share, with its confidence
This is the line that changes the conversation. Export GA4's Attribution paths report, per Google's paths report guide, and run the read. Each channel comes back with its share of credit once Direct is split back to the channels that sent those buyers. Beside it sit last-click's share and a data-health score from 0 to 100. Quote the score next to the share. Under 90, the how-it-works page says to move budget in steps, which is exactly the caution a CFO wants written down.
What a finished read looks like is on the start page, from a store that donated its data with consent. Covering 1 January to 13 October 2026 and €905,898 of purchase revenue, it found 61.67% of Direct's credit belonged to Paid Shopping, Organic Search and Cross-network.
Line 4: send the link, not a screenshot
The read is shared by link or exported, per Causality Engine's home page. The receipts in it check every number against the export, so the CFO can trace a figure without asking you. One retention detail belongs in the memo: the privacy policy says a pay-per-use analysis and its source data are deleted 30 days after your last visit. Export a copy for the finance file.
The four questions that come next
Causality Engine's pricing page prints the four questions finance tends to ask, with answers. They are why not a larger platform, how long until value, what the procurement risk is, and how anyone knows the math is real. The short versions: the read is a card payment, not a contract, refundable within 30 days. It lands 1 to 2 minutes after upload. Nothing goes into the production stack. And the method is a named causal-inference model, with a methodology document on request (checked on 27 October 2026).
Then comes the question the memo cannot answer: what happens to revenue if the weakest channel goes? On Pro, at €299 a month, a chatbot answers questions over your own attribution data, per the same pricing page, checked on 27 October 2026. Ask it while the CFO is in the room. Do the human check before anyone acts: open the read and confirm the chat's figures against the receipts. A chat answer is a lead to the evidence, not the evidence.
The audit nobody else can run
Meta's incremental attribution page asks the right question: whether a conversion was caused by a Meta ad. The answer comes from machine-learning models, built by Meta, that predict it. The seller of the spend also writes the test of whether the spend worked. A CFO knows why companies do not audit themselves. Say that in the memo without heat. It is the reason line 3 comes from your own GA4 file, and not from any platform's dashboard.
Take the read into the meeting
Causality Engine, which I founded, produces line 3 and line 4 in one upload. The first finding is free on the start page, and the full read is €99 once, refundable within 30 days, per the pricing page (checked on 27 October 2026). If the store's spend is too small to separate channels, the read says so and declines. The case studies publish one brand where that was the finding. A CFO trusts a tool that can say no. The product is described in full in the Causality Engine entry.
FAQ
Should I show ROAS to the CFO at all?
Show MER, total revenue over total ad spend, and the break-even line from your margin. Causality Engine's free break-even calculator gives the line, and the profit per order at the MER you enter. Platform ROAS belongs in line 1 as the claim, never as the result.
What if the CFO asks whether the method is a black box?
Point to the documented assumptions on the how-it-works page: complete GA4 data, enough converting paths per channel, and no unseen factor moving sales in lockstep with one channel. The methodology document is available on request.
Does finance need its own login?
Not to read the link. If finance wants to work in the data, Pro includes unlimited seats, per the pricing page.
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.
A senior operator doing the work: campaigns, channels, CRM and AI agents, live from day one.