Your Landed Cost Went Up. Your ROAS Target Didn't.: Tariffs, freight and supplier switches move contribution margin, which moves break-even ROAS. Most brands never re-run the arithmetic - and the ROAS they compare against is inflated to begin with.
Read the full article below for detailed insights and actionable strategies.
The numbers behind the problem
iOS tracking loss
Google Brand cannibalization
Klaviyo overstatement
TikTok attribution lag
Quick answer. Break-even ROAS is a function of contribution margin. When landed cost moves — tariffs, freight, a supplier switch, a currency swing — the margin moves, and every ROAS target in your account is silently stale from that day. Most brands re-plan sourcing and never re-run the arithmetic. Then they judge the new economics using platform-reported ROAS, which overstates performance in the first place. Two errors, both pointing the same way: keep spending on channels that stopped paying.
The sourcing shift is real, the target update isn't
Sourcing is the live operating anxiety in ecommerce right now. One of the highest-velocity ecommerce videos of the past week was a countdown of eight non-China sourcing alternatives under the new tariffs, from an operator with 19 years in the category — roughly 96,000 views in its first days, at about 13.75x that channel's normal performance.
That energy goes almost entirely into the supply side: find the supplier, model the landed cost, protect the margin. Very little of it reaches the demand side, where the same change has already invalidated the number your media buyer optimises against.
The arithmetic nobody re-runs
Break-even ROAS is the point where incremental revenue covers the ad spend that produced it:
Break-even ROAS = 1 ÷ contribution margin
Where contribution margin is what is left from a sale after the costs that scale with it — COGS landed, payment fees, pick/pack, shipping and expected returns. Not gross margin, and not margin after overhead.
Work an example. A brand at 40% contribution margin needs 2.5x to break even. Landed cost rises enough to take contribution margin to 32%, and break-even is now 3.13x. Nothing on any dashboard announces this. The campaigns still show green against a 2.5x target that stopped being true when the container landed.
Note what that gap does at scale. At €80,000 monthly spend, running against a target that is 0.63x too low means a slice of that budget is now buying revenue that does not cover itself — and it keeps buying it every month until someone re-runs the division.
Break-even ROAS by contribution margin
| Contribution margin | Break-even ROAS | Target at 20% profit buffer |
|---|---|---|
| 50% | 2.00x | 2.40x |
| 45% | 2.22x | 2.67x |
| 40% | 2.50x | 3.00x |
| 35% | 2.86x | 3.43x |
| 32% | 3.13x | 3.75x |
| 30% | 3.33x | 4.00x |
| 25% | 4.00x | 4.80x |
Read down the column and the shape is the point: margin compression bends the target sharply. A move most operators would call "a few points of margin" is often a half-turn or more on the ROAS you should demand.
Use your own numbers rather than these. The table is arithmetic, not a benchmark, and it is only as good as your contribution-margin input.
Two errors, same direction
Here is the part that makes this worse than a stale spreadsheet cell.
The target is too low, and the measured ROAS you compare against it is too high.
Platform-reported ROAS is scored by the platform being graded. Meta counts sales where a Meta ad was in the window. Google counts last click, including the branded search someone ran after deciding to buy. Sum the claims across your channels and the total routinely exceeds the revenue you actually banked — which is the plain arithmetic proof that the individual numbers are overstated. That is the mechanic behind last-click and platform-reported attribution.
So the comparison is: an overstated number, judged against a target that is too lenient. Both errors flatter the same conclusion — this channel is working, keep funding it. Neither is visible from inside the dashboard, and the gap compounds every planning cycle, which is what turns it into marketing debt.
What to do this week
- Recompute contribution margin on current landed cost. Post-change COGS, current freight and duties, payment fees, pick/pack, shipping, realistic returns. One number per product family, not a blended guess.
- Divide. Break-even ROAS is 1 ÷ that. Add your profit buffer to get the target you will actually manage to.
- Update the targets in the accounts. This is the step that gets skipped, and it is the only one that changes behaviour.
- Fix the numerator too. A correct target compared against an inflated ROAS still misallocates. Get a per-channel view that estimates what each channel actually caused — causal attribution on your GA4 export, with confidence intervals, so you can tell a real signal from noise.
- Re-check when sourcing changes again. Put it on the same calendar as the supplier review, not the annual plan.
Steps 1 through 3 take an afternoon and cost nothing. Step 4 is €99.
FAQ
Should I use gross margin or contribution margin? Contribution margin. Gross margin ignores the per-order costs that scale with the sale — shipping, payment fees, returns — and using it produces a break-even target that is too optimistic, which is the error this article is about.
What buffer should I add over break-even? Break-even means the ad spend paid for itself and contributed nothing else. Whatever contribution you need per order determines the buffer; 20% is a common starting point, not a rule.
Does this apply if I am not importing from China? Yes. Tariffs are the current occasion, not the mechanism. Any change in landed cost does this — freight rates, a supplier switch, currency, a packaging change, a shift in return rate.
My blended ROAS looks fine. Isn't that enough? Blended ROAS hides exactly the thing you need to see. It cannot tell you which channels are carrying the average and which are being carried, and it is the first number to look acceptable while a specific channel quietly stops covering its own cost.
How do I know the causal numbers are better than the platform's? They answer a different question — what would have happened without the channel — and they report uncertainty instead of a confident single figure. You can watch the model run on a real store's export in the interactive demo, no signup, before deciding.
The Causality Engine alternative - concretely
- Open GA4. Export the period since your cost base changed.
- Upload it at /start.
- Pay €99, once. No subscription, no annual contract, no setup call.
- Within 5 to 10 minutes: per-channel incremental contribution with confidence intervals — the numerator that belongs next to your recalculated target.
No pixel, no SDK, no engineering ticket. If the first read does not move a decision, you get your money back. Pro at €299/month adds automated GA4 ingestion and continuous monitoring, so the next cost change gets caught against live numbers.
- See pricing: /pricing
- How it works: /product/how-it-works
You re-planned sourcing when the costs moved. Re-plan the target that decides where the ad budget goes.
Get attribution insights in your inbox
One email per week. No spam. Unsubscribe anytime.
Key Terms in This Article
Ad Spend
Ad Spend is the total amount invested in advertising campaigns. It is measured against Return on Ad Spend (ROAS) to evaluate campaign effectiveness.
Attribution
Attribution identifies user actions that contribute to a desired outcome and assigns value to each. It reveals which marketing touchpoints drive conversions.
Causal Attribution
Causal Attribution uses causal inference to determine which marketing touchpoints genuinely cause conversions, not just correlate with them.
Causality
Causality is the relationship where one event directly causes another, essential for identifying specific actions that drive desired outcomes in marketing.
Confidence Interval
Confidence Interval is a statistical range of values that likely contains the true value of a metric. In marketing analytics, it quantifies uncertainty around estimates, indicating the precision of an outcome or causal effect.
Dashboard
A dashboard is a visual display of key information required to achieve specific objectives. It consolidates data onto a single screen for quick review.
Marketing Debt
Marketing debt is the compounding cost of budget decisions made on wrong attribution. Each quarter a brand allocates spend on correlated numbers instead of causal evidence, the misallocation carries into the next plan and grows. Like technical debt, but on the marketing P&L.
Revenue
Revenue is the total income generated by the sale of goods or services related to a company's primary operations.
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.
No spam. Unsubscribe anytime. We respect your data.