Most D2C brands have margin leakage they don’t see. Across the brands I’ve worked with, the gap between reported margins and real margins is consistently 5-15 percentage points, driven by a handful of cost categories that hide in the wrong P&L lines or never get measured at all. This guide identifies the eight biggest sources of D2C margin leakage, how to find each one in your own business, and the order in which to fix them.
Why Margin Leakage Is Almost Universal
Most D2C P&L structures were built for speed, not precision. Founders start with a simple model: revenue minus COGS minus marketing equals profit. As the business grows, costs accumulate in categories that don’t fit neatly into that structure. Return handling gets lumped into “logistics.” Payment gateway charges are a single line, never broken down. Influencer spend is in marketing but the attributed revenue never gets reconciled. Discounts show up as a revenue reduction but never as a cost analysis.
The result: reported contribution margin looks healthy. Real contribution margin, once you pull every cost into the right category, is 5-15 percentage points lower. For a brand doing Rs. 5 crore monthly revenue, that gap is Rs. 25-75 lakh per month in costs that are either untracked or misclassified.
Leakage tends to grow with scale. Each new order carries the same hidden costs as prior orders. When you double revenue without surfacing and fixing the leakage, you double the leakage. This is the most common explanation for brands that grow revenue but see EBITDA stay flat or worsen.
The eight categories below cover the primary sources. They are not hypothetical: each one appears consistently across the 200+ brands I have audited.
The Eight Hidden Costs
RTO and COD Rejection Losses
Return to origin (RTO) is the most undercounted cost in Indian D2C. When a COD shipment is rejected or undeliverable, you pay the full outbound shipping cost plus the reverse logistics cost, and you recover nothing. On a typical order, RTO costs Rs. 80-200 in direct logistics alone, before accounting for repackaging, re-inventory, and the opportunity cost of the blocked working capital.
How to find it: Pull your RTO rate from your logistics partner’s dashboard. Multiply by your average outbound + return shipping cost. Add repackaging and write-off rates. Most brands are surprised how large this number is when computed explicitly.
| Category | Typical RTO Rate |
|---|---|
| Fashion | 18-30% |
| Beauty | 12-22% |
| Electronics | 15-25% |
| Food / Grocery | 8-15% |
| Premium Accessories | 10-18% |
Customer Return Handling and Restocking
Unlike RTO, customer-initiated returns are often measured only as a revenue reversal. The cost side, including reverse logistics, quality inspection, repackaging, and restocking, is rarely tracked against the return. In fashion, where return rates are 30-50%, this cost structure can eliminate margin entirely on returned orders.
How to find it: Build a return cost model: reverse logistics cost per unit + inspection labor + repackaging material + restocking time. Compare to the gross margin on the original order. Any category where return costs exceed 40% of gross margin on the returned item needs immediate attention.
| Category | Typical Return Rate |
|---|---|
| Fashion | 30-50% |
| Beauty | 8-18% |
| Home | 12-25% |
| Electronics | 8-15% |
| Food | Under 5% |
Payment Gateway Fees Beyond MDR
Most brands track MDR (merchant discount rate). Few track the full set of fees that gateway providers charge. The gap between your stated MDR and your effective payment processing cost is typically 0.3-0.8% of GMV, which at scale is material.
How to find it: Pull your gateway settlement reports for 90 days. Reconcile against your orders. Look for the following fee categories beyond MDR:
- Dispute and chargeback fees: Rs. 500-2,500 per dispute, regardless of outcome
- Payout or settlement fees: Often a flat fee per settlement cycle
- Refund fees: Some gateways charge a fee to process refunds, even though the MDR is not returned
- International card surcharges: Elevated rates for international cards on domestic transactions
- FX spread: Applies if you accept payments in foreign currency
- BNPL provider fees: Buy-now-pay-later integrations typically charge 2-4% of transaction value, substantially above standard MDR
Discount and Coupon Erosion
Discounts are accounted for as revenue reductions, so they appear to reduce the top line rather than being visible as a cost driver. The total discount erosion for most Indian D2C brands is 5-15% of gross revenue. The second-order problem is worse: discount-acquired customers have repeat purchase rates 15-30% lower than non-discount customers, so the LTV of the cohort is structurally worse.
How to find it: Pull discount usage by coupon code for the last 12 months. Segment customers acquired on discount vs. acquired at full price. Compare 90-day and 180-day repeat purchase rates. Compute the contribution margin per cohort. Most brands find 2-4 discount types that generate high acquisition volume at negative LTV.
Influencer and Affiliate Underperformance
Influencer marketing is often the least-measured line in the marketing P&L. Brands pay Rs. 50,000-2,00,000 for campaign deliverables. Attribution is tracked loosely if at all. The result: spend appears in the P&L, but the return calculation is incomplete.
Affiliate commissions add a further complexity. A 15-25% affiliate commission on a product with a 45% gross margin leaves 20-30% gross margin before any other variable cost. On high-return categories, affiliate sales can be contribution-negative at the unit level.
How to find it: For every influencer campaign in the last 12 months, pull: spend, attributed orders (UTM or discount code), revenue, gross margin on those orders, and net margin after the commission or fee. Campaigns where net margin after fee is under 10% of revenue should be re-evaluated.
Warehousing and Fulfillment Cost Per Unit
Most brands know their per-shipment cost. Few know their true fulfillment cost per unit, which includes every component of the 3PL relationship. The real fulfillment cost is typically 20-40% higher than the per-shipment number brands cite.
How to find it: Build a cost-per-unit model from your 3PL invoice, including every line:
| Cost Component | Typical Range |
|---|---|
| Per-shipment fulfillment | Rs. 40-80 |
| Storage (monthly) | Rs. 50,000-2,00,000 |
| Receiving / inbound processing | Rs. 10,000-50,000/month |
| Returns processing | Rs. 15-30 per return |
| Long-term storage penalty | 1.5-3x standard rate after 90 days |
Divide total monthly 3PL spend by total units shipped (not including returns). That is your real per-unit fulfillment cost. Compare to what you have been using in your unit economics model.
Underutilized and Aging Inventory
Inventory that does not sell represents capital tied up in goods that may eventually require markdowns, liquidation, or write-off. The cost of aging inventory is rarely tracked explicitly on the P&L, but it flows through in three ways: storage cost escalation, forced markdown margins, and eventual write-offs that hit COGS.
How to find it: Run an inventory aging report by SKU. Flag anything over 90 days. Compute the carrying cost (storage rate plus capital cost of inventory). Typical unsold inventory ratios by category:
| Category | Typical Unsold Inventory (90+ days) |
|---|---|
| Fashion | 15-30% of ending inventory |
| Beauty | 5-15% |
| Food | 8-20% (with expiry risk) |
| Premium / Accessories | 10-20% |
Marketplace Reconciliation Losses
Marketplace settlements are rarely reconciled line by line. Brands compare total settlement amounts against expected amounts and treat small discrepancies as acceptable rounding. In practice, discrepancies add up. Commissions, closing fees, weight handling charges, FBA fees (where applicable), and deductions can reduce gross marketplace revenue by 18-30%. A line-by-line reconciliation audit typically surfaces 0.5-2% of marketplace revenue in recoverable discrepancies.
How to find it: Download one month of settlement reports from each marketplace. Match every order to its settlement line. Compute actual commission rate as a percentage of order value. Compare to contracted rate. Flag orders where the deduction exceeds the contracted rate. Raise disputes for recoverable amounts before the dispute window closes.
How to Run a Margin Leakage Audit in 30 Days
A full audit across all eight categories takes four weeks if approached systematically. The goal of the 30-day audit is not to fix everything immediately. It is to quantify the leakage in each category so you can prioritize correctly in the following 60-90 days.
- 1Week 1: Returns and RTO
Pull RTO rates from your logistics partner for the last 6 months, broken down by courier, state, and product category. Audit shipping costs, reverse logistics costs, and inventory write-off costs. Build the cost-per-RTO model. Separately, build the customer return cost model: reverse logistics plus inspection plus repackaging per unit returned.
- 2Week 2: Payment Processing and Discount Erosion
Reconcile 90 days of payment gateway statements against your order management system. Identify every fee category beyond MDR and quantify the total. Pull discount and coupon usage by code and campaign. Segment customers by acquisition discount status and compute 90-day repeat purchase rates for each segment.
- 3Week 3: Fulfillment and Influencer Audit
Pull your last 3 months of 3PL invoices. Sum every cost category: receiving, storage, pick-and-pack, returns processing, and any penalties. Divide by units shipped to get real per-unit fulfillment cost. Separately, pull every influencer campaign from the last 12 months. Match spend against attributed revenue using UTM data or coupon codes. Compute net margin per campaign.
- 4Week 4: Inventory Aging and Marketplace Reconciliation
Run inventory aging reports by SKU across all warehouses. Flag everything over 90 days. Compute carrying cost and markdown risk. Separately, download one full month of settlement reports from each marketplace. Reconcile line by line. Compute actual vs. contracted commission rates. Raise disputes for recoverable discrepancies.
At the end of 30 days, you should have a single control sheet with: the quantified leakage in Rs. per month for each category, the leakage as a percentage of net revenue, and a ranked list by recovery potential. This sheet becomes the input for your 90-day margin recovery plan.
The Priority Order for Fixing Margin Leakage
Not all leakage is equally recoverable in the short term. The priority order below reflects both the typical size of the leakage and the speed of recovery. Fix in this sequence unless your audit reveals category-specific anomalies that change the ranking.
Brands that execute all five priorities in sequence over 90 days typically recover 3-6 percentage points of contribution margin. On a Rs. 5 crore monthly revenue base, that is Rs. 15-30 lakh per month in recovered margin. The audit and the 90-day plan pay for themselves quickly.
FAQ
How much margin leakage is typical for D2C brands?
What is the single biggest hidden cost for D2C brands?
Should I include CAC as a hidden cost?
How often should I audit margin leakage?
Can margin leakage explain why we are growing but not profitable?
Ankit Sarawagi has spent over a decade building, scaling, and cleaning up finance functions across startups and growth-stage companies, including 200+ D2C and consumer brands. He runs CFO Matrix, a fractional CFO practice focused on Indian D2C and growth-stage businesses.