Facebook Ads Getting Clicks But No Sales? The India COD and RTO Checklist
Clicks with no sales usually means the leak is after the ad. Here is the order we check things in for Indian D2C brands, from tracking to COD and RTO.
First, confirm the sales are really missing
Before you change an ad, check that Meta can see your sales. A broken purchase event looks exactly like a campaign that does not convert. Ads Manager shows zero purchases, Meta has nothing to learn from, and delivery drifts towards people who click but never buy.
Place a real test order on your own store, once prepaid and once COD. Then open Events Manager and check that the Purchase event arrived, with the right value and currency, from both the browser pixel and the Conversions API. If one order shows up twice, deduplication is broken. If COD orders never show up, your COD app or checkout is not firing the event. Our Meta CAPI setup guide for India walks through this step by step.
- Your store's order count for the day roughly matches purchases in Ads Manager, allowing for attribution windows.
- COD orders placed through a third-party COD form fire a Purchase event, not just an Add to Cart.
- The purchase value is the order value, not zero and not a fixed placeholder.
Check what kind of clicks you are buying
Not every click is a person who meant to visit your store. Compare link clicks with landing page views in Ads Manager. A big gap means people tap and leave before the page loads, or the taps were accidental.
Then look at the objective. If the campaign runs on Traffic or Engagement, Meta finds people who click, which is what you asked for. For a D2C store, run a Sales campaign optimised for Purchase once tracking is clean. Also break results down by placement. Audience Network and some in-app placements can send cheap clicks that rarely turn into orders.
Test the page on a cheap phone with mobile data
Most Meta traffic in India lands on a mid-range Android phone, inside the Facebook or Instagram in-app browser, on mobile data. Test it that way, not on office Wi-Fi with a laptop. If the product image takes too long to show, many people leave before they see the price.
Then read the page like a buyer who just saw a 15-second video. Does the first screen show the same product, colour and offer as the ad? If the ad promises a combo and the link opens the home page, you lose them.
- Heavy apps, pop-ups and spin-wheels slow the first load. Remove what you do not need.
- Price, size chart and delivery time visible without hunting.
- Reviews with real photos close to the Add to Cart button.
- A pincode checker that tells the buyer when the order will reach them.
- No surprise shipping or COD charges that appear only at the last step.
The COD question: are you making it hard to pay?
Many Indian buyers, especially outside the metros and on a first order from an unknown brand, want to pay on delivery. If your store is prepaid only, a lot of interested visitors will reach checkout and stop. That shows up in Ads Manager as Initiate Checkout with very few purchases.
Look at the drop between Initiate Checkout and Purchase. A sharp fall usually points to the payment step: COD missing, UPI failing, a long OTP flow or a fee that appears late. Offering COD fixes the front end of the problem. It also opens the next one, RTO.
When Meta shows sales but the bank does not: COD and RTO
Here is the trap generic guides miss. A COD order fires a Purchase event the moment it is placed. Meta counts it, ROAS looks fine, and then the parcel comes back. The buyer refused it, was not home, gave a wrong address, or ordered on impulse. You pay shipping both ways and the sale never happened.
So the honest question is not only how many purchases Meta reports, but how many delivered orders you got for the spend. Track ROAS on delivered revenue every week, next to the Ads Manager number. If the gap keeps widening, scaling the campaign only scales the returns.
- Confirm before you ship. A WhatsApp or IVR confirmation for every COD order catches fake and impulse orders before they cost you shipping.
- Push prepaid gently. A small prepaid benefit or partial advance on COD shifts serious buyers to prepaid.
- Clean the address. Use address validation at checkout, so landmarks and incomplete addresses get fixed before dispatch.
- Feed Meta better signals. Some brands send a separate event for prepaid or confirmed orders through the Conversions API and test optimising for it, so Meta learns from buyers who actually pay.
Pincodes and locations: stop paying for orders you cannot deliver
RTO is not spread evenly across India. It bunches up in certain pincodes and areas, often where courier coverage is weak or impulse COD ordering is common. Pull your last few months of orders, group delivered and returned orders by pincode, and you will usually see a clear pattern.
Act on it at two levels. In your checkout or COD app, turn off COD for the worst pincodes while keeping prepaid open, and block pincodes your courier cannot serve at all. In Ads Manager, exclude regions or cities that keep producing returns, rather than paying to reach people you cannot profitably deliver to. Revisit the list every month, because courier coverage and buyer patterns change.
The offer, the price and the trust gap
If tracking works and the page is fast, the offer is the next suspect. Indian buyers compare. Many will search your product on Amazon or Flipkart before buying from your site. If it is cheaper there, or the reviews are better there, they buy there and your ad gets no credit.
A new brand also has to earn trust in one visit. Show a clear return or exchange policy, a real contact number or WhatsApp, and proof from customers like the buyer. In the ad, a believable demo or review works better than a hook that over-promises. A clickbait hook gets clicks from the wrong people. See our creative testing framework for how to test hooks against purchases, not just CTR.
The checklist, in the order to work through it
| What you see | Likely cause | What to check |
|---|---|---|
| Orders in your store, zero in Ads Manager | Broken pixel or CAPI | Test order, Events Manager, deduplication |
| Many link clicks, few landing page views | Slow page or accidental taps | Load on mobile data, placement breakdown |
| Good CTR, few Add to Carts | Ad and page do not match, weak offer | Landing page, price vs marketplaces, reviews |
| Many checkouts, few purchases | Payment friction | COD option, UPI flow, late fees |
| Good ROAS in Ads Manager, poor bank balance | COD orders returning | Delivered ROAS, RTO by pincode, COD confirmation |
| RTO bunched in some areas | Courier coverage or impulse COD | Pincode COD blocks, region exclusions |
How Monastic Media helps
One in-house team in Surat scripts, shoots and edits the ads videos and runs the Meta and Google campaigns they go into, so the people who see the numbers make the next ad. See our performance marketing
Read next
Questions
Why does my Facebook ad get clicks but no sales?+
Usually the problem is after the click: tracking that does not record purchases, a slow mobile page, an offer that loses to marketplace prices, or a checkout without COD. Check them in that order before you change targeting.
Should I turn off COD to stop RTO?+
Turning it off completely usually costs you orders from buyers who would have paid. Most brands do better by confirming every COD order, blocking COD only in high-RTO pincodes and nudging buyers towards prepaid.
Does Meta count COD orders as purchases?+
Yes, if your checkout or COD app fires the Purchase event when the order is placed. That is why Ads Manager ROAS can look healthy while many COD parcels come back, so track delivered revenue alongside it.
Should I run a Traffic campaign to get cheaper clicks first?+
Not for a store that wants sales. A Traffic campaign finds people likely to click, not to buy. Run a Sales campaign optimised for Purchase once your tracking is verified.
How long should I wait before deciding an ad is not converting?+
Judge it on spend and purchase signals, not days alone. If an ad has spent around your target cost per purchase a few times over with no orders, and tracking is confirmed working, pause it and test a new creative.

“MM helped us scale from 0 to ₹2.6 CR/month in just 6 months with clear communication and industry expertise!”Rakesh Naidu GM @ Naaptol
Ready to grow with one team?
Book a call. If we can help you hit your goals, we will tell you how; if we cannot, we will tell you that too.
