The Complete Indian D2C COD RTO Reduction Playbook
Indian D2C brands have a COD RTO problem that is structurally different from Western e-commerce returns. Understanding it correctly is the first step to reducing it.
The RTO Problem in Numbers
Industry averages for Indian D2C (2024 data):
- Overall COD RTO rate: 25–40% across categories
- Fashion & apparel COD RTO: 35–55%
- Electronics COD RTO: 15–25%
- FMCG / consumables COD RTO: 10–20%
- High-RTO pincodes: top 5% of pincodes by volume typically generate 40–60% of total RTO
Cost per returned COD order:
- Forward shipping: ₹60–120
- Return shipping: ₹80–150
- Repackaging and QC: ₹30–80
- Inventory time (opportunity cost): ₹50–100
- Total: ₹220–₹450 per return
For a brand with 1,000 COD orders per month and 30% RTO (300 returns), that's ₹66,000–₹1,35,000 in monthly losses from RTO alone.
Phase 1: Diagnose Your RTO Pattern
Export and analyse return data
From Shopify Admin → Orders → Export (last 6 months):
- Filter for COD orders
- Cross-reference with your logistics partner's return report
- Create a pivot: pincode → return count + return rate
What you're looking for
- Hot pincode clusters: groups of adjacent pincodes with 40%+ RTO
- Category concentration: does RTO spike for specific product categories?
- Seasonal patterns: does RTO increase around festivals (impulse ordering up, intent to keep down)?
Most brands find that 5–10% of their pincodes generate 50–70% of returns. This is your primary target.
Phase 2: Surgical COD Restriction
Define your restriction list
Start with your top 100–200 highest-RTO pincodes. Sort by return count (not rate) — a pincode with 50 returns at 40% RTO is more impactful to fix than a pincode with 5 returns at 80% RTO.
Configure Lokally
- Lokally → Payment Rules → New Rule → Hide → Cash on Delivery
- Location: Pincode (upload your CSV)
- Optional scope: products above ₹800 (keep COD for lower-value items where return cost is manageable)
- Activate
Set the widget message
Lokally → Settings → Pincode Widget → COD Unavailable:
"COD is not available at your pincode. Prepaid orders are accepted via UPI, cards, and wallets."
Phase 3: Prepaid Conversion
Simply blocking COD converts some buyers to prepaid. Adding an incentive converts more.
Create a prepaid discount rule
Lokally → Regional Pricing → New Rule:
- Location: same pincodes as the COD restriction
- Discount: −₹50 to −₹100 (or −5%)
- Description hint: reference "prepaid" in product page messaging
Expected conversion split
In high-RTO pincodes where COD is blocked:
- ~60–70% of former COD buyers: convert to prepaid (genuine buyers)
- ~30–40%: don't purchase (were likely RTO risk anyway)
Net revenue in blocked pincodes: typically flat or slightly down in first month, improving after 2–3 months as the genuine buyer base builds.
Phase 4: Monitor and Iterate
Monthly review cadence
- Re-export orders and returns
- Compare RTO rate in blocked vs unblocked pincodes
- Check for new high-RTO clusters to add to the restriction list
- Check conversion in blocked pincodes — if genuinely low, review whether discount incentive needs adjustment
When to expand the restriction list
Expand when:
- You've verified initial list shows RTO improvement (4–6 weeks)
- New pincode clusters emerge with 35%+ RTO
- Category-level RTO improves in restricted areas (signals the model works)
When NOT to expand further
Don't restrict pincodes where:
- RTO is below 25% (within acceptable range)
- Order volumes are too small for statistical significance
- The pincode is a major metro where COD conversion is important
Phase 5: Seasonal Adjustment
Festival periods
COD RTO typically spikes during major festival sale periods (Diwali, Flipkart/Amazon sale crossover). Consider:
- Temporarily expanding the restriction list by 20–30% during October–November
- Adding seasonal prepaid incentives specifically during high-RTO seasons
- Reverting to standard list after the season
Summary Timeline
| Week | Action |
|---|---|
| Week 1 | Export data, identify top 200 high-RTO pincodes, set up Lokally restriction rule |
| Week 2 | Configure widget message, add prepaid discount rule |
| Week 4 | First review: measure RTO in restricted vs unrestricted pincodes |
| Week 6 | Second review: expand restriction list if initial results confirm model |
| Month 3 | Stable state: 20–40% RTO reduction, monthly data review cadence |
The full playbook takes about 2 hours to implement and delivers measurable results within 4–6 weeks.