Count COD sales only when delivered (RTO-adjusted ads)
Many cash-on-delivery (COD) orders are never accepted: the buyer refuses the parcel or cannot be reached, and it comes back to you (RTO). If Meta is told about these orders as sales, your Facebook and Instagram ads learn to find more people who order and then refuse.
With Count COD sales only when delivered, CartWhizz tells Meta about a COD order only once it is delivered. Orders that are cancelled, refunded or come back before delivery are never reported, so Meta optimises your ads for buyers who actually pay.
What changes
| Order | When Meta hears about it |
|---|---|
| Paid online (UPI, card, wallet) | Straight away, as before. |
| COD, setting on | When the order is marked Delivered. Never, if it is cancelled, refunded or returned first. |
| COD, setting off | When the order is placed, as before. |
The browser pixel on the thank-you page skips the Purchase for a held COD order, so Meta never counts it twice. Google Analytics and Google Ads still record the sale on the thank-you page as before.
Turn it on
- You need a Conversions API access token in the Facebook Pixel settings (see Getting started). Without it, nothing is held and COD sales are reported at order time.
- Open Marketing → Facebook Pixel (or Settings → Modules → Facebook Pixel → Configure).
- Tick Count COD sales only when delivered and save.
New pixel set-ups have it ticked. Stores that set up the pixel before this setting existed keep the old behaviour until they tick it.
See what it did
Under the setting, the page shows the last 30 days:
- Waiting for delivery: COD orders not delivered yet.
- Reported on delivery: COD orders delivered and sent to Meta.
- Cancelled or returned and never reported: the orders kept out of your ad data.
Good to know
- Mark orders Delivered (or let your courier tracking do it). An order that is never marked delivered is never reported.
- Meta accepts a sale up to 7 days after it happened. CartWhizz reports it at the moment of delivery, so the delay does not matter.
- Meta has no way to remove a sale once it has been reported. That is why COD sales are held until delivery instead of being reported and taken back later. Refunds of online-paid orders already reported stay in Meta's numbers.
- In Meta Ads Manager, COD sales now appear on the day they are delivered, not the day they were ordered.
Settings reference
| Setting | Key | Default |
|---|---|---|
| Count COD sales only when delivered | cod_on_delivery (Facebook Pixel module setting) | On for new set-ups |