monkeyman.agency
scaling

Shopify Multichannel Inventory Sync: Why Stock Counts Drift Across Amazon, Etsy and Whatnot

Out of stock online, hundreds in the warehouse. Here's why Shopify inventory drifts across Amazon, Etsy and Whatnot, and the reconciliation routine that fixes it.

June 10, 2026 8 min read

Devon runs Trailhead Supply, an outdoor-gear brand doing around $4M a year across Shopify, Amazon, Etsy, and a fast-growing Whatnot channel. One Tuesday a customer messaged asking why a popular three-season tent was showing sold out online. Devon checked the warehouse. Hundreds of units, sitting right there on the shelf.

“The Shopify store showed ‘Out of Stock.’ But the warehouse still had hundreds of units available.” A merchant described that exact scene to us during an onboarding call, and it’s pretty much the canonical multichannel horror story. The stock exists. The systems just can’t agree that it does.

The flip side is worse. Sell something on Whatnot that Amazon already promised to a buyer, and now you’re cancelling an order, eating a metric hit, and apologizing to someone who did nothing wrong.

Both failures come from the same place. The more channels you add, the more copies of “how many do we have” exist, and the harder it gets to keep them telling the same story.

Where the drift actually comes from

Stock drift isn’t a single bug, it’s a whole category of them. Every channel you add is another system with its own idea of what “available” means, its own sync interval, and its own way of holding inventory while an order is in flight. The drift is just what accumulates in the gaps between them.

A few patterns cause most of it. There’s timing lag, where channels sync every few minutes or hours and a fast seller oversells inside that window. There’s committed-versus-available confusion, where one system still counts units already promised to an open order as sitting on hand. And then there’s the silent failure, the sync job that errored at 2am and got noticed only when the angry email landed.

The maddening part is that each channel can be individually correct while the whole still drifts. Amazon thinks it has 40, Shopify thinks 35, Etsy is showing 12 because it last synced before a restock. No single number is exactly lying. They’re just all looking at different moments in time.

Make one system the source of truth, and mean it

The single biggest fix is deciding, on purpose, which system owns the real number. For most Shopify-first brands that’s Shopify, with every other channel reading from it rather than holding its own count. The alternative, where each marketplace maintains its own inventory and you hope they converge, is the setup that’s drifting on you right now.

Shopify gives you the pieces to do this well, if you use them. Multiple locations let you model where stock physically lives. Committed inventory separates what’s promised from what’s actually available to sell. The trouble is that a lot of stores never configure locations properly, so a channel ends up syncing against a number that already double-counts or ignores in-flight orders. Shopify’s inventory and locations documentation is worth a careful read before you wire anything up.

So the order of operations is clear. Get your Shopify locations and committed inventory clean first, then point the channels at it. Sync tooling built on a messy foundation just drifts faster, with more confidence.

Marketplace Connect: where it helps, where it slips

Shopify’s own Marketplace Connect is the default starting point for a lot of brands, and for the common path it works. List a product, link the channel, let it push inventory and pull orders. For a single-location store selling distinct SKUs, that’s often enough.

It slips in the corners, though. Bundles and kits are a classic blind spot, because the quantity of a bundle depends on its components and the sync logic doesn’t always do that math. Multi-location stock can confuse it. And the failure mode people get burned by most is the quiet one, a sync that stops working without throwing anything loud, so the first signal is a customer complaint or a marketplace policy warning.

We’ve sat on calls where Marketplace Connect was technically “connected” for weeks while inventory quietly diverged. The connection status was green. The numbers were not. So whatever tool you use, the lesson holds, you cannot treat “it’s connected” as “it’s working.” You have to verify the numbers on a schedule.

The channels that break the rules

Each marketplace has its own personality, and the edge cases are where drift hides.

Amazon is strict and unforgiving about oversell. Cancel too many orders because you sold stock you didn’t have and your account health takes a real hit, which makes a conservative buffer on Amazon feel a lot less optional. Its sync also lags more than people expect during high-volume events.

Etsy tends to drift the other way, showing stale availability because a sync ran before a restock or a manual edit. And Etsy sellers love a manual edit, which quietly fights whatever your sync tool is trying to do.

Then there’s Whatnot, the genuinely hard one, because it’s live. During a stream you can sell a dozen units in ninety seconds, far faster than any batch sync reconciles, so a buffer and near-real-time updates matter more there than anywhere else. The newer Shopify integration helps, but live selling is still the format most likely to oversell when your stock is thin.

Sync app, IMS, or full ERP: picking the right altitude

When merchants ask what to buy, the honest answer is that it depends on how complex your operation actually is, not how complex it feels on a bad day.

