Skip to content

For GA4 usersFrustrated with GA4 attribution? Upload your GA4 export, see causal insights in 5–10 minutes for €99 pay-per-use.

Insights

17 min read

What to Look For in a Marketing Analytics Tool

Learn the six essential features to look for in a marketing analytics tool to identify wasted ad spend and make better budget decisions.

Share
Quick Answer·17 min read

What to Look For in a Marketing Analytics Tool: Learn the six essential features to look for in a marketing analytics tool to identify wasted ad spend and make better budget decisions.

Read the full article below for detailed insights and actionable strategies.

Key insight

30%

Average ad spend misallocated due to broken attribution across DTC brands

Six capabilities that surface wasted ad spend, the features that only look useful, and a buying checklist you can run against your own GA4 export.

Updated 8 September 2026 · Joris van Huët, founder, Causality Engine

The fastest way to buy the wrong analytics tool is to count its dashboards. I have sat in enough budget meetings to know the pattern: someone pulls up a beautiful multi-touch report, everyone nods, and three months later the same channel is still eating spend without moving revenue. The report was never the problem. The metric behind it was.

A marketing analytics tool only helps you cut waste if it can separate two things that most tools quietly blur together: credit and causal contribution. A channel can collect conversions in its own reporting, or grab a slice of credit in a multi-touch model, without having caused a single extra sale. If your tool cannot tell you which of those it is measuring, it cannot find waste. It can only redecorate it.

Below are the six capabilities that actually surface waste, the features that look useful but do not, and a short checklist you can run before you pay for anything.

Two numbers to compute before you evaluate any tool

Every tool on the market runs on data collected by, or reported by, the platforms that sell you the media. The party that sells the advertising also measures whether it worked, and nobody audits the result. So before you compare products, compute two ratios against the one figure no vendor produces: the orders in your commerce platform.

Coverage is the conversions your analytics could attribute to any source, divided by those orders. Every cost per acquisition you have ever read is the real one divided by it; if coverage fell from 0.8 to 0.6 over a year, your reported cost rose a third from the decay of your own visibility alone. In our own analytics warehouse, 48.6% of sessions between 17 October 2025 and 2 September 2026 had no resolvable source. That is one company's census, not a benchmark, and yours will differ.

The claim ratio is every platform's claimed conversions added up, divided by the same orders. Anything above 1 is the amount by which your suppliers collectively believe they did more work than exists. Track its movement monthly; when it rises, the platforms have become more generous with themselves, and a "performance improvement" is partly definitional. Both numbers take an hour and no vendor, and any tool worth buying should be able to show them next to its own.

Why credit is not the same as contribution

Google describes attribution models as the way you choose how much credit each ad interaction gets for a conversion. Last click gives all the credit to the last-clicked ad. Data-driven attribution uses your account's data to calculate each interaction's contribution across the path. Both are credit-allocation rules. Neither, on its own, tells you whether the ad caused a conversion that would not have happened anyway.

The gap between those two ideas is not academic. In the Meta Predicted Incrementality by Experimentation (PIE) paper by Gordon, Moakler, and Zettelmeyer, the authors used 2,226 Meta ad experiments and reported that "PIE achieves an out-of-sample R² = 0.88 for incremental conversions per dollar, compared to R² = 0.19 for industry-standard 7-day last-click attribution." In their decision framework, PIE disagreed with experiment-based decisions in only 8 to 12 percent of campaigns, versus 12 to 20 percent for last-click.

Read that carefully, because it is easy to overstate. The paper does not say last-click is wrong by a fixed amount everywhere, or that every attribution model has the same error. It compares one specific thing, seven-day last-click, against experimental truth for Meta ad experiments, and finds a large gap. That is enough. It tells you that treating last-click numbers as if they were causal will lead you to bad budget calls more often than a method built to estimate incrementality.

So the buying standard is not "how many reports does this have." It is whether the tool can do the six things below.

The six capabilities that surface waste

1. A platform-reported versus independent comparison, per channel

You want two numbers sitting next to each other for every channel, plus the difference between them.

View What it answers
Platform-reported result What the ad platform or GA4 claims the channel generated
Independent causal result What a separate method estimates the channel actually caused
The gap Where reported performance is likely overstated, understated, or too uncertain to act on

This has to be per channel, not a single blended account score. A blended total can look fine while one channel quietly takes credit for demand another channel created.

