Three attribution mistakes I see at every $1M+ DTC brand
iOS 14 broke last-click. GA4 broke data-driven attribution. Then everyone discovered MMM and pretended it was new. Three patterns I see at every brand we audit, and what to do instead.
by Shamir Islam
About 80% of the audits we run open with the same line: we know our attribution is broken, we just do not know how badly. The honest answer is usually: badly enough that you are making six-figure budget decisions on signal that is wrong by 30 to 60 percent.
Three patterns I see almost every time.
1. Treating platform-attributed ROAS as truth
Meta's reported ROAS is not your ROAS. It is a self-reported number from a system whose business model depends on the number being high. Use it to compare ad sets within Meta. Do not use it to decide whether Meta is profitable.
The fix: triangulate against backend revenue, post-purchase surveys, and incrementality lift. Any one of those alone is also wrong, but the disagreements between them are where the truth lives.
2. Confusing MMM with attribution
Marketing mix modeling answers: what is the marginal lift per channel. Multi-touch attribution answers: which user touched what before converting. These are different questions. Most decks I see treat them as interchangeable. They are not, and the strategic implications are wildly different.
If a board deck says MMM shows Meta is our best channel, ask whether that means (a) Meta dollars produce the most marginal revenue, or (b) Meta touches show up most frequently in the customer journey. Those are not the same finding and they suggest opposite tactics.
3. Skipping incrementality testing because we are too small
You are not too small. You are too scared. Geo holdouts work down to about $50k per month spend. Conversion lift studies work on individual ad sets. The brands skipping these tests are the same ones overspending on retargeting by 2 to 4 times.
A simple two-week geo holdout on a single platform usually surfaces a 20 to 40 percent attribution gap. That gap is not a rounding error. It is the difference between a profitable channel and an unprofitable one.
What to do instead
Pick one channel where you spend more than $30k per month. Run a four-week geo holdout. Compare reported ROAS to lift-based ROAS. Whatever the gap is, you now have a multiplier you can apply to every future budget decision in that channel.
That is not the whole answer. But it is a real answer, and most brands operating at $1M+ have not done it.