How to Calculate Shipping Cost per Order: The Complete Formula
Your true shipping cost per order equals: Postage + Packaging Materials + Labor + Supplies + Returns Cost + Damage/Claims + Overhead. For most e-commerce stores, the actual per-order cost is 40-80% higher than postage alone. A $10 shipping label often represents $14-18 in true cost.

"What does shipping actually cost me per order?" Most merchants can't answer this question accurately. They know what they paid for postage, but that's not the full cost. The true cost includes packaging, labor, supplies, returns, damage, and overhead—and ignoring these leads to pricing decisions that erode margins.
This guide provides the complete formula for calculating your true shipping cost per order, with worked examples and a framework for ongoing measurement.
The Complete Formula
Basic Formula
` True Shipping Cost = Postage + Packaging + Labor + Supplies + Returns + Damage + Overhead `
Expanded Formula
` True Shipping Cost = (Postage × (1 + Fuel Surcharge %)) + Box Cost + Void Fill Cost + Tape Cost + (Packing Time × Labor Rate) + Label Cost + Printer Consumables + (Return Rate × Return Shipping Cost) + (Damage Rate × Claim/Replacement Cost) + Allocated Overhead `
Per-Order Breakdown
| Component | Typical Range | % of Total |
|---|---|---|
| Postage/carrier fee | $5-25 | 50-65% |
| Packaging materials | $0.50-3.00 | 8-15% |
| Labor (packing) | $0.50-2.00 | 5-12% |
| Supplies | $0.10-0.30 | 1-3% |
| Returns allocation | $0.50-3.00 | 5-15% |
| Damage allocation | $0.10-0.50 | 1-5% |
| Overhead allocation | $0.20-1.00 | 2-8% |
| **Total** | **$7-35** | **100%** |
Component 1: Postage/Carrier Fees
What's Included
- Base shipping rate
- Fuel surcharges
- Residential delivery surcharges
- Signature fees
- Additional handling fees
- Dimensional weight charges
Calculation
` Postage Cost = Base Rate × (1 + Fuel Surcharge %) + Surcharges `
Example
Shipment: 12×10×8 box, 3 lbs actual, Zone 5, residential, UPS Ground
| Component | Cost |
|---|---|
| Base rate | $13.50 |
| Fuel surcharge (12%) | $1.62 |
| Residential surcharge | $5.85 |
| **Total postage** | **$20.97** |
DIM Weight Impact
If the DIM weight exceeds actual weight, you pay for DIM:
` DIM Weight = (12 × 10 × 8) ÷ 139 = 6.9 lbs Actual Weight = 3 lbs Billable Weight = 6.9 lbs (DIM wins) `
The postage jumps from ~$14 (at 3 lbs) to ~$21 (at 6.9 lbs) due to DIM weight.
Component 2: Packaging Materials
What's Included
- Boxes (outer shipping box)
- Poly mailers
- Void fill (paper, air pillows, foam)
- Inner packaging (product protection)
- Tape
- Custom/branded packaging
Calculation
` Packaging Cost = Box + Void Fill + Tape + Inner Packaging `
Cost Reference
| Item | Unit Cost Range |
|---|---|
| Small box (8×6×4) | $0.35-0.60 |
| Medium box (12×10×8) | $0.60-1.00 |
| Large box (16×14×12) | $1.00-1.80 |
| Poly mailer | $0.08-0.25 |
| Kraft paper (per order) | $0.08-0.15 |
| Air pillows (per order) | $0.10-0.25 |
| Bubble wrap (per foot) | $0.15-0.30 |
| Tape (per box) | $0.03-0.08 |
| Branded tissue | $0.10-0.30 |
Example
Standard order packaging:
| Item | Cost |
|---|---|
| Medium box | $0.75 |
| Kraft paper void fill | $0.12 |
| Packing tape | $0.05 |
| **Total packaging** | **$0.92** |
Volume Discounts
| Order Quantity | Typical Discount |
|---|---|
| 100-500 boxes | List price |
| 500-1,000 | 5-10% off |
| 1,000-5,000 | 10-20% off |
| 5,000+ | 20-35% off |
Component 3: Labor
What's Included
- Picking time (retrieving products)
- Packing time (boxing, void fill)
- Label printing/application
- Quality check
- Staging for pickup
Calculation
` Labor Cost = Total Packing Time × Hourly Rate `
Time Benchmarks
| Task | Typical Time |
|---|---|
| Retrieve order/pick | 1-3 minutes |
| Select packaging | 0.5-1 minute |
| Pack product | 1-3 minutes |
| Apply void fill | 0.5-2 minutes |
| Print and apply label | 0.5-1 minute |
| Quality check | 0.5-1 minute |
| Stage for pickup | 0.5-1 minute |
| **Total** | **4-12 minutes** |
Example
Average order:
| Factor | Value |
|---|---|
| Packing time | 6 minutes |
| Hourly wage + benefits | $18/hour |
| Labor cost per order | 6/60 × $18 = **$1.80** |
Efficiency Varies
| Scenario | Time per Order | Labor Cost |
|---|---|---|
| Single item, standard box | 4 minutes | $1.20 |
| Multi-item, complex pack | 10 minutes | $3.00 |
| Fragile item, special packaging | 12 minutes | $3.60 |
| Subscription box (repeating) | 3 minutes | $0.90 |
Component 4: Supplies and Consumables
What's Included
- Shipping labels
- Printer ink/toner
- Packing slip paper
- Thermal paper (if applicable)
- Tape gun/dispensers (amortized)
- Packing station supplies
Calculation
` Supplies Cost = Labels + Ink/Toner + Paper + Amortized Equipment `
Cost Reference
| Item | Per-Order Cost |
|---|---|
| Thermal label | $0.02-0.05 |
| Inkjet label | $0.05-0.15 |
| Ink/toner allocation | $0.02-0.08 |
| Packing slip | $0.01-0.03 |
| **Typical total** | **$0.05-0.25** |
Example
Thermal printer setup:
| Item | Cost |
|---|---|
| Thermal label | $0.03 |
| Thermal paper (packing slip) | $0.02 |
| Equipment amortization | $0.01 |
| **Total supplies** | **$0.06** |
Component 5: Returns
What's Included
- Return shipping cost (if prepaid)
- Return processing labor
- Restocking/inspection time
- Unsellable returns (loss)
- Return packaging
Calculation
` Returns Allocation = Return Rate × Average Return Cost `
Cost Components
| Factor | Typical Value |
|---|---|
| Return shipping (prepaid) | $8-15 |
| Return processing labor | $2-5 |
| Restocking time | $1-3 |
| Unsellable rate | 10-30% of returns |
Example
Apparel store:
| Factor | Value |
|---|---|
| Return rate | 25% |
| Return shipping | $10 |
| Processing | $3 |
| Unsellable (20% × $30 AOV) | $6 |
| Total return cost | $19 |
| **Per-order allocation** | 25% × $19 = **$4.75** |
Return Allocation by Category
| Category | Return Rate | Per-Order Allocation |
|---|---|---|
| Electronics | 10-15% | $1.50-3.00 |
| Apparel | 25-40% | $4.00-8.00 |
| Home goods | 10-20% | $1.50-4.00 |
| Beauty | 5-10% | $0.75-2.00 |
| Food/consumables | 2-5% | $0.30-1.00 |
Component 6: Damage and Claims
What's Included
- Damaged shipments (replacement cost)
- Carrier claims processing time
- Customer service time
- Expedited reshipping
- Customer goodwill credits
Calculation
` Damage Allocation = Damage Rate × Average Claim Cost `
Example
General merchandise:
| Factor | Value |
|---|---|
| Damage rate | 1.5% |
| Average product value | $40 |
| Replacement shipping | $12 |
| Customer service time | $5 |
| Average claim cost | $57 |
| **Per-order allocation** | 1.5% × $57 = **$0.86** |
Damage Rates by Product Type
| Product Type | Typical Damage Rate |
|---|---|
| Soft goods (apparel, linens) | 0.5-1% |
| Electronics (well-packed) | 1-2% |
| Home décor (glass, ceramics) | 3-5% |
| Furniture | 5-10% |
Component 7: Overhead Allocation
What's Included
- Warehouse/packing space rent
- Utilities
- Shipping software subscriptions
- Insurance
- Equipment depreciation
- Management time
Calculation
` Overhead per Order = Monthly Overhead Costs ÷ Monthly Orders `
Example
500 orders/month operation:
| Expense | Monthly Cost |
|---|---|
| Warehouse space (partial) | $300 |
| Utilities (partial) | $50 |
| ShipStation subscription | $60 |
| Insurance | $100 |
| Equipment depreciation | $30 |
| **Total overhead** | **$540** |
| **Per-order** | $540 ÷ 500 = **$1.08** |
Overhead Scales
| Monthly Volume | Overhead per Order |
|---|---|
| 100 orders | $3-5 |
| 500 orders | $0.80-1.50 |
| 2,000 orders | $0.30-0.60 |
| 10,000 orders | $0.15-0.30 |
Complete Example: Calculating True Cost
Scenario: Standard E-commerce Order
Order: 2 items, total weight 2.5 lbs, $60 order value, Zone 4, residential
| Component | Calculation | Cost |
|---|---|---|
| **Postage** | ||
| Base rate (UPS Ground) | $11.50 | |
| Fuel surcharge (12%) | $11.50 × 12% | $1.38 |
| Residential surcharge | $5.85 | |
| *Subtotal postage* | *$18.73* | |
| **Packaging** | ||
| Box (10×8×6) | $0.65 | |
| Void fill | $0.15 | |
| Tape | $0.05 | |
| *Subtotal packaging* | *$0.85* | |
| **Labor** | ||
| Packing time (7 min @ $18/hr) | 7/60 × $18 | $2.10 |
| *Subtotal labor* | *$2.10* | |
| **Supplies** | ||
| Label + consumables | $0.08 | |
| *Subtotal supplies* | *$0.08* | |
| **Returns allocation** | ||
| 15% return rate × $18 avg return cost | 15% × $18 | $2.70 |
| *Subtotal returns* | *$2.70* | |
| **Damage allocation** | ||
| 1% damage rate × $72 claim cost | 1% × $72 | $0.72 |
| *Subtotal damage* | *$0.72* | |
| **Overhead** | ||
| $600/mo ÷ 800 orders | $0.75 | |
| *Subtotal overhead* | *$0.75* | |
| **TOTAL TRUE COST** | **$25.93** |
Comparison to Postage Only
| Measure | Amount |
|---|---|
| Postage only | $18.73 |
| True shipping cost | $25.93 |
| Hidden cost | $7.20 (38% more) |
If you charge $18.73 for shipping (your postage cost), you're losing $7.20 per order on fulfillment.
Calculating for Your Business
Step 1: Gather Data
Postage data:
- Pull 3 months of carrier invoices
- Calculate average postage per order
- Note average surcharges
Packaging data:
- List all packaging materials and costs
- Calculate average usage per order
- Include all suppliers
Labor data:
- Time several packing sessions
- Calculate average time per order
- Apply fully-loaded labor rate
Returns data:
- Pull return rate from analytics
- Calculate average return cost
- Include unsellable losses
Damage data:
- Pull claims from carrier reports
- Calculate damage rate
- Include all claim-related costs
Overhead data:
- List all shipping-related expenses
- Allocate appropriately to shipping
Step 2: Calculate
Use this worksheet:
` POSTAGE Average carrier charge: $__ Average fuel surcharge: $_ Average other surcharges: $_ Postage subtotal: $__
PACKAGING Average box cost: $__ Average void fill: $_ Average tape: $_ Other packaging: $_ Packaging subtotal: $__
LABOR Average packing time: __ minutes Hourly rate (loaded): $_ Labor subtotal: (time/60) × rate = $__
SUPPLIES Labels: $__ Ink/consumables: $_ Other: $_ Supplies subtotal: $__
RETURNS Return rate: __% Average return cost: $_ Returns subtotal: rate × cost = $__
DAMAGE Damage rate: __% Average claim cost: $_ Damage subtotal: rate × cost = $__
OVERHEAD Monthly shipping overhead: $__ Monthly orders: _ Overhead subtotal: overhead/orders = $__
TOTAL TRUE COST PER ORDER: $___ `
Step 3: Validate
Cross-check: ` Total Monthly Shipping Spend = True Cost per Order × Orders
If your monthly shipping spend (all categories) roughly equals this calculation, your per-order cost is accurate. `
Using the Number
Pricing Decisions
Flat rate shipping: ` Flat Rate = True Cost per Order × (1 + Margin Buffer)
Example: $25.93 × 1.10 = $28.52 minimum flat rate `
Free shipping threshold: ` Minimum Threshold = True Cost ÷ Acceptable Shipping %
Example: If shipping should be ≤10% of order value: $25.93 ÷ 0.10 = $259.30 minimum order for free shipping `
Margin Analysis
If your average order value is $75: ` Shipping as % of AOV = $25.93 ÷ $75 = 34.6% `
If your product margin is 50%: ` Product profit: $75 × 50% = $37.50 True shipping cost: $25.93 Net margin: $37.50 - $25.93 = $11.57 (15.4% of AOV) `
Implication: Shipping takes 69% of your product margin.
Cost Reduction Priorities
Where to focus based on impact:
| Component | % of Cost | Reduction Opportunity |
|---|---|---|
| Postage | 50-65% | Carrier negotiation, box optimization |
| Returns | 5-15% | Product photos, sizing guides |
| Packaging | 8-15% | Volume discounts, right-sizing |
| Labor | 5-12% | Automation, workflow optimization |
| Damage | 1-5% | Better protection, box fit |
| Overhead | 2-8% | Scale (more volume) |
Benchmarking
Shipping cost as % of revenue by industry:
| Industry | Healthy Range |
|---|---|
| Apparel | 10-18% |
| Electronics | 6-12% |
| Home goods | 12-20% |
| Beauty | 8-15% |
| Food/grocery | 15-25% |
If your shipping % exceeds these ranges, investigate the components above benchmark.
Common Mistakes
Mistake 1: Using Postage as "Shipping Cost"
Problem: Postage is typically 50-65% of true cost.
Fix: Calculate all seven components.
Mistake 2: Ignoring Returns Allocation
Problem: High-return categories (apparel) can have returns allocation >$5/order.
Fix: Include return costs in per-order calculation, not as separate P&L line.
Mistake 3: Not Updating Calculations
Problem: Carrier rates change, material costs fluctuate.
Fix: Recalculate quarterly or after significant changes.
Mistake 4: Averaging Across Disparate Orders
Problem: A $5 USPS First Class shipment and a $40 UPS Ground shipment shouldn't use the same average.
Fix: Calculate by product category or order profile if they differ significantly.
Mistake 5: Forgetting DIM Weight
Problem: DIM weight can double postage costs.
Fix: Measure actual DIM weight impact; don't assume billable = actual weight.
Tracking Over Time
Monthly Dashboard
| Metric | Target | This Month | Trend |
|---|---|---|---|
| True cost per order | $_____ | $_____ | ↑↓→ |
| Postage per order | $_____ | $_____ | ↑↓→ |
| Packaging per order | $_____ | $_____ | ↑↓→ |
| Labor per order | $_____ | $_____ | ↑↓→ |
| Returns allocation | $_____ | $_____ | ↑↓→ |
| Shipping % of revenue | _____% | _____% | ↑↓→ |
Key Trends to Watch
- Rising postage: Carrier rate increases or zone creep
- Rising packaging: Box sizes increasing, material costs up
- Rising labor: Complexity increasing, efficiency dropping
- Rising returns: Product issues or sizing problems
- Rising damage: Packaging inadequate or carrier issues
Conclusion
Your true shipping cost per order is almost always higher than you think. Postage is just the visible part—packaging, labor, returns, damage, and overhead add 40-80% to the real number.
Key takeaways:
- Calculate all seven components, not just postage
- Returns allocation is often the biggest hidden cost
- Use the true cost for pricing decisions
- Track monthly to identify trends
- Focus reduction efforts on the largest components
Knowing your true shipping cost isn't about despair—it's about making informed decisions. Once you understand the number, you can optimize it.
Frequently Asked Questions
What is the formula for true shipping cost per order?
True Shipping Cost = Postage + Packaging Materials + Labor + Supplies + Returns Allocation + Damage Allocation + Overhead. Postage alone is typically only 50-65% of the true cost.
How much higher is true shipping cost than postage?
True shipping cost is typically 40-80% higher than postage alone. A $10 shipping label often represents $14-18 in true cost when you include packaging ($0.50-3), labor ($0.50-2), returns allocation ($0.50-3), and other factors.
How do I calculate labor cost per order?
Calculate average packing time (typically 4-12 minutes) and multiply by your loaded hourly labor rate (wages + benefits). Example: 6 minutes at $18/hour = $1.80 per order labor cost.
How do I calculate returns allocation per order?
Multiply your return rate by average return cost. Example: 15% return rate × $18 average return cost = $2.70 per order allocation. This spreads return costs across all orders.
What is a healthy shipping cost as percentage of revenue?
Varies by industry: Apparel 10-18%, Electronics 6-12%, Home goods 12-20%, Beauty 8-15%, Food/grocery 15-25%. If your percentage exceeds these ranges, investigate which cost components are above benchmark.
How do I use true shipping cost for pricing?
For flat rate: True Cost × (1 + margin buffer). For free shipping threshold: True Cost ÷ acceptable shipping percentage. Example: $26 true cost at 10% acceptable = $260 minimum order for free shipping.
Which shipping cost components have the most reduction opportunity?
Postage (50-65% of cost): carrier negotiation, box optimization. Returns (5-15%): product photos, sizing guides. Packaging (8-15%): volume discounts, right-sizing. Labor (5-12%): automation, workflow optimization.
How often should I recalculate shipping cost per order?
Recalculate quarterly or after significant changes (carrier rate increases, new packaging, process changes). Track monthly dashboard metrics to catch trends early.
Sources & References
- [1]E-commerce Shipping Cost Analysis - Shopify (2024)
- [2]Fulfillment Cost Benchmarks - ShipBob (2024)
- [3]Return Cost Analysis - National Retail Federation (2024)
Attribute Team
The Attribute team combines decades of e-commerce experience, having helped scale stores to $20M+ in revenue. We build the Shopify apps we wish we had as merchants.