Why ROAS is a dangerous primary metric
ROAS calculates revenue divided by ad spend. A ROAS of 4.0 means you generated four euros of revenue for every euro spent. This sounds useful until you realize that ROAS ignores product cost, fulfillment cost, platform fees, return rates, and every other variable that determines whether you actually made money on that transaction.
A DTC skincare brand with a ROAS of 4.0 on Meta and a 60 percent gross margin is making money. A DTC furniture brand with a ROAS of 4.0 on Meta and a 30 percent gross margin with 20 percent return rates is losing money on every Meta-attributed sale. The same ROAS number has completely different implications depending on the underlying economics.
How to calculate contribution margin per channel
Start with gross revenue per order from each channel (use Shopify UTM data, not platform-reported revenue). Subtract cost of goods sold. Subtract shipping cost, including inbound and outbound. Subtract payment processing fees (Stripe takes roughly 1.4 to 2.9 percent plus 25 cents per transaction). Subtract return handling cost, weighted by your return rate for that channel. Subtract the variable portion of customer service cost per order.
What remains is your contribution margin before channel ad spend. Subtract the ad spend attributable to that order (your CAC for that channel). What remains is your per-order contribution margin after acquisition cost. A positive number means you made money acquiring that customer. A negative number means you paid more to acquire the customer than the customer's first purchase was worth.
Channel comparison that surprises most brands
When DTC brands calculate contribution margin per channel for the first time, Meta is often not the best-performing channel. Email consistently shows the highest contribution margin because ad spend is near zero and repeat purchase rates are high. Organic search shows high contribution margin for the same reason.
The surprise is often Meta versus Google comparison. Meta typically drives higher ROAS but lower contribution margin than Google, because Meta drives more first-time customers (higher CAC, lower LTV prediction) while Google captures more high-intent searchers who have shorter purchase cycles and lower return rates. Contribution margin tells this story. ROAS does not.
The LTV adjustment
First-purchase contribution margin is only the beginning. A customer acquired through Meta with a first-purchase contribution margin of negative 5 euros might generate 60 euros in contribution margin across four purchases over twelve months. A customer acquired through email with a first-purchase contribution margin of positive 15 euros might churn after one purchase.
To make accurate channel investment decisions, you need LTV-weighted contribution margin: how much total contribution margin does a customer acquired through this channel generate over their full relationship with your brand? This requires cohort analysis, which requires at least 12 months of purchase data per channel cohort.
How to use contribution margin data in budget decisions
Contribution margin per channel changes your budget allocation logic. Instead of moving budget toward channels with the highest ROAS, you move budget toward channels with the highest risk-adjusted contribution margin over the customer lifetime. That often means investing more in channels that look expensive on a ROAS basis but generate customers with strong repeat purchase behavior.
Practically: calculate contribution margin for your top three acquisition channels quarterly. Compare the trend over three quarters. If contribution margin for a channel is declining quarter over quarter, either the channel is becoming more competitive (CAC rising) or the customer quality is declining (return rates rising, LTV falling). Both are problems that require different responses.
---