Multi-store7 min read

Compare One SKU's Stock Across Shopify Stores, Then Change It Safely

Timed sync leaves the other store blind between runs, so the last unit can sell twice. How to compare one SKU across stores and change it with a preview and approval.

In this guide
  1. Why timed sync oversells the last unit
  2. Step 1: Pick the SKUs that need a cross-store check
  3. Step 2: Compare the same number in every store
  4. Step 3: Decide the change, per store
  5. Step 4: Preview, approve for that store, then check
  6. A worked example: the last two jackets
  7. Before Black Friday
  8. Checklist
  9. FAQ

The short answer: if you sell the same product in two or more Shopify stores, the riskiest moment is the gap between two sync runs. During that gap the other store does not know a unit has sold, so the last unit can sell twice. You cannot make that gap disappear by trusting the sync more. What you can do is compare one SKU’s stock across every store when it matters, decide the right number yourself, and change each store with a preview of the values before and after, an approval for that store, and a check against Shopify afterwards.

This guide is for multichannel and multi-store sellers who have been burned by overselling and no longer take “synced” at face value.

Why timed sync oversells the last unit

Most stock sync tools work on a schedule or a queue: they read a change in one store, then write it to the others. Between those two steps, every other store is still selling from its old count. Merchants in a Shopify Community thread on inventory apps describe exactly this: while one channel waits for the next poll, it keeps selling a unit that has already gone on the other channel.

For most products, a short gap is harmless. It hurts on:

  • The last few units of anything, where one extra sale is an oversell.
  • Fast sellers during a launch, a sale or peak season, where several orders can land inside one gap.
  • Shared stock, where both stores ship from the same shelf.

A faster sync narrows the window but does not close it. That is why the steps below focus on knowing the real number and changing it deliberately, not on making the sync faster.

Step 1: Pick the SKUs that need a cross-store check

You do not need to compare every product in every store. Pick the SKUs where a mismatch costs real money:

  • Items with low stock, for example under 5 units in total.
  • Items sold in more than one store from the same location.
  • Items with an upcoming promotion, email or ad.
  • Items that oversold before.

Match by SKU, not by product title. Titles often differ between stores (a translated store, a wholesale store), and matching by title is how the wrong variant gets changed.

Step 2: Compare the same number in every store

Shopify tracks several stock states per variant and location: Available (what can still be sold), Committed (set aside for unfulfilled orders), Unavailable (held back) and Incoming; On hand is Committed + Unavailable + Available (Shopify’s inventory states page).

For overselling, the number to compare is Available, per location. Comparing On hand in one store with Available in another makes stores look out of step when they are not.

A simple comparison sheet per SKU is enough:

SKU Store Location Available Committed Expected Available Difference
JKT-NAVY-M Retail store Main warehouse 3 1 2 +1
JKT-NAVY-M Wholesale store Main warehouse 2 0 2 0
JKT-NAVY-M EU store EU warehouse 0 0 0 0

“Expected” comes from your trusted source: a physical count, your warehouse system, or one store you have agreed is the master. Write down where it came from. A difference without a source is a guess.

If a number looks wrong, open the variant’s adjustment history in that store’s admin. It shows the date, the activity and the staff member, app or sales channel behind each change for the last 180 days (Shopify’s adjustment history page). It tells you whether a sync app, an order or a person moved the count.

Step 3: Decide the change, per store

With the comparison in front of you, write the change down per store before anything is written:

  • Store, SKU, location.
  • Value now and value after.
  • Why (count, sale, return, safety stock).

Keep a small buffer on the last units of fast sellers. Showing 1 or 2 fewer units than you hold costs a late sale now and then, and it absorbs the orders that land between two updates.

Each store gets its own change. Stores differ: the count that is right for the retail store’s location may be wrong for the EU warehouse.

Step 4: Preview, approve for that store, then check

This is where most oversell fixes go wrong: someone corrects the count in a hurry and nobody looks at what was actually written.

  1. Preview every store’s change with its values before and after. A preview makes “set to 0” or “set to 30 instead of 3” visible before it reaches a live store.
  2. Approve each store’s change on its own. If one store’s number is doubtful, reject that one and recount, without holding up the others.
  3. Check against Shopify after writing. Read the store back and confirm the new Available number. A success message tells you a request was sent, not that the store holds the right value.
  4. Know your rollback. Putting a quantity back restores the number, but it does not cancel orders already placed against the wrong one. The preview matters more than the undo.

A worked example: the last two jackets

You sell a navy jacket, size M, in a retail store and a wholesale store, both shipping from one warehouse. A sync tool keeps them in step on a schedule. Two units are left on the shelf.

  1. A retail customer buys one. Until the next sync run, the wholesale store still shows two.
  2. Before a promotion, you check the SKU in both stores: retail shows 1 Available, wholesale still shows 2.
  3. You decide the true Available is 1 and, because a promotion is about to start, set a buffer: wholesale to 0, retail stays at 1.
  4. You preview the wholesale change (2 → 0), approve it for the wholesale store, and read the store back: Available is 0.
  5. The last jacket can only sell once.

The point is not to replace the sync. The point is that for the handful of SKUs where one extra sale is an oversell, a person looks at the real numbers and approves the change.

Before Black Friday

Black Friday is November 27, 2026. In the weeks before:

  • List the SKUs you will check across stores during the peak.
  • Agree which store or system is the trusted source for each.
  • Decide who may approve stock changes on which store.
  • Make large corrections early, then limit stock changes during the peak. See our guide to a change freeze around Black Friday.

Checklist

  • Low-stock and shared-stock SKUs listed, matched by SKU
  • Available compared per store and location, with a named trusted source
  • Change written down per store, with value now and value after
  • Buffer set on the last units of fast sellers
  • Each store’s change previewed and approved for that store
  • Each store read back from Shopify after writing

For the wider options for keeping stores in step, see how to keep inventory in sync across multiple Shopify stores. If a sync app has already changed stock you never approved, see what to do when a sync app changes stock without approval.

FAQ

Why does my other Shopify store oversell even with a sync app?

Because a timed or queued sync has a gap between reading a sale in one store and writing it to the others. During that gap the other store sells from its old count. A faster sync narrows the gap but does not remove it.

Which stock number should I compare across stores?

Available, per location. It is what each store can still sell. On hand includes units already committed to orders.

How do I see what changed a variant’s stock?

Open the variant’s adjustment history in that store’s Shopify admin. It shows who or what made each change, including apps and sales channels, for the last 180 days.

Can one approval change the stock in all my stores at once?

Not in StoreFleet. Each change belongs to one store and is approved for that store, even when you see every store’s pending changes in one list.