Skip to content
  1. Home
  2. Guides
  3. Profit per order

Guide

How to calculate profit per order in WooCommerce

WooCommerce tells you what an order sold for. It doesn’t tell you what the order left you. Here’s how to work that out, with a real example and the mistakes that make the number look better than it is.

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.

Order #4816, sample data
LineAmount
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.

Keep reading

See what every order leaves you.

7-day free trial, no card needed. Then $49 a year, plus VAT where it applies. After the trial you keep the free version.