"Independent" here means independent of the platform's own conversion-credit system. It does not have to mean a randomized holdout. What matters is that the second number is not just the first number wearing a different hat. Causality Engine lists a platform-reported versus causal comparison for every channel among its outputs, produced from a GA4 export.

2. An incremental number, not an attributed one

The question that matters is not "how many conversions touched this channel." It is "how many conversions would not have happened without it."

An attributed ROAS number splits credit across observed conversions. An incremental ROAS estimate tries to measure the difference between what happened and an estimated counterfactual where the channel was switched off. Those are different measurements, and a tool should say which one it is showing you.

Do not accept a naked "ROAS" label. The output should be explicit about whether it is:

  • Platform-attributed ROAS
  • Analytics-attributed revenue
  • Incremental revenue
  • Incremental ROAS
  • A modeled estimate of attribution
  • A result from an experiment or causal model

Google's own documentation says modeled conversions estimate conversions it cannot observe directly, and that what it is predicting is attributed conversions. Useful for reporting completeness. Not the same as causal lift. Causality Engine states its output is incremental ROAS, the sales that would not have happened without the activity. If you want the deeper distinction, its guide on incremental ROAS is a reasonable starting point.

3. Uncertainty on every estimate

A single point estimate manufactures false confidence. If a channel reads at 1.4x, the decision changes completely depending on whether the plausible range is 1.3x to 1.5x or 0.4x to 2.4x.

Require a confidence or credible interval on every channel-level estimate, and require it to stay attached to the number in the export, not vanish behind a chart tooltip. Require the floor next to it, too: the smallest lift the design could have detected. "12%, with an interval of 4 to 20, from a design whose minimum detectable effect was 8%" is a defensible sentence, and the last clause is the one that decides whether the first two mean anything.

How I read intervals in a budget conversation:

  • Estimate well above break-even with a tight interval: strong candidate to keep or scale.
  • Interval that crosses break-even: slow down.
  • Wide interval: the decision is uncertain no matter how good the headline looks.
  • Interval that includes zero incremental contribution: the tool has not established positive causal value. Full stop.

Causality Engine attaches a confidence interval to every estimate and specifically flags an interval straddling 1.0x incremental ROAS as a case where a channel may not be incremental. Its pricing page for agents states 90 percent confidence intervals on all estimates.

One caution I would not skip. Intervals quantify uncertainty given the method and the data. They do not fix a missing channel, broken spend imports, or a badly specified model. A tight interval on garbage input is still garbage.

4. A view of channels indistinguishable from zero

This is the capability most tools refuse to offer, because "we cannot tell" does not demo well.

A good tool has to be able to say "unclear" instead of forcing every channel into a winner-or-loser ranking. A channel can have:

  • Positive platform-reported ROAS but uncertain incremental contribution
  • A positive point estimate with an interval that includes zero
  • A negative estimate with too much uncertainty to justify a hard cut
  • Too little data to support any confident call

Those cases should show up plainly in the table. They should not get buried in a composite score or slapped with a confident "pause" label that the underlying data does not support. When I see a tool that ranks every channel with equal certainty, I assume it is hiding uncertainty, not lacking it.

Some of those channels are not measurable at your scale by any tool, and the arithmetic says which. Multiply a channel's share of revenue (spend divided by revenue) by the return you would honestly defend for it; that is roughly how much total revenue would move if the channel stopped. If that is smaller than the smallest lift your data can distinguish from noise (about 8% for a typical DTC brand with six months of history and an eight-week test), the honest label is "not measurable at current scale, managed on judgement." A tool that never prints that label is ranking channels it knows nothing about.

Causality Engine frames confidence intervals as the way to separate real signal from noise, and treats an interval crossing 1.0x as a signal that a channel might not be incremental.

5. Coverage of the channels you actually spend on

A tool that measures your easiest channel while your budget meeting is about five others is not decision-ready.

Before you buy, map the tool against your real media plan:

Check Question
Channel presence Does the input data contain every paid channel with material spend?
Naming Can campaigns and sources map cleanly across GA4 and platform exports?
Spend Is spend available at the same level as the outcome data?
Outcome Can it use the revenue or conversion you actually optimize for?
History Is there enough data for the channel-level read you want?
Output Does the report keep the channel names you use in the budget?

