COD calculator: what refused cash on delivery orders cost your store
Enter your monthly COD orders, refusal rate and courier costs, and this free COD calculator shows what refused and fake cash on delivery orders cost you each month, how much of your profit they take, and what you would save by catching some of them before you ship. Every number comes from you, so the result is only as accurate as your inputs.
By the Whapi teamUpdated Made by Whapi, a Shopify app for WhatsApp automation
Refused COD orders cost you
$1,000 / month
$12,000 a year
- Refused parcels800 delivered
- 200 a month
- Cost of one refused parcelShipping + return fee + packaging
- $5.00
- Share of your COD profit lostProfit from delivered orders: $6,400
- 15.6%
- Delivered orders needed to cover it
- 125
If confirmation catches 20% of refusals before shipping
$200 saved / month
40 fewer parcels sent back · $2,400 a year
| Caught | 10% | 20% | 50% |
|---|---|---|---|
| Saved / month | $100 | $200 | $500 |
- Meta fee to confirm every order1,000 Utility messages × $0.0107
- $10.70 / month
Results depend entirely on the numbers you enter. Whapi doesn’t promise a specific reduction: measure your refusal rate before and after you start confirming orders. Savings exclude sales you might recover from customers who confirm. Meta fee at its USD Utility list rate effective October 1, 2026, checked October 20, 2026, and only if Meta categorizes your confirmation template as Utility.
The short answer
- The monthly cost of refused COD orders is the number of refused parcels multiplied by outbound shipping, the courier’s return fee and packaging. The product usually comes back; that money doesn’t.
- With the example inputs (1,000 orders a month, 20% refused, $5 lost per refusal), refusals cost $1,000 a month, or 15.6% of the profit from delivered orders.
- Confirming each COD order on WhatsApp before shipping lets you cancel orders the customer doesn’t want while they still cost nothing. How many it catches depends on your store, so measure before and after.
- One confirmation is one Meta Utility message: $0.0150 in Pakistan, $0.0107 in Saudi Arabia and $0.0157 in the UAE (checked October 20, 2026).
How the COD calculator works
The calculator multiplies refused parcels by what each one costs you, then compares that with the profit your delivered orders make. It only counts money you actually spend, so the result is a conservative floor.
| Result | Formula |
|---|---|
| Refused parcels | COD orders shipped × refusal rate |
| Cost of one refused parcel | Shipping cost + return fee + packaging and handling |
| Monthly loss from refusals | Refused parcels × cost of one refused parcel |
| Share of COD profit lost | Monthly loss ÷ (delivered orders × profit per delivered order) |
| Delivered orders needed to cover the loss | Monthly loss ÷ profit per delivered order |
| Potential monthly savings | Refused parcels × share caught before shipping × cost of one refused parcel |
| Meta fee to confirm every order (USD) | COD orders × Meta Utility rate for your customers’ country |
Amounts stay in your own currency and no exchange rate is applied. Meta’s fee is shown separately in US dollars, because Meta publishes its rate card in USD.
Worked example: 1,000 COD orders a month
A store that ships 1,000 COD orders a month with a 20% refusal rate loses $1,000 a month, $12,000 a year, on parcels that come back. These are the calculator’s example values, not a benchmark.
| Value | |
|---|---|
| COD orders shipped per month | 1,000 |
| Refusal rate | 20% |
| Shipping + return fee + packaging | $3.00 + $1.50 + $0.50 = $5.00 |
| Profit per delivered order | $8.00 |
| Refused parcels | 200 |
| Monthly loss from refusals | $1,000 |
| Profit from delivered orders | $6,400 |
| Share of COD profit lost | 15.6% |
| Delivered orders needed to cover the loss | 125 |
| Savings if 10% of refusals are caught before shipping | $100 a month |
| Savings if 20% of refusals are caught before shipping | $200 a month |
| Savings if 50% of refusals are caught before shipping | $500 a month |
| Meta fee to confirm all 1,000 orders in Saudi Arabia | $10.70 |
In this example each refused parcel costs $5, which is 63% of the profit on a delivered order, and it takes 125 good orders a month just to pay for the ones that came back.
Confirming every order in this example costs $10.70 a month in Meta fees at Saudi Arabia’s Utility rate, plus $18.99 for Whapi Pro. Together that is no more than the cost of 6 refused parcels, out of the 200 that come back each month. Put your own figures into the calculator to find your break-even point.
What counts as a refused COD order (RTO)
A refused COD order is any cash on delivery parcel that goes out and comes back unpaid. Couriers usually call it RTO, short for return to origin. Count all of these in your refusal rate:
- Refused at the door. The customer changed their mind, ordered elsewhere or doesn’t have the cash.
- Fake or prank orders. Orders placed with no intention to receive them, often with a real phone number belonging to someone else.
- Unreachable customers. Wrong phone number, phone off, or no answer after the courier’s attempts.
- Address problems. Incomplete or wrong addresses the courier can’t find.
- Duplicate orders. The same customer ordering twice by mistake and refusing one parcel.
The formula leaves out costs that are harder to measure but real: stock tied up in transit for days, items damaged on the way back, and team time spent chasing customers. Treat the result as the minimum refusals cost you.
Where to find your numbers
Your courier invoices and delivery reports hold most of the inputs. Shopify holds the rest. In Shopify, cash on delivery is a manual payment method, so COD orders stay unpaid until you mark them as paid.
| Input | Where to find it |
|---|---|
| COD orders shipped per month | Shopify Orders, filtered to your COD payment method and fulfilled orders, or your courier’s shipment report |
| Refusal rate | Your courier’s returned or RTO report divided by parcels shipped. Tag returned orders in Shopify (for example “RTO”) and filter the Orders page by that tag |
| Shipping cost per order | Your courier invoice or rate card |
| Return fee per refused parcel | Your courier contract. Some couriers charge a full return fare, some a share of it, some nothing |
| Packaging and handling | Box, filler and label cost per order, plus packing time if you pay for it |
| Profit per delivered order | Average order value minus product cost, shipping, packaging and any courier cash collection fee |
What WhatsApp order confirmation costs per order
Confirming a COD order on WhatsApp costs one Meta message per order, usually at the Utility rate for your customer’s country. Compare the rate below with your own cost per refused parcel from the calculator.
| Customers in | Per confirmation | Per 1,000 COD orders |
|---|---|---|
| Pakistan | $0.0150 | $15.00 |
| Saudi Arabia | $0.0107 | $10.70 |
| United Arab Emirates | $0.0157 | $15.70 |
| Kuwait | $0.0440 | $44.00 |
| Qatar | $0.0120 | $12.00 |
| Oman | $0.0247 | $24.70 |
| Morocco | $0.0230 | $23.00 |
Whapi’s plan is billed separately through Shopify: Pro is $18.99 a month and Team $45 a month, both with a 7-day free trial. You pay Meta’s message fees to Meta directly, with no markup from Whapi. See Whapi pricing for what each plan includes.
How to reduce refused COD orders
Stop unwanted orders before they ship, and keep genuine customers informed until the parcel arrives. These steps work together:
- Confirm every COD order on WhatsApp before shipping. The customer taps Confirm or Cancel, and Whapi’s COD confirmation tags the order in Shopify. Ready-to-use wording is in the COD order confirmation templates.
- Call only the customers who don’t reply. Your team spends its time on the uncertain orders, not every order.
- Send a shipping update with the tracking link. The customer knows when the parcel is coming and can have the cash ready. WhatsApp shipping updates go out from your Shopify fulfillment and tracking data.
- Ask for an advance only where it’s needed. Partial COD on high-risk products or cities, rather than on every order.
- Collect a reachable phone number and a clear address. Make the phone number required at checkout so the courier, and your WhatsApp confirmation, can reach the customer.
The full playbook is in how to reduce fake COD orders and the Shopify cash on delivery guide.
What COD stores say about confirming orders
Rated 5 stars by 39 merchants on the Shopify App Store.
This is the best app I have ever used I have almost 5000 orders a month and never faced a problem fast and smooth
Maylara Beauty
Pakistan · Shopify App Store review
Perfect application for confirming your orders, 100% recommended.
Balenza
Pakistan · Shopify App Store review
Confirm bot is a great app working very fast and smooth for me I have used many others but failed but this app is great
Active Patches
Pakistan · Shopify App Store review
COD cost questions
Multiply the number of refused cash on delivery parcels in a month by what each one costs you: the outbound shipping you paid, the courier’s return fee and the packaging and handling you can’t reuse. For example, 200 refused parcels at 5 each cost 1,000 a month. Divide that by your profit per delivered order to see how many good orders it takes to cover the loss.
There is no single reliable benchmark. Refusal rates change with the country, city, courier, product category, price and how orders are collected, so a figure from another store tells you little about yours. Calculate your own from the last two or three months of courier reports, and track it by courier and city so you can see where refusals come from.
RTO stands for return to origin, a parcel the courier takes back to the seller after a refusal or a failed delivery. In the COD calculator every RTO counts as a refused order, because the store paid outbound shipping, usually a return fee and packaging, and collected nothing. Your courier’s RTO report is the quickest place to find your refusal rate.
It removes orders the customer never meant to receive, such as duplicates, test orders and prank orders, before you pay to ship them, and reminds genuine customers that a parcel is coming. How much it lowers your refusal rate depends on your store, so measure your rate for a few weeks before and after you start confirming orders.
A WhatsApp order confirmation is one template message, which Meta usually categorizes as Utility. Meta’s Utility rate is $0.0150 per message in Pakistan, $0.0107 in Saudi Arabia and $0.0157 in the United Arab Emirates (rates effective October 1, 2026, checked October 20, 2026). With Whapi you pay these fees to Meta with no markup, plus the Whapi plan, from $18.99 a month.
A partial payment, such as the delivery fee paid upfront, discourages fake orders, but it can also put off genuine buyers who only trust cash on delivery. You can start with high-risk products or cities only. WhatsApp confirmation works alongside it: you can ask for confirmation on every COD order and ask for an advance only when a customer doesn’t reply.
Most refused COD orders are not lost sales, because many were never real purchases. The calculator only counts money you actually spend on refused parcels: shipping, return fees and packaging. That keeps the result conservative. If confirmation also helps genuine customers accept parcels they might have refused, your real savings are higher.
No. The calculator runs in your browser and Whapi doesn’t receive or store the numbers you enter. Refresh the page to start again with the example values.
Sources
- Meta: WhatsApp pricing and rate cards (checked October 20, 2026)
- Meta: Utility templates inside the customer service window are charged (checked October 20, 2026)
- Shopify Help Center: Manual payment methods (cash on delivery) (checked October 20, 2026)
- Shopify Help Center: Creating and using tags (checked October 20, 2026)
Keep reading
- FeaturesWhatsApp Order Confirmation for ShopifyConfirm new Shopify orders on WhatsApp before you ship. Customers tap Confirm or Cancel, and Whapi tags the order in Shopify and sends the follow-up.Read
- TemplatesCOD Order Confirmation WhatsApp Message TemplatesWhatsApp templates that ask cash on delivery customers to confirm or cancel, with buttons, Shopify variables and follow-ups for each reply.Read
- BlogHow to Stop Fake COD Orders on Shopify: 7 FixesSeven ways to reduce fake and refused cash on delivery orders on Shopify, from order confirmation and COD limits to partial prepayment.Read
- GuidesShopify Cash on Delivery: Setup, Fees and ConfirmationHow to turn on cash on delivery in Shopify, limit it by country or order value, add a COD fee, and confirm COD orders before shipping.Read
- PricingWhatsApp API Pricing 2026: Per-Message Rates by CountryMeta's WhatsApp Business API rates per message for marketing, utility and authentication templates, by country, plus what changed in 2026.Read
- IntegrationsUse Whapi with Releasit, EasySell & COD Form AppsHow Whapi confirms orders created by COD form apps like Releasit and EasySell, and what to check so the customer phone number reaches WhatsApp.Read
Confirm COD orders on WhatsApp before you ship them.
Join 5,000+ merchants using Whapi. Install it from the Shopify App Store, connect your WhatsApp Business number and turn on your first automation in minutes. Every plan starts with a 7-day free trial.