To reduce RTO in Pakistan, first get a shipment-level report from your courier and find which cities, order values and products return most. Then confirm every COD order on WhatsApp within five minutes, filter fake numbers with OTP, remind buyers the day before delivery, nudge them to prepaid, and stop advertising in your worst-returning cities.
- Around 1 in 5 COD parcels in Pakistan comes back (18–20% national average, per DHL Pakistan). Well-run stores hold RTO under 15%.
- A returned parcel is a loss, not a zero: you have paid for the ad, packing and courier both ways.
- WhatsApp confirmation within five minutes of the order is usually the single biggest fix; speed matters more than wording.
- Measure RTO by booking week, and only after those parcels have been delivered or returned.
- Make one change every two weeks, so you know which one worked.
If you sell on cash on delivery in Pakistan, roughly one in five parcels comes back. The national average for COD returns, or RTO (return to origin), sits around 18–20%, according to DHL Pakistan.
Most brand owners treat that as a fact of life, like load-shedding. It isn’t. Well-run stores hold RTO under 15%, and the difference between 22% and 15% is often the difference between a business that loses money on every order and one that makes it.
This guide covers why returns hurt more than you think, how to find out where yours come from, and the five fixes that work, in the order to do them.
Why one returned parcel costs more than you think
When a parcel comes back you don’t just lose the sale. Look at what you’ve already paid for:
- The ad that produced the order. Meta charged you for it the moment the order was placed.
- Packaging and labour, paid on every parcel that leaves.
- The courier going out.
- The courier coming back. This one is pure loss: there’s no revenue attached at all.
- Damaged stock. Some returned products can’t be sold again, because the seal is broken or the box is crushed.
So a returned parcel isn’t a zero. It’s a negative. In the worked example we use in our own diagnostics (AOV Rs 1,200, 22% COD returns, Rs 450 ad cost per order), a store that looks fine on Ads Manager at 2.67x ROAS is actually losing about Rs 1,577 for every 100 orders it books. Returns are the biggest reason why.
Meta counts the order. Your courier returns one in five. Your bank only sees what was delivered.
Step 1: Get your real RTO numbers (most brands never have)
You can’t fix what you haven’t measured, and “around 20%” isn’t a measurement. Every major courier (TCS, Leopards, M&P, BlueEX, PostEx, Trax, CallCourier, Rider) can give you a shipment-level report. Ask for it by name:
“Please share our shipment-level report for the last 90 days in CSV/Excel, with: CN/tracking number, booking date, delivery date, destination city, COD amount, current status, and return reason.”
If the portal won’t export it, your courier’s key account manager will. As a last resort, your COD settlement statements list every delivered consignment. Compare that with total orders booked in Shopify and you have your RTO.
Then build three simple tables in Google Sheets:
- RTO by city. Look at your top 15 cities by volume. The rest is noise.
- RTO by order value. Group into bands: under Rs 1,000, Rs 1,000–2,000, Rs 2,000–3,500 and over Rs 3,500. The lowest and highest bands often spike, for different reasons.
- RTO by product. Flag any product returning at more than 1.5 times your average.
Now put your ad spend by city next to the first table. In almost every account we open, real money is going to the worst-returning cities, because they’re big and their ads are cheap.
Step 2: Confirm every order on WhatsApp within five minutes
This is the single highest-return change most COD brands can make, and speed is the whole trick.
Five minutes after ordering, the buyer still remembers what they bought and why. Twenty-four hours later they’ve cooled off, forgotten, or ordered from someone else, and they refuse the parcel at the door.
A good confirmation message:
- Names the product and the exact cash amount to keep ready
- Asks for a one-tap reply (“1 to confirm, 2 to cancel”)
- Goes out automatically, not when someone in the office gets to it
Unconfirmed orders get a call before they ship. Orders cancelled at this stage cost you nothing. The same order refused at the door costs you the courier twice.
Step 3: Filter the orders that were never real
A share of your returns were never genuine orders: wrong numbers, fake names, prank orders and repeat refusers. You can stop most of them before they cost you a courier fee:
- OTP at checkout. The buyer confirms the number with a one-time code, so typos and fake numbers fail before the order exists.
- Phone-number checks. Block numbers that are clearly invalid, and keep a list of numbers that have refused before.
- Address quality. An address of “near the mosque” with no area or landmark is a predictable return. Ask for a complete one.
Step 4: Move more buyers to prepaid, without removing COD
Prepaid orders almost never come back, and they also skip the courier’s COD fee. Every buyer you move from COD to prepaid removes risk twice.
- Offer a real reason to pay in advance: free delivery or a small discount. Work out the numbers first, because the discount must cost less than the returns it prevents.
- Show prepaid first at checkout, with COD still available.
- For high-risk orders (a first-time buyer, a high order value, a high-return city), send a payment link instead of rejecting the order.
Never switch COD off. More than 80% of online orders in Pakistan are COD. Removing it doesn’t reduce returns; it removes the business.
Step 5: Remind them the day before, with the amount
A short message the day before delivery (“Your order of Rs 2,150 arrives tomorrow. Please keep the amount ready.”) cuts the number of “I don’t have cash right now” refusals. Name the exact amount. That’s the part that works.
Step 6: Stop paying to advertise to your worst cities
Once you know your RTO by city, use it in Ads Manager:
- Bid down, don’t block. Excluding a big city entirely often throws away good buyers along with bad ones. Lower budgets there, or send those orders through confirm-first.
- Watch your product-level returns too. A product returning at 35% may need a better product page (real photos, honest sizing) more than it needs more ads.
In what order should you do all this?
Don’t change everything in one week, or you won’t know what worked. A sensible order:
| Weeks | Change | Check after |
|---|---|---|
| 1–2 | Get courier data, build the three tables | — |
| 3–4 | OTP and phone filtering | 14 days |
| 5–6 | WhatsApp confirmation within 5 minutes | 14 days |
| 7–8 | Day-before reminders, city bids | 14 days |
| 9–10 | Prepaid incentive | 14 days |
Measure RTO by booking week, and wait until the parcels from that week have actually been delivered or returned. Judging last week’s RTO on Monday morning just measures parcels still in transit.
What should your RTO be?
Honestly, it depends on your product, price and cities, so be careful with anyone who quotes you a number without seeing your data. As a guide: the national COD average is 18–20%, and well-run stores hold under 15%. Your own trend matters more than any benchmark. Going from 24% to 18% beats sitting at 17% and staying there.
Want to see where your returns come from?
We do this for every brand we work with. Returns are one of three beams in our Roof Package, alongside your margin and your ads. If you want a second pair of eyes, start with the free profit-leak check below.
Frequently asked questions
What is RTO in e-commerce?
RTO means return to origin: a parcel that goes back to the seller because the buyer refused it, wasn't reachable or the address was wrong. In cash-on-delivery businesses it is the biggest hidden cost, because the ad, packing and courier are already paid.
What is a good RTO rate in Pakistan?
The national COD average is about 18–20%. Well-run stores keep it under 15%. Your own trend matters more than any benchmark: going from 24% to 18% beats sitting at 17%.
Does WhatsApp order confirmation really reduce returns?
Yes, when it is fast. A message within five minutes, naming the product and the exact cash amount with a one-tap reply, catches buyers while they still remember the order. Cancelled orders at this stage cost nothing; refused parcels cost the courier twice.
Should I stop offering cash on delivery?
No. Most Pakistani buyers still want COD. Instead, give a small reason to pay in advance (a discount or free delivery on prepaid) and keep COD available.
How do I get my RTO data from my courier?
Ask your courier (TCS, Leopards, M&P, PostEx, Trax and others) for a shipment-level report for the last 90 days with tracking number, booking and delivery dates, city, COD amount, status and return reason. If the portal won't export it, your key account manager will.
Find out where your money is leaking
Send us your brand and we'll record a short video on your own ad account: what Meta over-counts, where returns cost you, and the first thing we'd fix. Free, with view-only access.