Why does my product show different inventory at each location?

If the same variant shows different stock levels at different locations, it's usually Shopify's multi-location inventory model working as designed, not a syncing bug.

inventorylocationsmulti-locationfulfillment

What's going on

A merchant notices that the same product variant shows a different quantity depending on which location they're looking at — one warehouse says 40 units are available, another says 12, and the number that actually shows up on the storefront doesn't obviously match either. It feels like the counts should be in sync, or that something failed to update, especially if a recent stock transfer or count doesn't seem reflected everywhere at once.

This is a natural place to get confused because Shopify doesn't have one single "stock level" per variant — it has one per location, and several settings (channel assignment, fulfillment priority, and the oversell toggle) interact to decide what a customer actually sees and what happens when an order comes in. Sorting out whether the numbers are wrong, or just configured in a way that looks wrong, is the first step before troubleshooting further.

Why it happens

Shopify's inventory system is location-first: every variant with tracking enabled has a separate on-hand, committed, and available count at each location you've set up, going back to the platform's shift to native multi-location support. There is no single master quantity — the "available" total merchants see on a product list is a sum of whichever locations are eligible to sell that item online, which is exactly why two locations can legitimately show different numbers at the same time.

The confusion usually compounds because a few settings that feel like they should be per-location actually aren't. "Continue selling when out of stock" and "Track quantity" are set once per variant and apply uniformly across every location; fulfillment priority is set once per store and decides which location an online order draws from first when more than one has stock. None of these settings sync inventory between locations or move stock automatically — physical transfers have to be recorded separately, so a location that hasn't had a transfer logged will keep showing its last known count indefinitely.

5 ways to fix it

1

Check the per-location breakdown, not just the total

Open the product, scroll to the Inventory section, and look at the location list under the variant — Shopify shows on-hand, committed, and available quantities separately for every active location. A variant's storefront-visible "available" number is the sum across locations enabled for the Online Store channel, so a different count at one location isn't a bug by itself. Reconcile it the same way you'd reconcile any count: compare on-hand at that specific location to what's physically on the shelf there.

2

Confirm which locations are actually serving your Online Store

Go to Settings > Locations and check each location's channel assignments. A location only contributes stock to online orders if it's enabled for the Online Store sales channel and marked as a fulfillment location. A warehouse that's stocked but not assigned to that channel, or a retail store handling only local pickup, will show inventory that never appears (or never sells) online — which looks like "inventory differs by location" when it's really a channel-assignment gap.

3

Set your location fulfillment priority deliberately

Still in Settings > Locations, drag to reorder the priority list. When more than one location has stock for a variant, Shopify assigns the order to the highest-priority location that has it available, so one location can drain quickly while another sits mostly full. That's expected behavior, not a sync problem — reordering the priority list (or splitting priority by region if you ship from multiple warehouses) is the native fix.

4

Verify Track quantity and Continue selling when out of stock per variant

Both settings live on the variant (Products > variant > Inventory) and apply to that variant everywhere — Shopify has no per-location override for either one. If a variant shows available stock at one location but sells out instantly at another, check that "Track quantity" is on for all relevant SKUs and that you understand oversell is all-or-nothing per variant, not selectively allowed at certain locations.

5

Use inventory transfers to move stock deliberately between locations

If the real issue is that stock is physically sitting in the wrong place, Shopify's built-in Transfers feature (Products > Transfers, or Inventory > Transfers) lets you record inventory moving from one location to another so the counts stay accurate as goods actually relocate. For stores with many locations and frequent rebalancing, a dedicated multi-location inventory app can automate this, but it's worth confirming the settings above first since most "inventory differs by location" reports turn out to be channel assignment or priority order, not a missing app.

Bottom line

In almost every case, inventory that looks inconsistent across locations is Shopify behaving correctly: each location keeps its own on-hand count by design, and what a customer sees online is filtered by channel assignment and fulfillment priority, not a single shared number. Start with Settings > Locations and the per-variant inventory settings before assuming anything is broken or reaching for a third-party tool — a dedicated inventory-sync app is only worth it once you've confirmed the native settings are configured the way you actually want.

Still Stuck?

Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.