Guide

WooCommerce stock sync: what actually works

If you're researching WooCommerce stock sync, you're probably staring at a plugin page wondering whether it'll actually hold up once real supplier feeds and real order volume hit it. This guide covers why stock drifts in the first place, what the plugin options genuinely do well, where they fall over, and how a proper sync is built underneath.

Run a free audit on your store →

In short: WooCommerce stock sync keeps your website, marketplaces (eBay, Amazon) and supplier feeds matched to one source of truth on a schedule, so you never oversell. Plugins suit simple setups; a bespoke sync wins when you have supplier feeds, a large catalogue, or channels that must reconcile reliably.

Why WooCommerce stock drifts in the first place

Every retailer running WooCommerce alongside eBay, Amazon, or a supplier feed hits the same wall eventually: the numbers stop agreeing with each other. It's rarely one dramatic failure, it's a slow accumulation of small gaps. A customer buys the last unit on eBay at 11pm and your WooCommerce store still shows it in stock until the next manual check. A supplier discontinues a line and nobody updates your catalogue, so the product page stays live, indexed by Google, ready to disappoint whoever clicks it. Someone manually edits a quantity in WooCommerce to fix one issue and forgets to mirror that change on Amazon.

None of this is a people problem, even though it gets blamed on people. It's a synchronisation problem: you have several systems that each believe they hold the truth, and nothing is reconciling them on a schedule. The retailer who "keeps forgetting to update Amazon" usually has three other jobs and a spreadsheet, not a discipline failure.

The cost is specific and measurable. Oversells lead to cancelled orders, refunds, and a dent in marketplace seller ratings that Amazon and eBay both weight heavily. Stale in-stock listings burn ad spend and organic traffic on products you can't fulfil. And every hour spent manually reconciling stock across tabs is an hour not spent on sourcing, marketing, or actually running the business.

What WooCommerce native stock management can and can't do

WooCommerce's built-in stock management (Settings → Products → Inventory) is genuinely solid for a single-channel store. It tracks quantity per product or variation, decrements on order, supports low-stock thresholds and backorder rules, and can hide out-of-stock items from the catalogue automatically. If you only sell through your own website, this alone is usually enough.

Where it stops is the boundary of your own store. WooCommerce has no native concept of eBay or Amazon inventory, and no built-in way to read a supplier's stock feed and apply it. The moment you add a second sales channel or an external supplier feed, native stock management becomes one input into a bigger reconciliation problem it was never designed to solve on its own.

The plugin options, and their real limits

Most WooCommerce owners' first move is a plugin, and for a straightforward setup that's often the right instinct.

Codisto connects WooCommerce to eBay and Amazon, syncing stock, price, and orders in near-real time via each marketplace's API. It's well built and handles the common cases cleanly: single supplier, moderate catalogue size, standard product types. Where it gets strained is scale and complexity. Once you're into tens of thousands of SKUs, or your listings use marketplace-specific variations that don't map cleanly to your WooCommerce structure, mismatches creep in and need manual attention.

CedCommerce covers a similar space with broader marketplace coverage (Walmart, Etsy, and others alongside eBay and Amazon), and is a reasonable choice if you're spreading across several channels at once. The trade-off is the same: it's built to handle the general case well, not your specific supplier feed's quirks.

The gap that catches almost everyone eventually is the supplier feed itself. Plugins are built to talk to marketplaces cleanly because marketplace APIs are standardised. Supplier feeds are not. A wholesaler might hand you a CSV with inconsistent SKU formatting, a daily FTP drop with no error handling, or an XML feed that occasionally arrives empty because their export job failed silently. Off-the-shelf sync tools generally assume a well-formed feed and don't guard against a bad one. That's the single most common cause of the horror story every retailer eventually tells: a corrupt or empty supplier file gets treated as gospel, and the plugin dutifully sets every product to zero stock overnight.

Scheduling is the second limit. Most plugins run on fixed intervals that work fine for a few hundred products but start to lag once you're reconciling tens of thousands of SKUs against several feeds, especially if a feed provider throttles API calls or the file itself is large enough that parsing takes real time.

How a proper stock sync actually works

Whether it's a plugin or a custom build, the underlying logic that makes a sync trustworthy is the same:

