This is a detailed breakdown of a 90-day engagement we ran for a (composite) D2C fashion brand we'll call Aanya & Co. Names and some specifics have been changed to protect commercial confidentiality, but the strategy, structure, spend, and outcomes are accurately representative of work we've done. If you're running a D2C brand and considering a similar reset, you'll find this useful.
The headline number: in 90 days, Aanya's ROAS moved from 1.7× to 3.1×, while monthly revenue grew from ₹14L to ₹38L. But the more interesting story is how we got there — and the single decision that changed everything.
The starting point
Aanya & Co. is a small Indian D2C brand selling women's ethnic and fusion wear in the ₹2,000-₹6,000 range. When they approached us in late 2025, they had:
- A Shopify store that converted at 0.9% (industry benchmark for category: 1.6-2.4%)
- Monthly ad spend of ₹6L, split across Meta and Google
- ROAS of 1.7× (barely profitable after COGS and operations)
- A small but enthusiastic Instagram following (~28K)
- A growing return rate that was approaching 22% (industry benchmark: 12-16%)
The brand wasn't failing, but it was stuck. They had real product-market fit — repeat purchase rate was 31%, which is excellent for the category. But they couldn't scale profitably. Every additional rupee of ad spend brought in less revenue than the last.
The hardest brands to fix are the ones that are working, but not enough. There's nothing dramatically broken to point at, just compounding mediocrity.
The diagnostic phase (Week 1-2)
We don't believe in dropping into an account and immediately changing things. The first two weeks were entirely diagnostic — auditing what was happening before deciding what to change.
Three findings stood out:
Finding 1: The product photos were misleading
Aanya's product photography was studio-shot, beautifully styled, and consistently optimistic about how the clothes fit. The actual fit, when customers received the products, didn't match. This was driving the high return rate, which was destroying unit economics.
Finding 2: The funnel was broken on mobile
71% of traffic was mobile. The Shopify theme they'd been using had been customised over time, and key conversion elements (the "Add to Cart" button, the size selector, the checkout button) had subtly broken at common mobile breakpoints. We documented 14 critical mobile UX issues.
Finding 3: Ad creative was studio-driven, not product-driven
The ad creative being shipped was lifestyle imagery — models in scenic locations, gorgeous mood, almost no actual product information. This worked for top-of-funnel awareness but converted poorly for purchase intent.
After Week 2, we recommended Aanya pause ALL ad spend for 14 days while we fixed the underlying funnel issues. The founder, understandably, hated this idea. But we made the case: every additional rupee of ad spend during this period was being wasted on a broken funnel. After a tense meeting, the founder agreed. That single decision is what made everything else possible.
The fix phase (Week 3-4)
With ads paused, we made three parallel changes:
1. Reshot product photography
We arranged a 3-day shoot with two real customers (not models) wearing the products at home, alongside more honest studio shots that showed fit accurately. Cost: ₹85,000. Impact: described below.
2. Rebuilt the mobile UX
Switched to a faster Shopify theme. Fixed the 14 UX issues. Added a sticky "Add to Cart" bar on product pages. Implemented a guided size finder that asked for height, weight, and usual size in two other brands, then recommended a specific size with confidence interval.
3. Restructured the ad account
Consolidated from 14 active campaigns to 4. Killed all ad sets with manual interest targeting. Moved 70% of budget into Advantage+ Shopping Campaigns. Created 22 new creatives using the new photography.
The relaunch (Week 5)
We turned ads back on with the new structure, new creative, and fixed funnel. Budget was held at ₹6L/month for the first month — same as before — to isolate the impact of the changes vs. budget increases.
Within 10 days, the numbers had shifted meaningfully:
| Metric | Before pause | 10 days after relaunch |
|---|---|---|
| Conversion rate (mobile) | 0.7% | 1.4% |
| Conversion rate (desktop) | 1.6% | 2.1% |
| ROAS | 1.7× | 2.6× |
| Return rate | 22% | 15% (still dropping) |
| Average order value | ₹2,840 | ₹3,210 |
The biggest contributor to the conversion rate improvement wasn't actually the ad changes — it was the fixed mobile UX. The biggest contributor to the return rate improvement wasn't the new photography (though that helped) — it was the size finder.
The scale phase (Week 6-12)
Once we had stable improved unit economics, we began scaling spend. The progression:
- Week 6: Spend held at ₹6L. ROAS stable at 2.6×.
- Week 7-8: Spend increased to ₹8L. ROAS dipped to 2.4× initially, recovered to 2.7× by end of Week 8.
- Week 9-10: Spend increased to ₹10L. ROAS climbed to 2.9× as the algorithm learned at higher volume.
- Week 11-12: Spend stable at ₹12L. ROAS reached 3.1×.
Two important notes on this scaling:
First, we scaled slower than the client wanted. She was understandably eager to push spend faster. But Meta's algorithm needs time to learn at each new spend level. Doubling spend overnight nearly always tanks ROAS temporarily, sometimes permanently. Slow, steady scaling preserves the gains.
Second, we continued shipping creative aggressively. By Week 12, we had launched 89 new creative variations. The top 12 of those were generating 71% of revenue. The other 77 had been killed.
The numbers at Day 90
Final state vs. starting state:
| Metric | Day 0 | Day 90 | Change |
|---|---|---|---|
| Monthly ad spend | ₹6L | ₹12L | +100% |
| Monthly revenue | ₹14L | ₹38L | +171% |
| ROAS | 1.7× | 3.1× | +82% |
| Conversion rate | 0.9% | 1.8% | +100% |
| Return rate | 22% | 13% | -41% |
| Average order value | ₹2,840 | ₹3,420 | +20% |
Importantly, the contribution margin per order had also improved (because the return rate dropped). On a net basis, the business was making significantly more money per order than it had been.
The honest caveats
Three caveats worth sharing:
First, not every engagement looks like this. Aanya had real underlying product-market fit. If she hadn't, no amount of funnel optimisation would have produced these results. We've worked with brands where the diagnostic phase revealed that the fundamental product economics didn't work, and the right answer was to fix the product, not the marketing.
Second, the pause was contentious. Asking a client to stop spending on the channel that's generating their revenue, even temporarily, is a hard sell. If we hadn't had the relationship with the founder, she would have rejected the recommendation. The pause is what made everything possible.
Third, the work continues. Day 90 is a milestone, not an endpoint. Six months in, we're continuing to ship creative weekly, refresh photography quarterly, and improve the funnel monthly. The 3.1× ROAS is a floor we're now building from, not a peak we've reached.
What's transferable
If you're running a D2C brand stuck in similar mediocrity, three transferable lessons:
- Don't add fuel to a broken funnel. If your conversion rate is meaningfully below benchmark, increasing ad spend just wastes money. Fix the conversion engine first.
- Photography is leverage. Most D2C brands underinvest in real, honest, useful product photography. A great shoot pays for itself in reduced returns alone.
- Slow scaling preserves gains. Once you've found something that works, scale it 30-50% at a time, not 2-3× overnight.
None of this is rocket science. But the discipline to do it in the right order — diagnose first, fix second, scale third — is rare. That discipline is what separates the brands that compound from the brands that just spin in place.
If your D2C brand has product-market fit but can't scale profitably, the engagement that fixes that is what we do best. Send us your numbers and we'll come back with an honest assessment within 48 hours — including whether we're the right fit or not.