ROAS is a vanity number once cost of goods and returns are counted. We run ecommerce marketing against contribution margin and POAS, with the Shopping feed and retention work most agencies skip because it is less glamorous than a campaign screenshot.
ROAS is the most misleading number in ecommerce marketing. Two products can report the exact same return on ad spend, with one genuinely profitable and the other losing money on every single order, once the cost of goods, returns and shipping are actually counted.
We optimise campaigns against contribution margin and POAS, not the headline ROAS figure most dashboards default to.
Same ad spend, same reported ROAS, completely different business outcome.
| Product A | Product B | |
|---|---|---|
| Ad spend | ₹10,000 | ₹10,000 |
| Revenue generated | ₹40,000 | ₹40,000 |
| Reported ROAS | 4.0x | 4.0x |
| Cost of goods | ₹22,000 | ₹12,000 |
| Returns (rate x avg cost) | ₹4,000 (10%) | ₹1,200 (3%) |
| Contribution after ad spend | ₹4,000 | ₹16,800 |
| Real POAS | 0.4x | 1.68x |
Identical ROAS, and one product is barely breaking even while the other is genuinely funding growth. Any reporting that stops at ROAS cannot see this difference.
The right channel mix depends heavily on revenue stage, not category or product type.
| Stage | Primary channels | What changes at this stage |
|---|---|---|
| Pre-₹1Cr | Meta prospecting, Google Shopping, influencer seeding | Finding product-market fit signal matters more than efficiency. Some inefficient spend here is the cost of learning what works |
| ₹1–10Cr | Performance Max, retargeting, retention (email/WhatsApp) layered in | Efficiency starts to matter. Retention becomes cheaper growth than acquisition at this stage |
| ₹10Cr+ | Full-funnel: brand, marketplace presence, retention as a primary channel, incrementality testing | Diminishing returns on pure acquisition. The compounding channels (organic, retention, brand) start to outperform paid on a blended basis |
Most brands over-invest in acquisition and under-invest in retention relative to where they actually are in this curve.
Before optimising bids, the product feed itself decides how much of your catalogue is even eligible to show.
Missing GTINs, weak titles and thin attributes silently suppress products from Shopping and PMax, with no error message telling you it happened.
The second order costs a fraction of the first. Email and WhatsApp flows around repeat purchase are consistently the highest-margin growth lever most D2C brands under-invest in.
Dashboards built to show contribution margin per SKU and per channel, not just top-line ROAS, so budget actually moves toward what is profitable.
A cross-section of the brands we work with. Ask us for references in your category on a call.














ROAS is revenue divided by ad spend. POAS is profit divided by ad spend, after accounting for cost of goods, returns and shipping. Two products can show identical ROAS while one is highly profitable and the other is barely breaking even. We report and optimise against POAS.
As a rough benchmark, growing D2C brands in India spend 15 to 30% of revenue on marketing, weighted toward paid acquisition early and shifting toward organic, retention and brand as the business scales past roughly ₹10Cr in annual revenue.
Yes, and feed quality is treated as the first lever, not an afterthought. A large share of underperforming Shopping campaigns trace back to incomplete or inaccurate product feed data suppressing products from ever showing.
Very. The second order from an existing customer typically costs a fraction of acquiring a new one. Email and WhatsApp retention flows are consistently one of the highest-margin levers available, and one of the most under-resourced by ecommerce brands focused entirely on top-of-funnel spend.
Yes, we are a Shopify Partner with a dedicated Shopify practice covering development, SEO and marketplace management alongside performance marketing.
Contribution margin by channel and by SKU, alongside standard platform metrics. You see what is actually profitable, not just what generated the most revenue.
Tell us what's broken. We'll tell you whether we're the right people to fix it, and if we're not, we'll say so.