ApproachGood whenLimitsTypical cost band
Channel sync appA few channels, mostly distinct SKUsThin on bundles, forecasting, purchasingRoughly $20 to $100 a month
Inventory management systemSeveral channels, bundles, multi-locationAnother system to learn and maintainRoughly $100 to $500 a month
Full ERPHigh volume, finance and purchasing integratedHeavy to implement, real project costOften $1,000 a month and up

Most brands overbuy here. A sub-$5M store with three channels and clean SKUs rarely needs an ERP, and an ERP implementation gone sideways causes more drift than the problem it was meant to solve. Match the tool to the actual complexity, and move up a tier only when bundles, multiple warehouses, or purchasing forecasts genuinely demand it.

Buffers and thresholds that stop the oversell

A buffer is the cheapest insurance in this whole space. You hold back a slice of real stock from your channels, so the sync lag has room to breathe before it sells something that isn’t there. Set Shopify to treat, say, 5 of every 50 units as untouchable. Your effective oversell risk drops sharply.

How big the buffer should be is a function of velocity and sync speed. Slow movers that sync every fifteen minutes barely need one. A hot SKU you’re also selling live on Whatnot might need a chunky buffer plus a hard low-stock threshold that pulls it from fast channels before it hits zero.

There’s a cost, sure. A buffer means you’re technically showing less inventory than you hold, and on a true bestseller that can mean a missed sale or two. But weigh that against an Amazon account-health strike or a cancelled Whatnot order, and the math almost always favors holding a little back.

A 20-minute weekly reconciliation

You don’t need a dashboard obsession to stay ahead of drift. You need a short, boring routine that you actually run.

Once a week, pull the available count for your top 20 or 30 SKUs from each channel and from Shopify, and line them up in one view. Anything that disagrees by more than your buffer gets flagged. Then check that every channel synced at all in the last 24 hours, because a missing sync is the silent killer, and spot-check one bundle since bundles drift first. The whole thing takes about twenty minutes once your data is accessible.

The point isn’t to catch every unit. It’s to catch the divergence while it’s small, before it becomes a sold-out bestseller sitting in your warehouse or an oversold order you have to cancel. Drift caught at five units is a shrug. Drift caught at five hundred is a Tuesday you’ll remember.

What we keep telling clients

Multichannel inventory isn’t a tool problem first. It’s an architecture problem, and the tool only matters once the architecture is right. Decide what owns the truth, get your Shopify locations and committed inventory clean, then layer sync on top of a foundation that can actually hold.

The brands that stay sane about this treat reconciliation as a habit, not a fire drill. They run a buffer sized to each SKU’s velocity. They don’t trust a green “connected” light, they trust the numbers matching. And they resist the urge to buy a bigger system every time a sync hiccups, because the bigger system drifts too when the basics underneath it are wrong.

We also tell people to scope the buffer and the weekly check before they shop for software. Both are nearly free, both prevent the most expensive failures, and both work no matter which sync tool you land on. The software decision gets a lot easier once the discipline is already in place.

Devon’s team set a per-SKU buffer, cleaned up two warehouse locations that had been double-counting, and put a twenty-minute Monday reconciliation on the calendar. The tent that was “out of stock” with hundreds on the shelf went back live that afternoon. Three months on, his oversell cancellations across all four channels are down to a handful, and the Whatnot streams stopped being the weekly source of dread they used to be.

Questions we get every week

Why does my Shopify store show out of stock when I have inventory? Almost always it’s a sync or location issue, where a channel or app has pushed a stale or miscounted number to Shopify, or your committed inventory is being double-counted against an open order. Check which system you’ve made the source of truth and confirm your locations are configured so the available count reflects real, sellable stock.

Is Shopify Marketplace Connect enough, or do I need a dedicated app? For a few channels with mostly distinct SKUs, Marketplace Connect often handles it. If you sell bundles, run multiple locations, or move enough volume that a few minutes of sync lag causes oversells, a dedicated inventory system usually pays for itself in prevented cancellations.

How big should my inventory buffer be? It depends on how fast the SKU sells and how often it syncs. Slow movers with frequent syncs need almost none, while a bestseller you also sell live on Whatnot might need 10% or more held back plus a low-stock threshold that pulls it from fast channels early.

How often should I reconcile inventory across channels? Weekly is the right baseline for most brands, focused on your top SKUs and any bundles. If you sell live or run very thin stock on bestsellers, move the highest-velocity items to a daily spot-check while keeping the fuller reconciliation weekly.

If your stock counts keep drifting across channels, talk to Monkey Man and we’ll map a source-of-truth setup and reconciliation routine that fits your stack.

Need help with this?

Send us your store. We'll send back an audit.

Send us your store URL. We'll send back a free audit within 48 hours.

Phone (optional)