← ArticlesArticle

Cash on Delivery on Shopify: How to Reduce Lost Orders

In short

A complicated COD order form, or one placed inside a separate Shopify checkout, loses orders whose ads are already paid for. One store removed the cart and put the form directly after the product page, cutting lost orders by 21.7% and lifting CVR to 3.14% in a single month with 3.64 million EGP in sales. Lost orders are different from returns (RTO), which happen after shipping.

Shopify is built around online payment: cart, checkout, payment gateway. Cash on delivery (COD) wasn't part of the original idea. It's an add-on. That means enabling COD as a payment option in your store settings isn't enough. If you leave the rest of the funnel as it is (cart, shipping page, payment page), you've put a simple payment method inside a funnel designed for a completely different process. The result is orders that start and get abandoned halfway, before they're even recorded in the system.

Lost orders are not returns

You need to separate two things from the start, because the fixes are completely different.

Lost orders happen before the order is recorded. A customer opened the product page, decided to buy, started typing in the form, and left without pressing confirm. You already paid for that order's ad (the visit came from a paid click), and yet it doesn't even appear in your order list.

Returns (RTO) happen after all of that. The order was recorded, shipped, and then came back without being received and paid for. That topic is covered in detail in Why orders get returned in Egypt, and it's completely different from this article, which is about the form and the funnel rather than confirmation and shipping.

The key point: lost orders are much cheaper to fix than returns, because the fix is entirely in your hands. You change a page and a form, not a customer's behavior or a shipping company.

Why Shopify's default funnel loses COD orders

When you open a regular Shopify store and enable COD, the journey becomes: product page → Add to Cart → cart page → checkout (address, shipping, payment) → confirmation. That's four or five steps between the decision and the confirmation.

The problem is that a COD customer makes the buying decision while still on the product page. There's no wallet or payment gateway that calls for a cart or extra security steps. Every additional step after that decision is a place where a customer who was already convinced gets lost. This is explained in detail in COD in Egypt and why it changes all your numbers. The online payment funnel and the COD funnel are different at the root, and the way your store is built has to reflect that.

The practical proof that shortening the distance between decision and confirmation matters: a COD store removed its cart entirely and made the journey just landing page → direct order form. The result in one month: 3.64 million EGP, a CVR of 3.14% (up 5.7%), and most importantly lost orders fell 21.7%. Full details are in The right COD architecture.

The Shopify order form: elements that reduce drop-off

No single solution fits every store, but five points come up again and again in any COD store on Shopify that needs a better form.

1. Put the form on the product page, not in a separate checkout

If you sell one product or one bundle, drop the cart and the default checkout completely. A direct order form (name, phone, address) under the product page closes the decision at the moment the customer is convinced. If you have a catalog with several categories, the cart is essential and you shouldn't remove it. This isn't a general rule. It's a decision that depends on the type of store, as I explained in The right COD architecture.

2. Split the address into fields instead of one

A single empty address field where the customer writes "Nasr City next to the mosque" is the first cause of a vague address that makes delivery harder later. Separate fields for governorate, area and address details show the customer exactly what's needed, which reduces both form abandonment and address errors.

3. As few fields as possible

Every extra field (email, discount code, order note) is another chance for the customer to stop, overthink, or get bored. The ideal COD form usually has just four fields: name, phone, address (split), and the confirm button. Remove any field that isn't necessary for shipping or contact.

4. No account registration

Forcing a customer to create an account or password before ordering is a pointless step in COD, since there's no online payment that needs card details saved. Every extra registration step between the decision and the confirmation opens a door for the customer to leave the page.

5. One clear action button

A page with more than one buy button or more than one path (buy now / add to cart / order on WhatsApp) distracts the customer and makes them postpone the decision. Use one clear button, repeated at the top and bottom if the page is long, as we discussed in The product page on Shopify.

Filtering fake orders without adding steps