Do not infer coverage from words like "omnichannel" or "all channels." Ask for a sample output using your own channel list. Causality Engine accepts a standard GA4 CSV export and supports Shopify data alongside it, and returns per-channel causal ROAS. That verifies the input workflow. It does not prove every campaign structure is supported, so confirm against your own export first.

6. An export you can take into a budget meeting

A result that cannot leave the app is hard to defend. Require an export with, at minimum:

  • Channel and campaign name
  • Spend
  • Platform-reported conversions, revenue, or ROAS
  • Incremental conversions or revenue
  • Incremental ROAS
  • Confidence or credible interval, and the design's minimum detectable effect
  • Date range
  • Method notes and data caveats
  • Recommended budget action, if the tool offers one

It should open in a spreadsheet or a deck and keep reported and causal values visibly separate. A dashboard screenshot is not a durable decision record. Causality Engine describes its report as exportable; as with any vendor, ask to see the export against the list above before you buy.

Features that look useful but do not find waste

More dashboards

More dashboards improve access to data. They are not a measurement method. A dashboard can show attributed revenue, spend, and trends all day without ever telling you whether any of it was incremental. When a demo leans hard on the number of views, ask to see the channel-level causal comparison and the uncertainty table instead.

Real-time refresh

Fast refresh helps monitoring. It does not turn an attributed number into a causal one, and it can push you into changing budgets on noisy, thin data. Speed is only valuable after identification and uncertainty are handled. Ask what method produces the estimate, how much data it needs, and whether the interval tightens as data accumulates. Continuous optimisation against a biased sensor does not average the bias out; it compounds it, because each cycle allocates more budget toward whatever the sensor rated highly. Speed is a multiplier on the sensor's error.

Prettier attribution models

A multi-touch or data-driven model may spread credit more cleverly than last-click. Google describes data-driven attribution as using account data to calculate each interaction's contribution across the path. That can describe a journey better. It is still credit allocation unless the vendor separately establishes incrementality.

This is exactly where the PIE evidence matters. The gap between last-click and experimental truth is a reason to distrust last-click as if it were causal, not a reason to assume the next attribution rule is causal. If a tool's main pitch for finding waste is a nicer attribution model, it has not met the core requirement. Make it label attribution and incrementality as separate metrics.

An AI explanation layer

Machine learning is superb at prediction: forecasting demand, ranking creative, flagging anomalies. The failure mode is the silent slide from prediction into causation. A language model placed on top of a correlational attribution model produces a fluent, confident, well-structured explanation of why a channel performed, with no causal content whatsoever, in the register of expertise. The explanation is not a lie. It is a summary, and it inherits every property of the number underneath it, including being wrong, and it is now much harder to challenge because it arrives in complete sentences.

The rule is short enough for a wall: let the model predict, let the experiment cause, and never let the presentation layer promote the first into the second. Ask every vendor, us included, whether there is a language model anywhere in the causal estimate, as opposed to the presentation of it.

Where Causality Engine fits

If you compare tools on the six capabilities above rather than on feature counts, the shortlist gets small fast. Causality Engine is built around those six, and its public terms are worth checking against your own needs.

Item Publicly stated detail
Input GA4 CSV export, Shopify export also supported
Main output Per-channel incremental ROAS
Comparison Platform-reported versus causal, per channel
Uncertainty Confidence intervals on estimates, 90 percent per the pricing page for agents
Setup No pixel, SDK, or integration project
Report Exportable
One-time €99 per read
Pro €299 per month, adds automated GA4 ingestion, chatbot, developer API

I would not oversell it, and neither should the vendor. It does not measure every conceivable channel, it does not run a randomized controlled trial, and it does not guarantee savings. The accurate description is narrower and more useful: a GA4 export goes in, and a channel-level causal estimate comes out, with uncertainty and a comparison against platform-reported results. For the recurring "are my Meta ads pulling their weight" question, that is the shape of answer you want, and its walkthrough on whether Meta ads are working covers that case directly.

One more thing, and it applies to us as much as to anyone. Between 14 August and 2 September 2026 we audited thirty-one commercial measurement vendors for a published validation of their method against randomised experiments, with the sample, the design and the discrepancies disclosed. We found none. Hold Causality Engine to the same question. The read states its counterfactual and its interval, and it is a model on observational data, not an experiment; between qualified holdouts you are running on a model, and confidence decays from the date of the last one.

