Resources · Operations · 9 min read

The $2.75/order quote that became $147,800: hidden 3PL fees.

3PL sales reps pitch a clean per-order rate. The invoice adds receiving, storage, packaging, surcharges, and account fees, usually invisible until quarter-end.

What gets quoted, what gets invoiced.

Most 3PL sales conversations start with a headline pick-and-pack rate, say, $2.75 per order. That number is true. It’s also one line of a 12-line invoice you’ll see at month-end.

The taxonomy of 3PL fees, roughly in order of “most surprising to first-time customers”:

  1. Pick and pack, the headline rate. $1.50–$5/order depending on category.
  2. Receiving, per pallet, per case, or per hour to receive inbound inventory.
  3. Storage, per pallet position, per bin location, or per cubic foot per month.
  4. Packaging materials, boxes, dunnage, tape billed separately at retail markup.
  5. Special handling, kitting, gift wrap, custom inserts.
  6. Returns processing, usually 1.5–2× the outbound pick rate.
  7. Account management, sometimes flat monthly, sometimes per-order surcharge.
  8. Cycle counts, quarterly or monthly inventory accuracy checks.
  9. Long-term storage surcharges, penalty rates for SKUs aging past 180 days.
  10. Peak-season surcharges, typically Oct-Jan, often 15-30% on every line.
  11. Address corrections, per-shipment fee when carrier requires address verification.
  12. Onboarding fees, one-time, but often $5–25K for non-trivial SKU counts.

The $147,800 story.

An apparel brand we worked with signed a 3PL contract with a quoted $2.75/order pick-pack rate. They modelled their annual cost at $66,000 for 24,000 orders. Twelve months later, total 3PL invoices were $147,800. Where did the $81,800 come from?

Line itemAnnualSource of surprise
Pick and pack (quoted)$66,000
Receiving fees$8,400$70/pallet × 120 inbound
Storage$14,200Bin-location billing, not pallet
Packaging materials$11,600$0.48/box retail markup
Returns processing$9,800$1.80/return on 5,400 returns
Account management$6,000$500/mo not disclosed at sale
Peak surcharges (Q4)$18,40022% on every line, Oct-Jan
Address corrections$3,400$1.20/shipment × bad-address rate
Long-term storage$10,000SKUs aging out of “active” tier

The headline rate was honest. The economic model around it was the part nobody walked through line-by-line.

What to negotiate at signing.

Three asks that change the economics:

  1. All-in rate per order, ask the 3PL to quote a single rate that covers pick, pack, packaging, and standard returns processing. They’ll quote a higher per-order number ($3.80–5.50 vs. $2.75), but it eliminates 5–6 of the surprise line items.
  2. Cap on peak surcharges, most 3PLs negotiate a flat 15% peak cap if you push. Default is 22-30%.
  3. Storage tier transparency, get the bin-cost tiers in writing. “Active inventory” vs. “long-term storage” thresholds vary wildly.

What to track monthly.

Once you’re live with a 3PL, the metric that catches drift is true cost-per-order, your full monthly 3PL invoice divided by orders shipped. This number should be stable within ±3% month-to-month. Bigger swings mean either an unusual mix shift or a fee escalation that warrants a conversation.

Our cost-per-order playbook walks through how to construct this metric across all your operational platforms, not just the 3PL invoice.

How Halia surfaces fee drift.

When you connect ShipBob, ShipStation, or a custom 3PL webhook, it computes true cost-per-order continuously by reconciling shipping cost, storage allocation, and per-line invoice items against order volume. When the trend slips outside the normal range, typically because a fee was reclassified or a tier was hit, you get a finding before quarter-end accounting catches it.

Common questions

3PL fees questions, answered.

What's a typical "all-in" 3PL rate per order?

For apparel + accessories with simple pack-out, expect $3.80-5.50/order all-in (including packaging materials and standard returns). For high-handling categories like supplements or electronics, $5-9/order is typical. The exact number depends on volume, 3PLs scale rates with monthly order volume tiers.

How much should I budget for receiving fees?

Most 3PLs charge $35-80 per pallet received, or $0.40-1.20 per case for non-palletised inbound. Annual budget: typically 8-15% of pick-pack costs for a brand with normal inventory turn.

Are peak-season surcharges negotiable?

Yes. Default is 22-30% on every line for Q4. Negotiated rates run 12-18% with a volume commitment. The 3PL’s leverage drops sharply if you commit to a minimum monthly volume through Q4, that’s their constrained-capacity problem to solve.

Should I use multiple 3PLs?

For brands shipping over $5M/year, multi-3PL is increasingly common, usually one east, one west to compress transit zones. The setup overhead is real (separate APIs, separate accounting) but the rate leverage and SLA resilience usually justify it above $5M.

How do I model true cost-per-order before signing a 3PL?

Build a spreadsheet with the 12 fee categories above, populate each with the 3PL’s quoted numbers (request them line by line), then sanity-check the total against your projected order volume × your gross margin. If the total exceeds ~9-14% of net revenue, the deal economics warrant a second look.

Related reading

This is one of seven places ecommerce margin leaks. See the full map in the hidden costs of ecommerce and the step-by-step 3PL billing audit guide.

See these patterns on your store.

Connect in 5 minutes. First findings the same day. Free under $50K MRR.

Start free