Independent ecommerce publication — not affiliated with any government body.
EcomHub Ecommerce Intelligence
Subscribe to the newsletter
Operations GUIDE

How to Set Up Shipping That Doesn’t Lose Money

Shipping is where quiet losses hide. This is a practical framework for pricing delivery, choosing carriers, and setting policies that protect margin without scaring off buyers.

RO Rachel Okafor
Operations Editor
Jun 26, 2026 · 10 min read
How to Set Up Shipping That Doesn't Lose Money

Nobody decides to lose money on shipping. It just happens.

Picture a store owner who set a shipping rate two years ago and never touched it again. Back then it was fine. Then the boxes got a little bigger, one supplier switched to heavier packaging, a carrier nudged rates up over the winter, and the average order started carrying one more item than it used to. No single change was worth reacting to. And that is exactly the problem.

One quiet morning, the math has flipped. The shipping line is paying out more than it takes in, and it has been for months. The loss never announced itself because it was smeared across thousands of tiny orders. Sixty cents here, a dollar-forty there. You do not feel a leak that small until you add up the year.

The fix is not a better rate. It is a change in how you think about the whole thing.

Stop treating shipping as one number you charge. Treat it as three parts that have to stay in agreement: what an order actually costs you to send, how you present that cost to the buyer, and the policies that catch everything that goes wrong after the label prints. Keep those three honest with each other and shipping stops bleeding. Let one drift out of line and you are back to the quiet morning.

Find your landed cost before you touch a price

Here is the mistake almost everyone makes: they look at the postage and think that is the cost. It is not even close.

The number that matters is your landed cost — the real, all-in figure to get one order out your door. Postage is only one line in it. You have to count the rest:

  • Packaging. The box or mailer, the tape, the void fill, the tissue and the thank-you card if you use one. Pennies each. Real money over a quarter.
  • Labor. The minutes it takes someone to pick the item, pack it, print the label, and hand it to the driver. Your own hours count here too, even if you are not writing yourself a paycheck for them.
  • Carrier rate. The base cost to actually move the parcel.
  • Surcharges. The fees the carrier stacks on top — residential delivery, out-of-the-way addresses, fuel, anything oversized. More on these below, because they cause real damage.
  • Returns. A slice of every batch comes back. The trip home and the cost of reboxing and restocking it is part of shipping whether you like it or not, so bake an average of it into the number.

Add those up and you have the figure worth defending. Everything after this — what you charge, which pricing model you pick, where you set a free-shipping line — is built on top of it. Get it wrong and you are guessing, and you will keep guessing wrong in the same direction every single order.

A quick gut check: if the only number you could recite off the top of your head is the postage, you do not know your landed cost yet. Most sellers are surprised the first time they add labor and returns into the total, because those two are the ones that never appear on a shipping label but quietly move the real cost up by more than they expected.

One caveat. If you sell more than one kind of thing, a single landed cost is a fiction. A phone case and a cast-iron pan do not ship for anything like the same money. Run the number for a handful of order types that actually represent what leaves your warehouse, not one blended average that flatters the light stuff and hides the heavy stuff.

The box size trap: dimensional weight

This one deserves its own section because it catches so many sellers completely off guard.

Carriers do not always bill by weight. For anything light and bulky, they often bill by the room your box takes up on the truck — a figure they work out from its dimensions. So a big carton holding something feathery gets charged as if it were heavy. That is dimensional weight, and once you have seen it on an invoice you never forget it.

Take a pillow. It weighs almost nothing. Ship it in a box twice the size it needs and the carrier bills you for the air, not the pillow. Now run that across every order that ships in an oversized box. The waste is invisible on any single parcel and brutal in aggregate.

Which is why right-sizing your packaging is one of the biggest wins available to you, and one of the cheapest to act on. Cut the empty space. Stock boxes that match what you actually sell instead of three generic sizes that mostly do not fit. Consolidate items into one parcel when it makes sense. Every inch you shave off the box can pull the billed weight down, and unlike renegotiating a carrier contract, it is a change you can make this week with a smaller stack of boxes and a tape gun.

The flip side is worth naming too. A heavy, compact product plays by the opposite rules — there the weight is the whole story, and a tighter box saves you nothing because you are paying for the pounds, not the space. Knowing which of your products are light-and-bulky and which are heavy-and-dense tells you where packaging effort actually pays off and where it is wasted motion.

Surcharges make it worse, and they work differently than people assume. They do not replace the base rate — they pile on top of it. A parcel can look cheap by its headline number and still cost you real money once residential, fuel, and oversize fees land. So when you compare carriers or model your costs, always reason about the rate after the surcharges you are likely to hit, never the sticker rate. The sticker rate is a fantasy.

Pick how the customer sees shipping

Once you know what an order costs, you decide how to show that cost at checkout. There is no winner here. There is only the model that fits your products, your margins, and the people buying from you. Each one buys you something and costs you something else.

Flat-rate: one price, take it or leave it

You charge a single fixed amount no matter what is in the cart. Dead simple for the customer, dead simple to display. The catch is that one rate cannot fit every order. Set it low and the big heavy orders eat your margin. Set it high and the small orders feel gouged and walk. Flat-rate earns its keep when your catalog is tight — everything roughly the same size and weight, so one number is close enough for all of it.

Calculated rates: charge what it actually costs

You pull the live carrier rate at checkout from the weight, dimensions, and destination. What you charge tracks what you pay, which protects your margin even across a wildly mixed catalog. The trade-off is that the buyer now watches the shipping number move, and a variable cost at checkout makes some of them flinch. It also lives or dies on your product weights and dimensions being right. Sloppy data, wrong rate.

