Before adding a second warehouse, measure your split-shipment cost
A lower carrier cost per parcel can hide a higher cost per customer order. Use this practical inventory and routing check, with a worked example, before adding a second warehouse.
A second warehouse can put inventory closer to customers. It can also turn one customer order into two carrier bills.
The deciding factor is often whether the products people buy together will be available together. Moving your bestselling SKU closer to a customer helps less if the accessory in the same cart still ships from across the country.
Before committing inventory to another location, replay real orders through the proposed setup. Measure the cost of delivering each complete order, including the extra parcels your inventory placement creates.
Start with orders, then count parcels
Separate three numbers in your shipping report:
- Customer orders shipped.
- Orders that required more than one parcel.
- Total outbound parcels, including additional parcels for those orders.
Calculate parcels per order by dividing total parcels by orders shipped. Track replacement shipments separately so damage or picking errors don't look like a warehouse allocation problem.
A split order is not always avoidable. Oversized products, incompatible packing requirements or a clearly disclosed preorder can justify separate parcels. Give each split a reason code. Your target is the avoidable cost created by where inventory sits or how orders get assigned.
Also distinguish a system fulfillment record from a physical parcel. One fulfillment can contain several cartons. Use actual labels or shipment records when counting packages.
Find the products that travel together
Export 60–90 days of order lines with order number, SKU, quantity and destination. Include a promotion period if promotions materially change your carts.
Group the lines by order. Identify the most common SKU pairs and combinations, then calculate how often each SKU appears in a mixed cart. A high-volume item sold mostly alone needs a different stocking plan from an item regularly bought with four accessories.
For example, suppose a hypothetical store often sells a bottle and a replacement lid together. Stocking bottles in both warehouses while keeping all lids in one creates a predictable split for customers near the new warehouse. Your choices include duplicating lid inventory, keeping that combination at one location, or accepting the split when its service benefit justifies the cost.
Measure the percentage of historical orders each proposed location could fulfill completely. Check required quantities as well as SKU presence: having one unit available does not cover a cart containing three.
Replay inventory availability and routing
A spreadsheet that assumes every SKU is always available at both sites will overstate the benefit. Start with realistic opening stock and consume inventory as you replay orders. Add replenishments on plausible receipt dates.
Compare a normal week with a promotion and a delayed replenishment. Watch what happens when a popular accessory runs out at one location.
Shopify's order routing documentation describes rules applied in sequence, including a rule to minimize split fulfillments. Review the sequence used by your store and any fulfillment app before changing it. A routing rule cannot make unavailable stock appear.
Have your warehouse or integration provider demonstrate how it handles a complete cart available farther away versus a partial cart available nearby. Check actual services and promised delivery dates alongside the shipping cost. Distance alone is not a carrier quote.
A worked example: lower parcel cost, higher order cost
The following figures are hypothetical Canadian dollars, excluding tax. Both scenarios ship the same 2,000 customer orders. Every split order in the two-warehouse scenario creates exactly one extra parcel.
| Monthly measure | One warehouse | Two warehouses |
|---|---|---|
| Customer orders | 2,000 | 2,000 |
| Split orders | 0 | 300 |
| Total parcels | 2,000 | 2,300 |
| Average carrier cost per parcel | $10.00 | $8.75 |
| Handling and packaging per parcel | $3.00 | $3.00 |
| Total parcel-related cost | $26,000 | $27,025 |
| Additional network operating cost | $0 | $1,000 |
| Total modelled cost | $26,000 | $28,025 |
| Modelled cost per customer order | $13.00 | $14.01 |
The modelled cost per parcel falls from $13.00 to $11.75, but the business spends $2,025 more that month. The extra parcels consume the shipping savings.
For this example, the $1,000 covers incremental receiving, storage and stock-transfer expense. Existing costs common to both options are excluded. Startup costs, inventory financing and any changes in sales or returns also need separate consideration before making an investment decision.
The assumed $3.00 applies to every parcel for simple comparison. Replace it with your actual billing structure, including charges assessed per order, item or shipment. Use a weighted carrier cost based on the proposed parcel mix.
Calculate how many extra parcels you can afford
With no splits, the two-warehouse scenario would cost:
2,000 × $11.75 + $1,000 = $24,500.
That leaves $1,500 below the $26,000 baseline. Dividing $1,500 by $11.75 gives room for roughly 127 additional parcels before the cost advantage disappears. At 128 extra parcels, this model is already $4 more expensive.
Because each split creates one extra parcel here, that is about 6.4% of orders. It is not a universal target. If some orders create three parcels, count the additional parcels directly.
At 100 extra parcels, the model saves $325 monthly. At 300, it loses $2,025. That range gives the inventory team a concrete problem to solve before launch.
Test the customer experience before moving stock
Shopify's split-shipping guidance explains that checkout behaviour depends on the shipping setup and has compatibility limitations. Stores using shipping options by market also have different behaviour. Don't assume a second warehouse automatically displays or charges for a second shipment as intended.
Run test carts through your actual checkout and fulfillment integration:
- Can a typical mixed cart ship complete from either location?
- Does a low-stock cart show the intended charge and delivery promise?
- Do accelerated checkout and standard checkout behave as expected?
- Does each parcel generate the correct tracking notification?
- Can support explain which items are still coming?
Start with a limited group of products that frequently sell together. Compare actual parcels per order and complete-order delivery performance with your model before expanding the assortment. Keep the inventory allocation only if the operating results support it.