Shipping margin

What the customer paid for shipping, minus what the label cost.

That difference is your shipping margin, and most tools can only see one half of it. PackOS is at both ends — PackOS Checkout returns the rate, PackOS Labels buys the label — so both numbers land on the same order. No manual export. No guesswork. Just the number.

Create a free Labels account

PackOS Labels is free, always · fund your wallet only when you are ready to buy a label

How PackOS Checkout picks the box before it quotes the rateLive at your Shopify checkout
Checkout: many items, one box, one rate

The problem

The math most merchants never do

One order · Two numbers · One difference

Quoted at checkout

What the customer paid you to ship it

PackOS Checkout

Paid for the label

What the carrier charged you to move it

PackOS Labels

Margin

The difference, recorded on every order

Both products, on the same record

Run either product on its own. Run both and the same order carries both numbers.

Now multiply that by every order you shipped this month. That is the number no report on your dashboard is showing you.

Why PackOS is different

Why this is invisible to everything else

Margin needs two figures per order: the checkout rate the customer paid and the label cost you paid the carrier. They live in different systems.

Label platforms (ShipStation, Shippo, Pirate Ship)These platforms handle label purchasing. They know what you paid the carrier, but they were not at checkout — so they have no record of what the customer paid. To calculate margin, they would need you to export and import checkout data by hand.
Shopify nativeShopify knows what the customer paid at checkout, but its built-in reporting does not connect that to the label cost. There is no built-in shipping margin report.
PackOSPackOS Checkout powers the checkout rate, so it records what the customer paid. PackOS Labels buys the label, so it records what you paid. Because both write to the same order, margin is calculated with no configuration and no export.

How it works end-to-end

  1. 01Customer checks out — PackOS Checkout quotes the rate from your exact box dimensions
  2. 02PackOS records what the customer was charged for shipping on that order
  3. 03You buy the label in PackOS Labels — the price you pay is recorded on the same order
  4. 04PackOS subtracts one from the other: that is the margin on the order

Both directions cost you

Overcharge and undercharge are the same blind spot

OverchargeOvercharge and the customer leaves. You never see the order, so the loss never appears in any report — it looks like traffic that did not convert.
UnderchargeUndercharge and the order goes through. The difference comes out of product margin, one shipment at a time, and nothing on your dashboard is labelled "shipping loss".

See your margin on every order

PackOS Labels records the cost of every label you buy, from the first one.

Create a free Labels account

Free, always · no subscription

What you see in PackOS

Your shipping P&L, updated as labels are bought

Per-order marginWhat each order made or lost on shipping, listed order by order.
Weekly trendTrack margin over time. Spot the week you started undercharging.
Carrier performanceWhich carrier gives you the best margin by average? Now you know.
Monthly shipping P&LNet margin this month, compared against last month — on one screen.

What you can do with the data

  • Optimize carrier selectionSee which carrier gives you the best margin per zone and service level. Switch routes that consistently lose money to a cheaper carrier.
  • Adjust checkout pricing tiersIdentify order types where your checkout rate undercharges and adjust your rate structure to recover margin — without overcharging on orders that are already profitable.
  • Flag loss-making routesGet visibility into which destinations, weight ranges, or product categories are costing you money on shipping. Focus your optimization where it matters most.
  • Track margin trends over timeSee your weekly and monthly shipping P&L. Know immediately when a carrier rate change or checkout adjustment impacts your bottom line.

FAQ

Common questions about shipping margin

What is shipping margin?
Shipping margin is the difference between what your customer paid for shipping at checkout and what you paid for the carrier label. Positive means shipping contributed to profit. Negative means you paid for part of the shipment out of your product margin.
How do I know whether I am overcharging or undercharging for shipping?
Compare the rate collected at checkout with the label you actually bought, order by order. A rate consistently above the label cost is an overcharge, which shows up as cart abandonment you never see. A rate below it is an undercharge, which shows up as product margin quietly paying for freight.
Why can I not track shipping margin with ShipStation, Shippo or Pirate Ship?
Those platforms handle the label. They know what you paid the carrier, but they were not present at checkout, so they have no record of what your customer paid. Calculating margin would mean exporting checkout data and matching it by hand for every order.
How does PackOS measure it?
PackOS Checkout returns the rate at checkout and records it. PackOS Labels buys the label and records that. Because both write to the same order, the difference is calculated for you. Run either product alone and you get one of the two numbers; run both and you get the margin.
How quickly does margin data appear?
As soon as a label is purchased. There is no batch processing and no overnight sync — the order shows its margin on your dashboard immediately.
What can I do with shipping margin data?
Find the destinations, weight bands, carriers or product categories where shipping loses money, then change one thing: the checkout rate structure, the carrier on that route, or the box. Watch the same number afterwards to see whether it worked.

Put the number on a screen

PackOS Labels is free, always — start there and every label you buy is recorded with its cost. Add PackOS Checkout and the order carries both numbers.