What goes into profit per order
Start with what the customer paid, then take off everything that order cost you to fulfil:
- Revenue, excluding VAT or sales tax. Tax isn’t yours; you pass it on.
- Refunds. A refunded item earned you nothing, even if the order total still shows it.
- Product cost. What you paid for the items in the order.
- Shipping. What the carrier charged you, not what the customer paid for shipping.
- Payment fee. The percentage and fixed fee your payment provider kept.
- Packaging and other per-order costs. Boxes, tape, inserts, pick-and-pack fees.
Profit per order = revenue − refunds − product cost − shipping − payment fee − other costsEverything here happens per order. Ads and running costs come later.
A worked example
Here is one order from a sample ceramics shop: a pour-over set and a mug, $123.00 excluding tax, with nothing refunded.
| Line | Amount |
|---|---|
| Revenue, excluding tax | $123.00 |
| Product costs ($38.20 + $9.80) | −$48.00 |
| Shipping, carrier cost | −$9.40 |
| Payment fee, 2.9% + $0.30 | −$3.87 |
| Packaging and other | −$1.42 |
| What the order leaves | $60.31 |
So a $123 order leaves $60.31. That’s 49 cents on the dollar before any advertising or running costs. That’s a different picture from “$123 in”.
Where to find each number
Revenue and tax
Open the order in WooCommerce. The order total includes tax and shipping; the tax lines show how much of it isn’t yours. Refunds show under the totals once you’ve issued them.
Product cost
WooCommerce has a built-in cost field for products in recent versions, and cost-of-goods plugins store the cost on each order line. If you don’t record costs anywhere, keep a simple list of unit costs per product and supplier, and update it when your prices change.
Payment fees
Stripe, WooPayments and PayPal Payments record their fee on the order in many setups. If yours doesn’t, use the rate from your provider’s pricing page for your country and card mix.
Shipping
WooCommerce knows what the customer paid for shipping, not what your carrier charged. Use your carrier invoices to set an average cost per zone and method, and check it every few months.
Mistakes that flatter the number
- Counting VAT as revenue. With 25% VAT, your revenue looks a quarter bigger than it is, and every cost looks smaller next to it.
- Forgetting refunds. Count them on the day you refund, so a good day doesn’t stay good after returns.
- Treating a missing cost as zero. A product with no cost entered looks like pure profit. Leave it out, or flag it, until you know the cost.
- Using shipping charged instead of shipping paid. Free-shipping thresholds make this gap bigger on your largest orders.
Profit per order isn’t your profit
Ads and running costs like rent, apps and salaries don’t belong to one order; they’re spent per day or per month. To see what you keep, add up what your orders leave for a day. Then take off that day’s ad spend and its share of running costs. If one order leaves $60 and you spent $40 in ads to get it, the order kept $20 of that, before rent.
To see how much ad spend your orders can carry, try the break-even ROAS calculator.