Why Shopify stores oversell (and it's not always your fault)
Shopify overselling has multiple causes, and some of them are buried deep in settings you may not have touched since you set up your store. Before you can fix it, you need to understand which one is actually causing your problem.
Inventory tracking is disabled on a product
Every Shopify product has an inventory tracking toggle. If "Track quantity" is turned off for a product, Shopify treats it as having unlimited stock. It will accept orders forever, regardless of how many units you actually have. This is the single most common cause of overselling on Shopify, and it's easy to miss because the default behavior varies depending on how you created the product.
Shopify POS and your online store are out of sync
If you sell in person using Shopify POS and also sell online, both channels pull from the same inventory pool. But location assignments can cause problems. If your POS location and your online store location aren't mapped to the same inventory, an in-store sale won't reduce your online stock. You'll sell the same unit twice.
"Continue selling when out of stock" is enabled
Shopify has a setting called "Continue selling when out of stock" that does exactly what it says. When enabled, your product page stays active and accepts orders even after inventory hits zero. Some sellers enable this intentionally for pre-orders or backorder scenarios. Others enable it accidentally and don't realize until a customer buys something that doesn't exist.
App conflicts updating stock
If you have multiple Shopify apps that touch inventory (order management apps, shipping apps, dropshipping apps), they can overwrite each other's stock adjustments. App A decrements stock for a sale. App B reads the old stock count and writes it back. Suddenly your inventory jumped back up and you're selling units that are already spoken for.
Webhook delays from third-party apps
Third-party apps receive inventory updates from Shopify via webhooks. These webhooks are fast but not instant. During high-traffic periods or flash sales, there can be a delay of several seconds between the sale and the webhook delivery. If another order comes in during that gap, both orders go through against the same stock count.
Selling on Shopify plus marketplaces without sync
This is the most common cause for sellers who also list on Etsy, Amazon, or eBay. Shopify's inventory tracking only knows about Shopify sales. A sale on Etsy doesn't update your Shopify stock. A sale on Amazon doesn't update your Shopify stock. If you sell the same products on multiple platforms without a sync tool, overselling is inevitable.
Manual stock adjustments not propagated
If you manually adjust inventory in Shopify (adding received stock, writing off damaged units), those changes only apply within Shopify. Other platforms have no way of knowing you changed the number. Your Etsy listing still shows the old count. Your eBay listing still shows the old count.
Quick fixes you can do right now
If you're actively overselling on Shopify, these are the settings to check first. Each one takes less than a minute.
These five checks will fix the most common Shopify-only overselling issues. If you only sell on Shopify (no other marketplaces), this may be all you need. If you sell on other platforms too, keep reading.
The real problem: selling on Shopify plus other platforms
If you also sell on Etsy, Amazon, eBay, or any other marketplace, Shopify's built-in inventory management has a fundamental gap. It only tracks sales that happen on Shopify.
Here's what that looks like in practice. You have 5 units of a product. You list it on Shopify showing 5 available. You list the same product on Etsy showing 5 available. You list it on Amazon showing 5 available. A customer buys 2 on Etsy. Etsy updates to 3 remaining. But Shopify still shows 5. Amazon still shows 5. You now have 3 units but your Shopify and Amazon listings think you have 5.
The next three sales on Shopify or Amazon will oversell. And you won't know until you go to ship the order and the product isn't there.
For sellers who list products on multiple platforms, the disconnect between Shopify and other channels causes more overselling than every Shopify settings issue combined. Shopify doesn't know about sales that happen on Etsy, Amazon, or eBay. Those platforms don't know about Shopify sales. Without a sync layer connecting them, overselling is a matter of when, not if.
This problem gets worse as you grow. More products, more channels, more daily sales volume. The gap between "a sale happened on Etsy" and "you manually update Shopify" widens. During busy periods like holidays, you might oversell multiple times per day. For more on managing this problem, see our guide to keeping inventory accurate across platforms.
How to prevent Shopify overselling across all your channels
There are three approaches to keeping Shopify inventory in sync with other platforms. They vary dramatically in reliability, cost, and time investment.
| Approach | Cost | Reliability | Time Required |
|---|---|---|---|
| Manual sync after every sale | Free | Very low | Hours per week |
| Single-channel Shopify app | $20-50/mo | Limited | Moderate setup |
| Dedicated multichannel sync tool | Free to start | High | 5-minute setup |
1. Manual sync after every sale
After each sale on any platform, you log into every other platform and manually update the inventory count. This is free. It also requires constant attention, breaks down the moment you step away from your computer, and fails completely during high-volume periods or overnight sales. If you sell more than a few items per day across channels, manual sync will eventually cause an oversell.
2. Single-channel Shopify apps
Some Shopify apps connect to one other platform. A Shopify-Etsy app, for example, or a Shopify-Amazon connector. These work for a two-channel setup, but they don't scale. If you sell on three or four platforms, you'd need separate apps for each connection. Those apps often don't coordinate with each other, creating the same sync gap you're trying to solve. They also tend to sync on a schedule (every 15 minutes, every hour) rather than in real-time, leaving a window for oversells.
3. Dedicated multichannel sync tool
A centralized tool that connects all your channels to one inventory source. When a sale happens anywhere, every connected platform updates within seconds. This is the only approach that scales reliably as you add channels. Commerce Kitty falls into this category: it connects Shopify, Etsy, Amazon, eBay, WooCommerce, and more from a single dashboard. For a broader look at stopping overselling across all platforms, see our overselling prevention guide.
Stop Shopify overselling. Connect all your channels.
Commerce Kitty syncs your Shopify inventory with Etsy, Amazon, eBay, and every other platform you sell on. A sale anywhere updates everywhere, in seconds.
Start Syncing FreeSetting up real-time sync with Commerce Kitty
Here's the step-by-step process for connecting your Shopify store to all your other sales channels through Commerce Kitty.
Connect your Shopify store
Create a free Commerce Kitty account and connect your Shopify store. The connection uses Shopify's official OAuth flow. Your products and current inventory levels import automatically. No manual data entry.
Connect your other channels
Add Etsy, Amazon, eBay, WooCommerce, or any other platform you sell on. Each connection takes about a minute. Authorize access, and Commerce Kitty imports those listings too.
Auto-match your products
Commerce Kitty identifies the same product across platforms using SKUs, titles, and barcodes. Review the suggested matches and confirm them. For products that need manual matching, link them with one click.
Enable inventory sync
Turn on real-time sync. From this point forward, a sale on any connected platform instantly updates the inventory on every other platform, including Shopify. No delays. No manual updates. No overselling.
Sell with confidence
Your Shopify store now stays in sync with every channel automatically. Restock in one place and the update pushes everywhere. The free plan covers inventory sync across all connected channels. No credit card required.
The entire setup takes about 5 minutes. For Shopify-specific integration details, see our Shopify integration page. If you also sell on Etsy with the same products, our guide on selling on Etsy and Shopify with shared inventory walks through that specific pairing.
Shopify inventory settings every seller should know
Whether you sell only on Shopify or across multiple channels, these inventory settings and features will help you manage stock more effectively.
How to enable inventory tracking per product
Go to Products > select a product > scroll to Inventory. Check "Track quantity." Enter your current stock count. If the product has variants (sizes, colors), each variant has its own inventory count. You need to enable tracking on each variant individually. For new products, Shopify enables tracking by default, but products imported via CSV or API may not have it enabled.
How location-based inventory works
Shopify supports multiple locations (warehouse, retail store, pop-up shop). Each location holds its own inventory count for each product. When a customer orders online, Shopify uses your fulfillment priority order to decide which location's stock to decrement. Go to Settings > Locations to manage your locations and their priority. If you only have one location, this is straightforward. If you have multiple, review your priority order carefully.
How to set up low stock alerts
Shopify doesn't have built-in low-stock email alerts, but you can filter your product list by inventory level. Go to Products, click "More filters," and filter by inventory less than a threshold you choose. Bookmark this filtered view and check it daily. For automated alerts, you'll need a third-party app or a tool like Commerce Kitty that sends notifications when stock drops below levels you set.
How to handle pre-orders without overselling
If you want to accept pre-orders for a product that's out of stock, enable "Continue selling when out of stock" for that specific product only. Add clear messaging to the product page indicating it's a pre-order with an expected ship date. Use Shopify tags or a dedicated collection to track which products are in pre-order status. Turn off "Continue selling" as soon as the product is back in stock and you've fulfilled the pre-orders.
How draft orders affect inventory
When you create a draft order in Shopify, inventory is not reserved until the draft is converted to an order. If you create a draft for a customer and then someone else buys the last unit before the draft is completed, you've oversold. For time-sensitive holds, convert drafts to orders quickly. Shopify also reserves inventory when a customer reaches checkout but hasn't paid yet. That reservation expires after 10 minutes by default (configurable in Settings > Checkout).
Common questions about Shopify overselling
Why does Shopify let me sell items that are out of stock?
Can I sync Shopify POS with my online store inventory?
How fast does Commerce Kitty sync with Shopify?
Will this slow down my Shopify store?
For more on preventing overselling across all your channels, read our guide to selling on multiple platforms without overselling. For Shopify-specific inventory management, see our Shopify inventory management guide. If you're pairing Shopify with Amazon, our Shopify + Amazon sync guide covers that specific setup. And for eBay sellers, see Shopify + eBay sync.