The Operational Guides07

Adding a Second Stock Location

When to do it, and what breaks when you do

9 min read 1770 words Updated

A second location is usually the first genuinely irreversible operational decision a growing store makes. Apps can be uninstalled. A convention can be revised. Stock sitting in two buildings cannot be undone without moving it.

It is also the point at which several things that were previously simple stop being simple, and almost none of the complexity is visible during the decision. This guide covers what actually changes, what Shopify handles for you, what it does not, and the honest test for whether you need one at all.

The reasons that hold, and the reasons that do not

Sound reasons:

  • Shipping cost or time to a geographic cluster. A substantial share of your orders go somewhere your current location serves slowly or expensively, and a second point would cross a zone boundary.
  • Capacity. You have physically run out of room, and the alternative is a bigger single space.
  • Retail. You have opened a shop, which is a location whether you treat it as one or not.
  • A 3PL. You are outsourcing fulfilment, which is a location with someone else's staff.

Reasons that do not hold:

  • It feels like the next step. Two locations is not a growth milestone. It is an operating cost and a coordination burden.
  • Risk spreading. Splitting stock across two sites does not halve your risk; it doubles the number of places a count can be wrong.
  • A supplier offered to hold stock. Consignment arrangements have merits. They are not a reason to fragment your inventory record.

The test that matters: would a second location reduce cost or delivery time for enough orders to cover its fixed cost, its coordination overhead, and the rebalancing problem described below? If you cannot answer with a number, the answer is not yet.

What does Shopify give you across locations?

Location limits are more generous than most articles claim. Shopify's current limits are 2 active locations on Starter and 10 on Basic, Grow and Advanced, with Plus considerably higher. Figures of 4, 5 and 8 by plan are still widely republished and are out of date. The plan limit is very unlikely to be your constraint.

Order routing is rule-based and reasonably good. By default Shopify applies three rules in sequence:

  1. Minimise split fulfilments
  2. Stay within the destination market
  3. Ship from the closest location

You can reorder these, add ranked locations, or route by location metafields. For most stores the defaults are sensible and do not need touching.

Two behaviours to understand before you switch it on.

Orders split automatically. If no single location holds everything, Shopify splits the order into per-location fulfilments. Each has its own tracking. The customer receives two parcels. You pay two shipping costs. This is correct behaviour and it is a real cost that does not appear in any forecast.

Or the highest-priority location oversells. Where an order cannot be filled from one place, Shopify may instead let the top-priority location go negative on the product. This is documented behaviour and it surprises people, because a location that shows negative stock is not obviously a routing outcome — it looks like a counting error.

What changes the moment you have two

One thing, from which everything else follows.

Your available stock stops being a number and becomes a sum.

Before: the medium navy has 14 units. After: the medium navy has 14 units, which is 2 at the warehouse and 12 at the shop, and whether a customer can buy it depends on which locations are enabled for online fulfilment, which the number 14 does not tell you.

Nearly every system downstream reads the sum. Very few read the breakdown.

What breaks when you add a second stock location?

1. Back-in-stock alerts fire on the sum. Covered in Guide 06 and worth repeating here because this is where it bites. Klaviyo's native back-in-stock reads total available inventory across every Shopify location. Add stock at a retail shop and the alert fires, even where that location is not enabled for online orders. The customer arrives at a page still reading sold out. Dedicated apps vary; ask before you choose.

2. Product feeds read the sum. Google and Meta receive an availability value derived from total inventory. A variant with stock only at a location that cannot fulfil online orders will show as available, serve ads, take clicks and fail at the cart. This is Guide 04's problem with an additional layer.

3. Split shipments cost real money. Two parcels, two labels, two picks, two chances of a delivery problem, and a customer experience that reads as disorganised. The minimise-split-fulfilments rule reduces this and cannot eliminate it, because it can only work with the stock distribution you have given it.

4. Reporting gets harder, not easier. Shopify does not let you combine location-level inventory with sales performance in a single native view. You can see stock per location. You can see sales. You cannot easily answer "is location A selling through this faster than location B", which is precisely the question that determines whether your stock is in the right place.

5. Forecasting has to happen per location. Every reorder point from Guide 03 now needs a location dimension. Total velocity across both sites tells you what to buy; it does not tell you where to put it, and putting it in the wrong place produces a stockout at one location while the other holds a surplus of the same item.

The drift problem

The structural issue, and the one that does not resolve itself.

Stock does not stay where you put it. Demand is not evenly distributed and neither is fulfilment, so over any period the distribution of your inventory diverges from the distribution of your demand. Location A sells the medium navy three times faster than location B. Both were stocked equally at the start of the season. Six weeks in, A is out and B is holding eleven units that will not sell there.

