cashod
GUIDES

COD product profit: the real margin per delivered order

Price, product cost, delivery, returns, ads, confirmation, COD commission and VAT: the formula for real profit per delivered COD order, with a worked example.

Cashod Editorial TeamGuides for COD sellers10 min read
COD product profit: the real margin per delivered order
Table of Contents

A product that sells well is not necessarily a product that pays. With cash on delivery, the gap between the price on the page and the money that actually stays with you widens at every step: ads pay for leads that are never confirmed, the courier bills parcels that come back, and the customer turns down at the door an item you have already paid your supplier for. This guide sets out a simple method: bring everything back to the order that was delivered and paid for, with a formula that works for any product, followed by an example built from the price lists carriers publish themselves.

Why gross margin misleads a COD seller

The instinct is to work out gross margin: selling price minus purchase cost. If an item bought for C sells for P, the difference looks like profit. In a prepaid sale that reasoning roughly holds. In COD it misses the main point: the customer only pays when the parcel arrives, and may not pay at all.

In Morocco this way of paying is still the norm: according to the ANRT national ICT survey quoted by Le Matin, more than 66% of orders are still settled in cash on delivery. The same article quotes an expert putting the merchant’s refusal rate at delivery between 20 and 40%, with stock that sits idle, logistics costs that double and cash that stays blocked. Every refused parcel has cost an ad, a call, packaging, often an outbound trip and sometimes a return trip, without bringing in a single dirham.

Gross margin sees none of these costs, because they do not land on the order that caused them: they land on the orders that were delivered. That is why two sellers offering the same item at the same price can end the month one in profit and the other at a loss.

The unit that matters: the delivered order

Judging a product starts with choosing the right unit. In COD it is not the click, the lead or the order received: it is the order that was delivered and paid for. Every other step costs money; only this one earns it.

An order travels through a funnel:

  1. The lead: the customer fills in the form. The ad money is already spent.
  2. The confirmed order: the team has reached the customer and checked the item, the price and the address. Some leads stop here: fake numbers, customers who never answer, changes of mind.
  3. The shipped parcel: the carrier picks it up.
  4. The delivered parcel: the customer pays, the courier collects, and the money reaches you later.
  5. The refused parcel: it comes back, with or without a fee depending on the carrier.

For each product, track two rates: the share of leads that get confirmed, which we will call c, and the share of shipped parcels that are refused, which we will call r. The delivered share is then 1 − r. Those two rates are enough to move every upstream cost onto the delivered order.

The costs that belong in the calculation

Before the formula comes the inventory. Each line has to be priced with your own data, but public price lists give orders of magnitude.

These figures are what each company publishes or what the directory records; they do not replace your contract. Always ask for the full price list in writing, returns included. To compare carriers city by city, see our COD delivery price comparison.

The formula for profit per delivered order

Once the costs are listed, they have to be spread correctly. The principle fits in one sentence: whatever was paid for an order that fails must be carried by the orders that succeed.

Profit per delivered order, B, is:

B = P − T − C − L − F × P − R × r ÷ (1 − r) − (A + K) ÷ (c × (1 − r))

  • P: the price the customer pays, delivery included if you charge for it.
  • T: the VAT inside that price, if you are liable for it. At the 20% rate it is one sixth of a tax-inclusive price.
  • C: the cost of the item and its packaging.
  • L: the delivery fee for the delivered parcel.
  • F × P: the COD commission on the amount collected.
  • R × r ÷ (1 − r): the return fees of refused parcels, spread over delivered ones. If r is the share of parcels refused, there are r ÷ (1 − r) refused parcels for every delivered one.
  • (A + K) ÷ (c × (1 − r)): advertising and confirmation paid per lead, divided by the share of leads that end up delivered.

Two refinements. If a refused parcel comes back damaged or incomplete, add part of the item’s cost in the same way as the return fee: returned stock cannot always be sold again. And if your carrier also bills the outbound leg of a refused parcel, replace R with the combined outbound and return charge; that is the case SwiftLog describes when the return is billed at the price of a delivery.

The COD calculator runs this for you: enter your own figures and compare several refusal levels.

A worked example built on published price lists

Take an item sold at price P, bought at cost C and delivered in Casablanca. So that every figure stays verifiable, the example uses only published rates and the refusal range reported by Le Matin; swap in your own values for P, C, A and K.

