Stock drifts for identifiable reasons: orders that failed after reserving stock, a sync with an external system running one way only, manual edits fighting automatic ones, or variations counted separately from their parent. Correcting today’s numbers is easy. Finding why they drifted is the part that stops it happening again next month.
Before you buy, one quick check
Read-only.
Pick one product where you know the true physical count. Compare it to WooCommerce, and note whether the site figure is higher or lower.
Site count too high — sales are not decrementing, so you will oversell.
Site count too low — stock is being held by failed or abandoned orders and never released.
Those are different faults with different fixes, and knowing which saves us a step.
Stock sync & inventory discrepancy fix
Stock levels in WooCommerce do not match reality. We find where the sync is breaking, correct the counts, and stop it drifting again.
- Full backup taken before we start
- If we can’t fix it, you get your money back
- We never ask for your own password
This or something else?
| Counts wrong across many products | This fix covers it |
| Stock held by orders that never completed | This fix covers it |
| Sync with an external system failing | This fix covers it |
| Variations showing out of stock incorrectly | Product variation display errors |
| You need multi-warehouse stock | Multi-warehouse inventory configuration |
What you are seeing
- Stock levels that do not match physical reality
- Products showing out of stock when you have them
- Overselling items that the site thought were available
- Variations and parent products disagreeing
- An external system and the site drifting further apart over time
Common causes
- Failed or abandoned orders holding stock that is never released
- A one-way sync overwriting corrections in the wrong direction
- Manual edits being overwritten by an automated process, or the reverse
- Stock managed at both parent and variation level simultaneously
- Cancelled orders not restoring stock because of a status configuration
What we do
- Take a full backup before touching anything
- Compare site stock against your source of truth and quantify the drift
- Identify the mechanism causing it rather than only correcting numbers
- Release stock held by orders that will never complete
- Correct stock management settings at product and variation level
- Reconcile counts and monitor to confirm they hold
What is included
- Stock counts corrected and reconciled
- The cause of the drift identified and fixed
- A note on what was happening and how far it had gone
- The pre-fix backup, kept for 30 days
Not included
- A physical stocktake — we work from the counts you supply
- Building a new integration with an external system, which we quote separately
- Compensating customers affected by overselling
- Design changes or content work
Questions about this fix
Can you just fix the numbers?
We can, and they will drift again. Correcting counts without finding the mechanism means the same conversation next month. Both are included, and the diagnosis is the part that lasts.
Where does held stock come from?
Orders that reserve stock and then fail — abandoned payments, timeouts, declined cards. WooCommerce holds it for a configurable period and releases it. If that setting is wrong or the release is failing, it accumulates quietly.
My external system is the source of truth. Can you make it one-way?
Yes, and often that is the right answer. Two systems both believing they are authoritative is the most common cause of drift. We configure a single direction so corrections stop fighting each other.
How do I know your corrected numbers are right?
We work from the counts you supply as the source of truth and reconcile the site to them. We are not guessing at your physical stock — we are making the site agree with what you tell us is real.
Will this happen again after you fix it?
Less likely, since we're fixing the cause rather than just correcting today's count — but only if the cause is something we can change. If it's an external system you don't control, we tell you plainly rather than promise it's solved for good.
Related fixes
If this is the second time this year
A bad update breaking the site is a symptom of updates not being tested first. Care plans run every update on a staging clone before it reaches your live site, which is the actual fix for this happening again.
Your access, your rules
Create a separate admin account for us and delete it when we are done. For anything else, we get in touch and agree a method — never a form field on this site, never by reply to an email.
We back up first, always
Before anything is touched we take a full backup and keep it for 30 days. If a fix goes wrong, we put the site back exactly as it was.
If it is not what you bought
If the problem turns out smaller than what you ordered, we refund the difference. If it is bigger, we stop and send a quote before doing any extra work.
If we cannot fix it
You get back what we received. Diagnosis is on us — you only pay when the problem is actually solved. The payment processor takes its fee before the money reaches us, so we never hold it and it is not ours to return. That is true here as everywhere else.
If it comes back
Reply within seven days of delivery and we put it back on the bench at no cost. The fix is not finished until it holds.
What we are responsible for
If something goes wrong with a fix, our responsibility is limited to what you paid for it. We take a full backup first so mistakes can be undone, and we tell you before doing anything outside what you bought.