Cost per order (CPO) looks like the simplest metric in ecommerce. Divide what you spent by the orders you got, and you have it.
The trouble starts the moment you ask which costs belong on top of the fraction. Marketers plug in ad spend and call it a day; operations teams pile in shipping and pick-pack labor and get a number three times larger. Both are "cost per order," and confusing them is how stores convince themselves they're profitable when they're not.
This guide gives you both versions, walks a full calculation with real numbers, and shows you the one comparison that matters — CPO against your per-order profit.
The cost per order formula
At its core, the formula is one line:
Cost per order = Total cost ÷ Number of orders
Everything hard about CPO is deciding what goes in "total cost." There are two standard scopes, and you should know which one you're quoting every time.
Marketing cost per order
The narrow version counts only advertising spend against the orders that spend produced:
Marketing CPO = Ad spend ÷ Orders from ads
Say you spend $10,000 on Meta and Google in a month and those campaigns drive 800 orders. Your marketing CPO is $10,000 ÷ 800 = $12.50. This is what most ad-platform dashboards mean when they show "cost per purchase," and it's identical to a purchase-based CPA (cost per acquisition).
Fully-loaded cost per order
The honest version counts every variable cost of getting one order out the door:
Fully-loaded CPO = (Ad spend + COGS + shipping + payment fees + pick/pack + packaging) ÷ Orders
This is the definition most fulfillment guides use, because it reflects what an order truly costs the business, not just what it cost to win the click. It's always bigger than marketing CPO, and it's the number you compare against your order value.
A worked example, end to end
Numbers make this concrete. Say you run a print-on-demand apparel store with a forty-dollar average order value, and you want the fully-loaded cost of one average order.
Here's the per-order cost stack for the example store:
| Cost line | Amount |
|---|---|
| Ad spend allocated per order | $12.50 |
| COGS (blank + print + base fulfillment) | $16.00 |
| Shipping (carrier) | $5.00 |
| Payment processing | $1.60 |
| Pick/pack labor | $1.40 |
| Packaging | $1.50 |
| Fully-loaded cost per order | $38.00 |
Add those lines: $12.50 + $16.00 + $5.00 + $1.60 + $1.40 + $1.50 = $38.00. That's your fully-loaded CPO on a $40 order.
Now the moment competitors skip. Take the fully-loaded CPO of thirty-eight dollars against the forty-dollar order value: $40 − $38 = $2.00 profit per order before any fixed costs like software or salaries. The marketing CPO of $12.50 looked like a comfortable win; the loaded CPO of $38 shows you're clearing pennies.
One caveat on packaging: keep it lean. ShipBob's fulfillment guidance is that packaging shouldn't cost more than about 5% of your average order value — on a $40 order that's roughly $2, and the $1.50 above sits just under that ceiling.
Cost per order vs CAC vs CPA
These three get used interchangeably and they are not the same. The difference is entirely in the denominator.
CPO counts orders. Every order goes on the bottom, whether it came from a brand-new buyer or a repeat customer.
CAC (customer acquisition cost) counts new customers only. A returning buyer places an order — feeding CPO — but does not create a new customer, so it never touches CAC. If your 800 ad-driven orders came from 800 first-time buyers, CPO and CAC match; the moment repeat buyers enter, they diverge.
CPA (cost per acquisition) counts whatever action you name — a purchase, a lead, a signup. A purchase-CPA is just marketing CPO under a different label. Our ecommerce metrics guide lays out how the whole family of acquisition-cost metrics fits together.
The practical rule: use marketing CPO or CPA to optimize a campaign, use CAC to judge acquisition economics, and use fully-loaded CPO to decide whether an order was worth fulfilling.
Reading CPO against profit, not revenue
A CPO number means nothing on its own. It only becomes useful when you set it beside two things: your order value and your margin.
The clean way to think about it is contribution margin — what's left after every variable cost. In the example above, the $2 gap between the $40 order and the $38 loaded CPO is your per-order contribution before fixed costs. That's the money available to cover rent, software, and salaries, and then become profit.
This is why break-even matters. Every variable cost except ad spend already sums to $25.50 per order in the table above, which leaves $14.50 of a $40 order to spend on marketing before the order breaks even. Any marketing CPO under $14.50 is profitable; the $12.50 example clears it with $2 to spare, and if that number drifts up your margin evaporates without a single "unprofitable" alert firing.
Two levers move CPO, and they map to two other metrics worth tracking. A higher conversion rate means the same ad spend yields more orders, dropping marketing CPO directly. A higher average order value doesn't lower CPO, but it widens the gap between CPO and revenue, which is what you actually care about.
How to reduce cost per order
Because CPO is a stack of variable costs, you lower it by attacking the biggest lines — not by staring at the total.
Cut the ad line by lifting conversion or offer. Marketing CPO equals cost-per-click divided by conversion rate, so a better landing page or offer lowers CPO without touching your ad budget. Rising ad frequency is an early warning that this line is about to get worse — check our ad frequency calculator to catch fatigue before your CPO climbs.
Squeeze COGS and fulfillment. For most stores COGS is the single largest line. Negotiating supplier pricing, consolidating shipments, and trimming packaging waste each shave the loaded CPO. Track the effect on your gross profit so you know the savings are reaching the bottom line.
Watch returns. Returns quietly inflate CPO by adding cost to orders that generate no revenue. A large share of holiday ecommerce purchases get sent back each year — tens of billions of dollars' worth, per Integrate.io — and every one carries the fulfillment cost twice.
Where a true per-order number comes from
The hard part of the fully-loaded formula isn't the math — it's that the numbers live in separate systems. Ad spend sits in Meta and Google, COGS with your supplier, fees in Stripe, orders in Shopify. Stitching them by hand in a spreadsheet is slow and error-prone.
PodVector connects Shopify, Meta Ads, Google Ads, Printify, and Printful, then computes the true per-order profit — CPO and everything under it — from your live data. It's not a dashboard you have to read; Victor, its AI operator, analyzes that data and proposes the Shopify-side moves worth making, acting only with your approval. Victor does not touch your ad account — he reads the ad data and leaves the platform writes to you.
If you'd rather see your loaded cost per order than rebuild it in a spreadsheet every month, start with PodVector.
FAQs
What is the cost per order formula?
Cost per order equals total cost divided by the number of orders in the same period. The formula is simple; the judgment is in which costs you include — ad spend only for a marketing CPO, or the full stack of COGS, shipping, fees, and packaging for a fully-loaded CPO.
Is cost per order the same as CAC?
No. CPO counts every order in its denominator, while CAC (customer acquisition cost) counts only new customers. They're equal only when every order comes from a first-time buyer; as soon as repeat customers place orders, CPO stays flat but those orders don't feed CAC, so the two numbers separate.
What costs should I include in cost per order?
For a marketing CPO, just advertising spend. For a fully-loaded CPO, add cost of goods sold, carrier shipping, payment processing fees, pick-and-pack labor, and packaging. Include returns handling too, since returned orders carry fulfillment cost without producing revenue.
What is a good cost per order?
There's no universal target — a good CPO is one comfortably below your per-order contribution margin. If your fully-loaded CPO leaves a healthy gap under your average order value, you're fine; if it's creeping toward your order value, the order is barely profitable regardless of what the number "looks" like.
How do I lower my cost per order?
Attack the largest lines. Lift conversion rate so the same ad spend buys more orders, negotiate COGS and shipping, trim packaging to a small share of order value, and reduce returns. Each directly shrinks a component of the CPO stack rather than the total in the abstract.