A single source of truth. One system, usually the supplier feed or an internal stock table, is designated the authority for quantity. Every channel gets updated to match it. Without this, you get circular disagreements: WooCommerce thinks eBay is right, eBay thinks WooCommerce is right, and both are wrong.

Scheduled reconciliation, not just event triggers. Order-triggered decrements (sell one, subtract one) are necessary but not sufficient, because they only catch changes that flow through your own systems. A nightly full reconciliation catches drift from manual edits, marketplace-side returns, and supplier changes that didn't come through an order.

Bad-data guards. Before applying a new feed, a proper sync sanity-checks it: is the row count roughly what's expected, are quantities within a plausible range, is the file actually parseable. If a feed looks broken, the sync should refuse to apply it and alert a human, rather than confidently wiping the catalogue.

Clean out-of-stock handling. Zero stock should mean the product is hidden or clearly flagged, not left live with a "buy now" button. This is a small detail that plugins sometimes get wrong on edge cases like backorderable products or bundles.

A log. Every change should be recorded: what changed, when, and why. When a customer complains about a wrong stock figure, you want an answer in thirty seconds, not a forensic investigation.

Proven at scale: 91,000 products, 121 tests

For a UK workwear retailer, GlideOps built a nightly stock sync that reconciles the website against supplier feeds across 91,000 products. It shipped with 121 automated tests covering the feed-parsing edge cases, the bad-data guards, and the out-of-stock logic, and it's hosted and monitored so it runs unattended. That's the level of rigour a sync needs once you're past the scale where "it mostly works" is good enough, because at 91,000 SKUs, "mostly" means thousands of wrong listings.

When a plugin is the right call, and when bespoke wins

Be honest with yourself about scale and feed complexity before you spend money either way. A plugin like Codisto or CedCommerce is the right call when you're selling through one or two standard marketplaces, your catalogue is a few thousand SKUs or fewer, and your supplier feeds (if any) are well-formed and consistent. It's cheaper, faster to set up, and maintained by someone else.

A bespoke supplier-feed sync earns its cost when any of the following is true: your supplier feed is large, inconsistent, or arrives in a format the standard plugins don't handle gracefully; you're reconciling multiple suppliers against multiple channels and need custom priority rules for conflicting stock figures; you've already been burned by a bad-data wipe and need guardrails a generic plugin doesn't offer; or your catalogue is large enough that scheduling and performance genuinely matter. The tell is usually operational: if you're still manually checking stock some mornings "just in case," the plugin hasn't actually solved the problem, it's just moved where the manual work happens.

Where to start

Before deciding which route to take, it's worth knowing exactly how bad your current drift is. The free checker scans your live store and shows how many products are out of stock but still listed for sale right now, which is usually the clearest single number for deciding whether a plugin will hold or whether you need something built to your feed.

Can WooCommerce sync stock with eBay and Amazon natively?

No. WooCommerce's native stock management only tracks quantity within your own store. Syncing across eBay and Amazon needs either a marketplace plugin (Codisto, CedCommerce) or a custom integration talking to each channel's API.

Will a stock sync plugin work for a small WooCommerce store?

For a handful of products and one or two channels, yes, a plugin like Codisto or CedCommerce is usually the right call. Past a few thousand SKUs, multiple supplier feeds, or unusual feed formats, plugins tend to hit scheduling and data-quality limits.

Why does my WooCommerce stock keep going wrong even with a plugin installed?

Usually a bad-data guard is missing: a malformed or empty supplier feed gets treated as truth and wipes stock to zero, or the sync schedule can't keep up with feed size, so quantities lag behind real sales.

How much does a custom WooCommerce stock sync cost?

It's scoped to your setup after a free audit, priced as a fixed project rather than a day rate, so you know the number before any work starts.

Want the fuller service breakdown, pricing approach, and what's included? See the stock sync service page.

About the author

Jordan Bee builds automation for UK online retailers at GlideOps. In June 2026 he manually audited 135 UK online shops, finding 4 in 10 showing sold-out products still live and ranking on Google, research that underpins these guides and the free dead-listing checker. He has built stock-sync systems covering 91,000+ products for UK retailers.

See exactly where your stock is wrong

Run a free audit on your store and get a real number: how many live products are actually out of stock right now.

Run a free audit on your store →