Stock does not stay where you put it Two locations stocked equally at the start of a season diverge as demand differs, leaving one out of stock while the other holds a surplus of the same variant. THE OPERATIONAL GUIDES Stock does not stay where you put it One variant, two locations, stocked equally. Six weeks of uneven demand. UNITS AT EACH LOCATION WEEKS 0 1 2 3 4 5 6 Location B 11 units left Location A Out of stock 20 each WHAT EVERY SYSTEM READS 11 units available Feeds, ad platforms and back-in-stock alerts all read the sum, not the distribution. WHAT IS ACTUALLY TRUE 0 where the demand is Split shipments at your cost, longer delivery, or nothing at all — and eventual markdown at B.
Stock does not stay where you put it. Two locations stocked equally at the start of a season diverge as demand differs, leaving one out of stock while the other holds a surplus of the same variant.

Shopify shows you 11 units available. Your ads keep running. Your feed says in stock. Customers in A's region either receive a split shipment from B at your cost, or a longer delivery, or nothing at all if B is not enabled for their market.

Correcting it requires a transfer, and a transfer requires someone to notice. Noticing means comparing sell-through by location against stock by location across every variant, regularly — the exact comparison Shopify's native reporting will not produce for you.

At two locations and forty A-tier variants, this is a monthly spreadsheet exercise. It is tedious and it is achievable. At three locations and two hundred variants it stops being achievable, and the drift becomes permanent: a store with meaningful stock and meaningful demand that cannot connect the two.

What should you fix before adding a second location?

Fix your product data first. Guide 05 is a prerequisite rather than a suggestion. Inconsistent SKUs across two locations produce reconciliation problems that are genuinely painful to unwind.

Decide which locations fulfil online orders, explicitly, in Settings. A retail location that is fulfilment-enabled behaves very differently from one that is not, and most of the alert and feed problems above trace back to this setting being left at its default.

Establish your routing rules deliberately rather than accepting defaults you have not read. The defaults are good; knowing what they do is better.

Set up a per-location stock export and start capturing it daily from day one. You will need the history to see drift, and you cannot reconstruct it later.

Work out your split-shipment rate after the first month. If a large share of orders are splitting, your stock distribution is wrong, not your routing.

Check every app that reads inventory — back-in-stock, feeds, forecasting, reviews with stock conditions. Ask each vendor directly whether it is location-aware. Most listings do not say.

The App Ceiling

This section appears in every one of The Operational Guides. It describes where the advice above stops working.

Everything above holds to roughly £1m–£1.5m in annual revenue. Past that point the constraint changes, and it changes in a way that adding further apps does not address.

The App Ceiling Four apps operating within separate data boundaries, with the gaps between them unbridged above roughly one million pounds in revenue. THE OPERATIONAL GUIDES The App Ceiling Each app is correct within its own boundary, and blind outside it. FORECASTING APP Knows Sales velocity Supplier lead times Reorder points AD PLATFORM Knows Daily spend Product feed Campaign performance MESSAGING PLATFORM Knows Customer behaviour Send history Segments RETURNS PORTAL Knows Return reasons Item condition Refund status WHAT FALLS BETWEEN THEM Spend continues against a variant that went out of stock this morning A back-in-stock alert fires for twelve units to four hundred subscribers A returned item sits unprocessed while the same SKU is advertised as available Stock accumulates at the location furthest from where demand is BELOW £1M A person bridges the gaps. The labour is absorbed into the founder's day. ABOVE £1M The bridging stops happening reliably. Nothing breaks visibly. Revenue leaks.
The App Ceiling. Four apps operating within separate data boundaries, with the gaps between them unbridged above roughly one million pounds in revenue.

Apps are built to be sold to many stores. That is what makes them affordable, and it is also what limits them: an app can only act on the data inside its own boundary. Your forecasting tool does not know what your ad platform is spending. Your ad platform does not know what is out of stock. Your back-in-stock tool does not know what your supplier lead times are. Each app is correct within its own scope and blind outside it.

Below roughly £1m, a person bridges those gaps. Someone looks at the stock report, notices a line is running low, and adjusts. The bridging is invisible because it is absorbed into the founder's day.

Above roughly £1m, three things happen at once. SKU count rises, so there is more to bridge. Order volume rises, so the consequence of missing something rises with it. And the founder's time is now spent on growth rather than operations, so the bridging stops happening reliably. Nothing breaks visibly. Revenue keeps climbing. What changes is that a percentage of it begins to leak in places nobody is looking — advertising spend running against unavailable variants, stock accumulating in the wrong location, returns sitting unprocessed for a week and a half while the item they contain is out of stock and being advertised.

That is not an app problem, and no app solves it, because the solution has to sit between systems rather than inside one. It requires something built for your specific stack, your specific SKU structure, and your specific supplier terms.

A second location moves the ceiling down. Every problem in this series that was previously one-dimensional now has a location axis, and the manual bridging that worked at one site takes more than twice the effort at two. Stores that add a location at £800k frequently find they are managing a £1.5m operation's complexity on a £800k operation's resources.

Where to start

If you are considering a second location, answer one question with a number before anything else: what share of your orders go to a region a second location would serve materially better, and what would that save per order?

Multiply it out. Compare it to the fixed cost plus a realistic estimate of the coordination overhead. If the answer is close, wait — the complexity is larger than it appears and it does not reduce with familiarity.

If you already have two, start capturing stock by location daily. Everything else in this guide depends on having that history.

All The Operational Guides