Many store owners get confused here. Fear of fake orders pushes them to add verification steps to the form itself (a confirmation code, an extra question), and that brings back the same lost order problem we're trying to solve. It's better for filtering to happen after the order is recorded, not before: a quick confirmation by call or WhatsApp message before shipping, instead of loading the form with verification steps that lose real orders to stop fake ones. The details are in How to reduce returns (RTO), because quick confirmation is the same lever that reduces returns too.

How to measure your lost orders on Shopify

The calculation doesn't need an external tool. In the Sessions and Checkout behaviour reports inside Shopify Analytics, compare the number of visits that reached the product page or started the form with the number of orders actually completed in the same period. The large gap between the two numbers (after excluding visitors who never came with buying intent) is your lost orders.

You should track this number weekly like any core number in the store, instead of discovering it by accident at the end of the month. Connect it to your break-even calculation on the real profit calculator so you know what those lost orders are actually worth in money.

Measure yourself correctly before you judge the form

Before you decide your form is the problem, compare your CVR with a realistic benchmark. An Egyptian Shopify store selling COD should aim for a conversion rate between 3% and 7%, as explained in The normal conversion rate for an online store. That number is set by the payment method and the market, not the name of the platform. If you're clearly below it and your traffic fits the product, the problem is probably the form or the order of the page, the same logic we discussed in The store gets visitors but doesn't sell. And compare yourself with full market averages in the ecommerce benchmarks for Egypt and the Gulf.

Also make sure your pixel is recording correctly before judging any of these numbers, because a decision based on wrong data will point you to the wrong change in the form. The steps are in How do I know my pixel is recording correctly?.

If you're still building your store from scratch

If your store is new and you haven't settled on the shape of the funnel, these decisions (the form, the cart, the confirmation) need to be made from day one before any ad, instead of being changed after you've spent money on traffic that gets lost in a complicated form. The details are in A new store from scratch: the first 5 things before your first ad. And if you want to calculate your real profit after deducting lost orders and returns, I get orders and I lose money shows the full calculation.

The bottom line

Lost orders in Shopify stores selling COD aren't inevitable, and they're not the same problem as returns. They're a direct result of a funnel designed for online payment with COD switched on top of it unchanged. A shorter form, on the product page itself, with clear address fields, no account registration, and one action button: that's what closes the gap between a customer who decided to buy and a customer who actually bought.

This is part of my work at SADUQ: adjusting the order form and funnel on Shopify for COD stores, then implementing and measuring. If you're torn between Shopify and another platform for a COD store, Shopify or EasyOrders explains the difference, and full details of the work are in Shopify expert in Egypt.

Frequently asked questions

How do I enable cash on delivery on Shopify?

Shopify itself lets you add COD as a payment option in the standard Checkout from the Payments settings. The problem is that the standard Checkout is built around cart, then shipping, then payment, which is a long funnel for a customer who decided to buy on a single product page. The more effective alternative is usually a direct order form on the product page itself, as explained in the right COD architecture.

Why does the Shopify order form lose customers halfway?

The most common reasons: extra steps between the decision and the form (cart, then checkout), a single address field with no clear breakdown so the customer is unsure what to write, and a form asking for more data than needed, like an email or account registration that a COD purchase doesn't require. Every extra step or field is a chance for the customer to leave the page.

What exactly should a Shopify COD order form include?

Usually just four fields: name, phone number, and governorate/area/address details split into separate fields instead of one, plus the order confirmation button. No account registration, no optional fields that make the form longer, and no more than one action button on the page.

Are lost orders on Shopify different from returns (RTO)?

Yes, fundamentally. Lost orders happen before the order is recorded in the system at all: a customer started the form and left it. Returns (RTO) happen after the order was recorded and shipped and no money came back. The first is a form and funnel problem. The second is a confirmation and delivery problem, covered in the article on returns in Egypt.

How do I find the lost order rate in my Shopify store?

Check the Checkout behaviour or Sessions report in Shopify Analytics, and compare visits to the product page with orders actually completed. The large gap between them (where it isn't just down to visitors with no intent to buy) is your lost orders, and you should track it weekly like any core store number.

Want me to look at your numbers?

Message me on WhatsApp
WhatsApp