The €99 one-time read is the part I would use first. It lets you test the output on your own export before committing to anything monthly, which is the correct order of operations for a measurement tool.

Short buying checklist

Run this before you pay:

  • Can it show your coverage and your claim ratio next to its own numbers?
  • Does it show platform-reported and independently estimated results side by side, per channel?
  • Is the primary decision metric incremental ROAS or incremental conversions, not attributed ROAS alone?
  • Does every estimate carry a confidence or credible interval, and the design's floor?
  • Can it flag channels whose incremental contribution is indistinguishable from zero, and say which are not measurable at your scale?
  • Does it cover the channels and spend sources in your actual media plan?
  • Can you export a budget-ready table with spend, reported performance, incremental performance, uncertainty, and date range?
  • Does the vendor explain the data required, the method, and the counterfactual being estimated?
  • Can you test the output on your own GA4 export before signing up for an ongoing plan?
  • Are setup requirements and pricing clear, including whether a pixel or SDK is needed?

The shortest version of the rule: buy the tool that can show you where reported performance and incremental performance disagree, and show you how uncertain that disagreement is. Everything else is decoration.

FAQ

Is last-click attribution always wrong?

No, and the PIE paper does not claim that. It reports that seven-day last-click was far less aligned with experimental results than PIE across 2,226 Meta ad experiments, with an R² of 0.19 against 0.88. That is a large, specific gap for that setting. It is a strong reason to stop treating last-click as causal truth, not a universal ban on ever looking at it.

What is the difference between attributed ROAS and incremental ROAS?

Attributed ROAS splits credit across conversions that were observed. Incremental ROAS estimates the revenue that would not have happened without the channel, by comparing the real outcome to an estimated counterfactual. A channel can have a high attributed ROAS and a weak incremental one if it mostly collects conversions that would have occurred anyway.

Do I need a randomized holdout to measure incrementality?

Not necessarily. A geo holdout or true experiment is one route, but modeling approaches can estimate incremental contribution from observational data such as a GA4 export. The important thing is that the tool is transparent about its method and the counterfactual it estimates, and that it attaches uncertainty to the result. What you should reject is a tool that calls credit allocation "incrementality" without doing either.

Will a confidence interval tell me the estimate is correct?

No. It tells you how uncertain the estimate is given the method and the data behind it. It does not repair missing channels, broken spend imports, or a poorly specified model. Treat a tight interval on questionable input with suspicion, and treat an interval that includes zero incremental contribution as a signal that positive causal value has not been established.

Does Causality Engine work without a pixel?

Yes, per its public pages. It takes a GA4 CSV export, with Shopify data supported alongside, and returns per-channel incremental ROAS with confidence intervals and a platform-versus-causal comparison. There is no pixel, SDK, or integration project involved, which is why the setup is fast and the one-time €99 read is practical to try before committing.

Sources and further reading

Vendor prices and features quoted in this article were taken from each vendor's own website on 8 September 2026 and may have changed since. Check the vendor's pricing page before relying on a figure.

Get attribution insights in your inbox

One email per week. No spam. Unsubscribe anytime.

Key Terms in This Article

Related Articles

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

Ready to see your real numbers?

Own the budget? Upload your GA4 export and see which channels drive incremental sales, with confidence intervals, in minutes. Have to defend it? Start with the live demo and take the read to your CFO.

Full refund if you don't see value.

Stay ahead of the attribution curve

Weekly insights on marketing attribution, incrementality testing, and data-driven growth. Written for the person who owns the budget and the person who has to defend it.

Which one are you? Optional.

No spam. Unsubscribe anytime. We respect your data.

Related reports

Real reports on this topic.

Anonymised reports from the Attribution Report Library tagged with insights.

Browse all related reports

Find your wasted ad spend in 5–10 minutes.

Watch the model work on a sample store first, no signup. Then upload your last 40–90 days of GA4 sessions and get incremental ROAS with confidence intervals. No pixel, no SDK. €99 per read.

Prefer to talk it through? Book a 20-min call, or read how it works.

Last-click guesses.We run the math.

Causal attribution for ecommerce brands. Watch the model work on a sample store first, then upload your GA4 export and see which channels really drove revenue in 5–10 minutes. €99, pay-per-use. Pro at €299/mo when you want it continuous.

No signup for the demo. Book a 20-min call or compare plans.