Case one: 20% refusal. Out of 5 parcels shipped, 4 are delivered and 1 comes back. That refused parcel weighs on 4 deliveries: each delivered order carries a quarter of its return, and the ad money spent on all 5 orders is shared among 4.

Case two: 40% refusal. Out of 5 parcels shipped, 3 are delivered and 2 come back. Each delivered order carries two thirds of a return, and the advertising for 5 orders is shared among 3 instead of 4.

Cost per delivered orderCarrier with free returns (Ameex list, Casablanca)Carrier that charges returns (SwiftLog range)
Delivery35 MADL, between 20 and 45 MAD by city
Returns, 20% refusal0 MADa quarter of R, with R between 10 and 25 MAD
Returns, 40% refusal0 MADtwo thirds of R
COD commissionF × P, with F between 0% and 3%
Ads and confirmation, 20% refusal(A + K) ÷ c, multiplied by 5 ÷ 4
Ads and confirmation, 40% refusal(A + K) ÷ c, multiplied by 5 ÷ 3
VAT if you are liable, 20% rateone sixth of P

The table teaches three things. First, going from 20 to 40% refusal does not just add returns: advertising and confirmation per delivered order rise by a third, because the multiplier moves from 5 ÷ 4 to 5 ÷ 3. Second, with a carrier that charges for returns, the return burden per delivered order nearly triples, from a quarter to two thirds of R. Third, a free return does not make a refusal free: the ad, the call, the packaging and the idle stock are still lost.

One last detail: Ameex states that its prices include VAT and are per delivered parcel. If you are VAT-registered, ask your accountant how to treat the tax included in your delivery fees and purchases.

The ceiling: how much can you pay for a lead?

Turn the formula around and it answers every media buyer’s question: how much can I pay for a lead without losing money? Set B to zero and isolate advertising:

Maximum cost per lead = (P − T − C − L − F × P − R × r ÷ (1 − r)) × c × (1 − r) − K

That ceiling depends directly on c and r. The same product can afford a comfortable cost per lead with a team that confirms well and a low refusal rate, then turn loss-making with exactly the same ads once refusals climb. This is why judging a campaign on cost per lead alone leads people to cut the good campaigns and keep the bad ones. A campaign that brings cheap leads full of fake numbers has a low c; a pricier campaign whose customers confirm and pay may well be the more profitable of the two.

Work out this ceiling for each product and each traffic source, and revisit it every week: the rates move with the seasons, the cities you target and your creatives.

The levers that improve profit

  • Bring refusals down. This is the strongest lever, because r acts on both returns and advertising. Serious confirmation, checking the item, the total price and the address with a landmark, is the foundation. See our guide on reducing the COD return rate.
  • Choose the carrier on full cost, not on the headline price. Cheap delivery with paid returns can end up dearer, at the same refusal rate, than a higher rate with free returns. Run the numbers with your own refusal rate.
  • Watch cash flow. Money collected at the door is not yours until it is paid out. Ameex advertises payout within 24 hours and describes the market’s payout as weekly. Slow payouts do not shrink profit per order, but they delay the moment you can relaunch campaigns.
  • Adjust the price. P appears several times in the formula; a few extra dirhams on a rarely refused item often do more than a small cut in purchase cost.
  • Look at cities. Fees change with the destination, and so does refusal. A product that pays in Casablanca can lose money in a distant city where delivery costs more and the wait gives the customer time to change their mind.
  • Weigh the parcel. For heavy items, the weight supplement can swallow a good part of the margin.

Tracking real profit with Cashod

Applying this formula means knowing the final status of each order and what it cost. Cashod tracks returned parcels, and each carrier’s delivery and return fees are set per city: every refusal is tied to its real cost. See the page on returns. Any other carrier can be added to Cashod manually, without automatic shipment creation or tracking.

Confirmation, which decides c and much of r, happens in the same tool: Cashod includes a call center where agents confirm COD orders by phone, and it can confirm orders over WhatsApp, including with an AI agent. One Cashod account can manage several stores, so products from different shops can be compared with the same method.

Whatever the tool, keep the rule in mind: a product only pays if the delivered order covers, on top of its own cost, its share of refusals, advertising and confirmation.

Tags
rentabilitecodmarocmargelivraisonpublicite
Written byCashod Editorial TeamGuides for COD sellers
Share
Back to blog

Grow Your COD Business

Start free trial

7-day free trial · Cancel anytime

COD product profit: the real margin per delivered order | Cashod