Free shipping: powerful, and not actually free

You advertise zero shipping. It is the strongest tool there is for cutting abandoned carts, because a surprise shipping charge at the last step is one of the top reasons people bail. But read this part twice: free shipping is a pricing decision, not a gift. The cost does not vanish. It gets folded into your product prices, covered by a minimum-order threshold, or swallowed as margin you have chosen to spend on purpose. Free shipping only works when you have decided, on purpose, where that cost is going to live. If you have not decided, it is living in your profit.

Threshold free shipping: free, but earn it

Free shipping over a certain spend, paid shipping under it. This is the compromise a lot of stores land on, and for good reason — it keeps the pull of “free” while protecting the orders too small to carry the cost, and it quietly pushes people to add one more item to clear the bar. The whole thing hinges on where you set the line. Pull the number from your real landed cost: high enough that a qualifying order actually covers the shipping it triggers, low enough that a normal customer looks at it and thinks, yeah, I can get there.

Watch both failure modes, because they are opposites. Set the threshold too low and you end up eating shipping on orders that were never big enough to pay for it — you have just given the cost away with extra steps. Set it too high, well above what people typically spend, and nobody bothers reaching for it; the offer becomes wallpaper and does nothing. The threshold that works usually sits a comfortable notch above your average order, close enough that a shopper already holding one item will toss in a second to cross it. That second item is the whole point — it is what makes the free shipping pay for itself instead of costing you.

If you want it side by side:

Model Best when Main risk
Flat-rate Products are similar in size and weight Misfits the biggest and smallest orders
Calculated rates Your catalog varies widely Visible, moving cost at checkout
Free shipping Your margins can absorb it Silent margin erosion if unfunded
Threshold free shipping You want to lift order value Wrong threshold kills the benefit

Write policies that stop the bleeding after the label prints

Outbound pricing is half the system. The other half is everything that goes sideways once the parcel is in the wild — returns, damage, deliveries that never show up. Those are shipping costs too. And a vague policy turns each one into a recurring loss and an argument.

A few decisions keep them contained.

  • Returns. Say plainly who pays for the return trip and under what conditions. Write it down where the customer sees it before they buy, not after. A fuzzy return policy invites a fight every time and burns your staff’s hours refereeing it; a clear one sets the expectation up front and settles the question before it becomes one.
  • Damage and loss. Have a set routine for parcels that arrive crushed or never arrive at all. Handling it the same way every time protects the customer relationship and — just as useful — gives you a real record of how often it happens and why, which is the only way you ever fix the cause.
  • Delivery expectations. Promise timeframes you can actually hit, not the optimistic ones that look better on the product page. Every missed promise turns into a support ticket and, often, a refund request. Those never show up on a shipping label, but they land on your operation just the same.

Treat these as part of shipping, not as customer-service cleanup you deal with later. That is the difference between a system and a pile of exceptions.

Keep the three parts in step, or watch the gap reopen

The last step is the one nearly everyone skips: maintenance.

Remember how the losses started — drift. Small changes nobody reacted to, stacking up. So the fix cannot be a one-time setup, because the thing you are fighting never stops moving. It has to be a habit.

On a regular cadence — monthly, quarterly, whatever fits how fast your store changes — do three things. Recalculate your landed cost with the packaging and carrier rates you are actually paying today, not the ones from launch. Check that your pricing model and any free-shipping threshold still line up with that fresh number. And look at how often returns and damage are really happening, not how often you assume they are.

Hold the three parts in your head together: what shipping costs you, what you charge for it, and what you promise. When one of them moves, go check the other two. The store that sits down and does this on a schedule keeps delivery profitable as it grows. The store that sets it once and forgets it is not safe. It is just waiting for the gap to open again.

Frequently asked questions

Is offering free shipping a good idea?

It can be, but only when you decide in advance where the cost lives. Free shipping reduces checkout abandonment because unexpected shipping fees drive buyers away, yet the cost does not disappear; it has to be built into product prices, funded by a minimum-order threshold, or accepted knowingly as a margin cost. Unfunded free shipping quietly erodes profit.

What is dimensional weight and why does it matter?

Dimensional weight is when a carrier charges based on the space a parcel occupies rather than how much it weighs, which applies especially to light but bulky items. It matters because an oversized or loosely packed box can be billed as if it were far heavier, so right-sizing your packaging is one of the most effective ways to control shipping cost.

How do I know if I'm losing money on shipping?

Compare what you collect for shipping against your true landed cost per order, which includes packaging, labor, the carrier rate, surcharges, and a share of returns. If that landed cost has crept above what you charge, you are losing money, and because the loss spreads across many small orders it is easy to miss without a deliberate review.

Should returns be part of my shipping strategy?

Yes. Returns carry real cost in the return trip and reprocessing, so they belong in both your average landed cost and your policies. A clear policy on who pays for returns and how damage or lost parcels are handled prevents recurring, unbudgeted losses and reduces disputes.

ecommerce-operationsfulfillmentlogisticsmarginshipping
RO

Rachel Okafor

Operations Editor · Fulfillment, payments & the tools desk

Rachel edits our operations desk — fulfillment and logistics, inventory, payment processing, customer service and returns — and also oversees our hands-on tool reviews, holding them to a consistent testing standard.

Related guides

Hand-picked reads on the same topic.

More operations
The Ecom Hub Brief

Get this kind of analysis weekly.

One email on what changed in ecommerce and the tools worth your budget. Free.