Articles

Work out delivery cost before you set a price

Delivery is priced per parcel you hand over, but it is paid per order that arrives. How to build a cost per delivered order before you set a price.

By Atheerium6 min read
  • delivery
  • pricing
  • ecommerce
All articles

A courier quotes you per parcel handed over. The cost you carry is per order that arrives and gets paid for, and the two numbers are not close. There is one case where the quote is good enough: you deliver inside your own city with your own driver, and almost nothing comes back. Everywhere else, the unit of costing is the delivered order.

Why is the delivered order the only unit that works?

Because every parcel you send is paid for, and only some of them produce money. A refused parcel costs the outbound leg, the return leg, the packaging, the driver's time and the phone calls, and it returns a product that has been in a van for a week.

So the calculation is not the delivery price divided by orders. It is total delivery spend for a period, divided by orders delivered and paid. Written that way, three questions appear that a price list cannot answer: how many attempts an order takes, how often a parcel comes back, and which zones the volume goes to.

What does a failed attempt cost?

A second attempt is not a retry; it is another delivery, priced as one. The courier charges for the trip whether or not the customer opens the door, and your team pays for the call that arranged it.

Count attempts per delivered order. If a fifth of your orders need two trips, your real delivery cost is a fifth higher than the invoice suggests — invisible, because the extra arrives as a slightly larger monthly total rather than a line item.

Which zones does a courier actually price?

Couriers price by zone, and zones are not wilayas. A company may treat the city, the surrounding communes and the far south as three products, with different cut-off times and a different rule for home delivery versus a pickup point.

The mistake is to average: an average zone price describes a customer who does not exist, and your margin lives in the mix. Take last month's delivered orders, group them by the zone the courier billed, and see where the volume sits.

Why does a light parcel sometimes cost more than a heavy one?

Because couriers bill on the greater of actual weight and volumetric weight — the space the parcel occupies, converted with the courier's own divisor. A bulky item in a large box is charged for the air inside it.

That has a design consequence. A tighter box for a two-item order can lower the bill without changing the product. Measure the box you actually ship, not the one you imagine, and ask which divisor applies: it differs between companies, and it is the one they bill on.

What does the return leg add?

The return leg is usually charged, and it is charged on a parcel that produced no revenue. Then the product needs inspection: opened, damaged, missing an accessory, or fine and returnable to stock. Each outcome has a cost, and only one is free.

The operational fix is upstream — a confirmation call, a clearer address, a photograph before packing. The accounting fix is here: record the return against the order that caused it, so the product line or zone that generates returns becomes visible.

Where does packaging belong in the sum?

Packaging is a per-order cost, not a per-product cost, which is why it gets underestimated: box, tape, filler, label, the labour to pack, and the loss when a box is damaged and the order replaced.

Put it on the delivery line rather than the product cost, because that is where the decision lives. Choosing between a cheap envelope that damages and an expensive box that protects only makes sense when the damage rate sits on the same side of the ledger.

How does a free-shipping threshold become a pricing decision?

A free-shipping threshold is a discount you fund out of margin, and most are set from the average delivery price rather than the cost of the orders that qualify.

Two things go wrong. The threshold sits just above the average basket, so the orders that qualify are the heaviest, bulkiest, farthest ones — the most expensive to deliver. And nobody checks the margin after delivery, so a customer who adds one small item to cross the threshold can cost more than the item earns.

Set the threshold from the cost per delivered order of the orders that actually cross it, then check the margin on those orders. If the number does not work, raise the threshold or exclude the zones where it never works.

What do you need to fill in?

Variable Where it comes from Why it moves the price
Attempts per order Courier's delivery report Each attempt is billed
Refusal rate Your own order log Paid out and back
Zone mix Addresses, not averages Billed per zone
Billable weight Measured box, courier's divisor The larger of the two
Packaging per order Supplier invoice, plus labour Rises with damage
Return handling Inspection and restocking Only one outcome is free

Fill each cell with a period's real numbers, not with the price list. An empty cell is the measurement to add before the next price change.

In what order do you do this?

  1. Pick one closed month and count delivered-and-paid orders. That is the denominator.
  2. Add every courier invoice for the month, return charges included. That is the numerator.
  3. Break the total by zone, then by product line, until one shows a pattern.
  4. Add packaging, packing labour and the cost of damaged replacements.
  5. Divide by delivered orders, and compare with what you charge for delivery today.
  6. Repeat for the month with the highest refusal rate. That is the case to price against.
  7. Only then change a price, a threshold or a courier.

Where this goes wrong

  • The average is used as the truth. One blended delivery cost hides the zone that loses money on every order.
  • Returns are booked as a general expense. Nobody can tell which product or zone generates them, so nothing is fixed.
  • Volumetric weight is ignored at packaging design. The box is chosen for the product and the bill is paid for the air.
  • The free-shipping threshold is copied from a competitor. Their zone mix, box sizes and margins are not yours.
  • Delivery is priced once and never revisited. Courier terms and fuel change, and a price set two years ago is now a subsidy.

What this does not cover

It gives no delivery price, because a price is a negotiation with a specific courier over a specific volume. It does not cover the cost of holding stock while a returned item waits for inspection, which belongs to a calculation about working capital. And it assumes your orders are recorded well enough to count attempts and refusals — if they are not, build that record first, because no pricing model survives an unreliable count.

We build the delivery costing and the order records it reads from, and the pricing rules that follow.

Services in this article

Start a project

Have something to build?

One short brief is enough. You get a written scope and a fixed quote before anything starts.