Who we are Who we are What we stand for Results Community Operator meetups How we work The Six Pillars The Six Stages Our process FAQ Services Services Development coaching Hire an operator Partner network Invest in your business Buy your business Tools All tools Diagnostic guide Earthquake checklist Read Insights & news Inventory & Supply Chain Planning Manufacturing & Production Operations Operations Diagnostics Process Improvement Systems & Automation Warehouse & Fulfillment Operations Careers Join the operator bench Book a call
What Causes Inventory Counts to Drift? 7 Hidden Reasons
Warehouse & Fulfillment Operations

What Causes Inventory Counts to Drift? 7 Hidden Reasons

Contents

Inventory drift usually starts small, then gets expensive#

The first sign is rarely a dramatic shrink event. It’s a pallet that never got receipted, a tote that was picked from the wrong slot, or a return that sat in quarantine until someone “fixed” it with an adjustment. Six weeks later, the system says 42 units, the shelf has 31, and nobody can point to the exact day it went off the rails.

That is what people mean when they ask, what causes inventory counts to drift between the system and the shelf over time? Usually it is not one big failure. It is a stack of small process misses, repeated enough times that the WMS becomes a record of what should have happened, not what actually happened.

If you run a warehouse in Remote / nationwide or out of a Bay Area facility near Danville, California, the pattern is the same. The location changes. The mechanics do not.

The seven causes that show up most often#

What causes inventory counts to drift between the system and the shelf over time? These seven issues show up again and again when we audit distribution centers, 3PLs, and fulfillment operations.

1. Receiving is “close enough,” not exact#

Receiving drift starts when the dock is moving faster than the paperwork. A carton count gets estimated, a case is short by one, a lot number is entered from memory, or the receiver closes the PO before the last pallet is actually staged.

The damage is quiet. The system books inventory that never really landed, or books it under the wrong SKU, UOM, or lot. If the item is high velocity, the error gets consumed before anyone notices. If it is slow moving, it sits there and poisons inventory accuracy for weeks.

This is the first place I look when a site has repeated stock discrepancies on the same vendors or the same lanes. It is even more likely when receiving is done by temp labor, when ASN quality is poor, or when the team is converting cases, inner packs, and eaches by hand.

2. Putaway creates location truth in the wrong place#

A lot of warehouses think of putaway as a move task. It is really a data integrity task.

If the item lands in the wrong bin, gets staged in overflow, or is dropped into a “temporary” location that never gets reconciled, the shelf and the system split immediately. The WMS may show stock in Aisle 4, Bay 12, but the physical product is in the cross-dock lane, on a cart, or in a reserve pallet position nobody scans consistently.

This gets worse in facilities with mixed storage types, especially when the team uses RF guns in some zones and paper or verbal handoffs in others. System vs shelf counts drift fastest where the location hierarchy is fuzzy.

3. Picking errors are being hidden by substitutions and partials#

Picking is where many teams first notice the problem, but it is often not where it started.

Wrong SKU picks, short picks, and mis-scans create one-sided drift. The order ships, the customer gets the wrong item or a short shipment, and the system gets adjusted later, sometimes in a batch, sometimes not at all. If a picker is allowed to substitute a similar item without a clean transaction trail, the WMS can look “right enough” while the shelf is bleeding accuracy.

This is especially common in multi-line e-commerce or retail replenishment work where order profiles are noisy and travel time is high. If you want to see whether picking is the real issue, pull the top 20 exception SKUs and compare pick errors by zone, shift, and associate. If one zone is carrying most of the variance, you have a process problem, not random noise.

4. Returns are treated like a side door instead of an inventory flow#

Returns are one of the fastest ways to break inventory accuracy because they often bypass the normal receiving logic.

A customer return, a damaged unit, or a vendor return can sit in limbo, get restocked before inspection, or get written off too late. If the reverse logistics process is weak, the system may show sellable stock while the shelf has quarantined product, or the reverse. That creates a mismatch that looks like shrink but is really workflow failure.

For teams in warehouse and fulfillment operations, returns are often where the first “mystery drift” starts. The fix is not more recounting. It is tighter disposition codes, clearer quarantine handling, and a hard rule that nothing re-enters available inventory without a scan and status change.

5. Cycle counts are being used as a cleanup tool, not a control#

Cycle counts should catch drift early. If they are used to quietly correct bad transactions, they stop being a control and start being a bandage.

When counter teams are told to “make it match,” they may adjust without tracing the root cause. That keeps the order line moving, but it also teaches the operation that inventory adjustments are normal. Over time, the count history becomes less useful because the same problem gets buried under repeated write-ups.

A good cycle count program should tell you where the error lives. If every variance gets corrected at the end of the day with no reason code discipline, you are not improving inventory accuracy. You are editing the symptoms.

6. UOM and barcode setup are wrong, so the system is counting the wrong thing#

This is the one that tends to fool teams into blaming the floor.

If the barcode hierarchy is wrong, if the WMS is set to count eaches but the label is built for cases, or if the item master has bad pack factors, the warehouse can scan correctly and still generate an inventory count mismatch. Same with catch weight items, variable quantity products, and items with nested packaging. The operator is doing the task right, the system is interpreting it wrong.

This is where software and process blur together. If the issue follows a specific SKU family, label format, or transaction type, suspect the item master, barcode mapping, or WMS configuration before you blame the team. That is one of the clearest signs that the mismatch is coming from the system design, not just execution.

7. Adjustments are too easy, so nobody has to solve the real problem#

If supervisors can write off shortages, bump on-hands, or clear discrepancies without a root-cause review, inventory drift becomes institutionalized.

This is common in fast-moving sites where service level pressure is high and the team would rather protect the pick wave than stop the line. The problem is that every adjustment masks a real failure somewhere else. After a few months, nobody trusts the on-hand number, but everyone still uses it because there is no better option.

When we see heavy adjustment activity, we usually find one of three things underneath it: bad receiving, bad picking, or bad system configuration. The adjustment is the symptom. Not the cause.

Key takeaway: Inventory drift is usually a process problem first and a software problem second, but the software often exposes the process weakness faster than people want to admit.

Which items drift first#

The first items to go off are usually the ones with motion, ambiguity, or manual handling.

Start with these:

  • High-velocity SKUs that move through receiving and picking every day
  • Small, easy-to-miscount items
  • Products with case, inner, and each conversions
  • Lot-controlled or expiration-controlled inventory
  • Returns-heavy SKUs
  • Items stored in overflow, floor locations, or shared bins
  • Products with similar packaging or near-identical labels

If you are asking what causes inventory counts to drift between the system and the shelf over time?, the answer often shows up first in these SKUs because they have more touchpoints and more chances for a bad transaction. Slow movers can hide bad data for months. Fast movers reveal it in days.

A practical way to start is to sort your top variance SKUs by transaction count, not just dollar value. High touches usually explain the drift faster than expensive items do.

How much drift is too much#

There is no universal number where you can say the counts are still fine. The real threshold is operational, not theoretical.

If the same SKU is off by one or two units once in a while, and the error is isolated, that is a control issue. If the same family of items is repeatedly wrong, or if the variance pattern spreads across receiving, picking, and adjustments, you should stop trusting the count even if the percentage looks small.

A decent rule of thumb: once drift starts affecting replenishment, wave planning, or customer service decisions, it is already expensive. For many operations, that happens before the variance looks dramatic on a dashboard.

If you need a hard trigger, use one tied to behavior, not ego:

  • repeated negative on-hands on the same SKUs
  • frequent emergency adjustments
  • cycle count variance that does not improve after retraining
  • pick shorts that map to specific zones or shifts
  • receiving discrepancies from the same vendor or lane

When those show up together, freeze new assumptions, not necessarily all orders. Tighten the process, isolate the SKUs, and stop letting the system pretend it knows more than the floor does.

Where to start if you only have time for one audit#

If you can only audit one part of the process, start with receiving.

Receiving errors contaminate everything downstream. A bad receipt becomes a bad putaway, then a bad pick, then a bad adjustment. By the time the mismatch shows up in a cycle count, you are looking at the last symptom, not the first cause.

That said, if your site is a fulfillment-heavy operation with a lot of order volume and very few receipts, then picking may be the faster first check. The decision tree is simple:

If the symptom is mostly... Start here
Shortages on the same SKUs after orders ship Picking
Variance on newly received product Receiving
Stock in the wrong bin or overflow Putaway
Sellable vs damaged confusion Returns
Frequent end-of-shift corrections Cycle counts and adjustments

If you want the broader sequence, How Do I Start Improving Inventory Accuracy? 7 Steps is the better follow-on once you know where the drift is showing up.

How to tell software error from warehouse error#

This is where teams waste the most time.

If the mismatch follows a process, it is usually warehouse execution. If it follows a specific SKU attribute, label format, or transaction rule, it is usually WMS or barcode setup.

Look for these signs:

  • The same SKU is wrong across multiple shifts and multiple operators
  • Variance appears only after a specific scan type or transaction code
  • The error repeats on items with the same UOM structure
  • Counts are fine in one location type and wrong in another
  • The issue appears after a system change, label change, or master data update

If the warehouse team can scan the item correctly but the on-hand still lands wrong, the problem is often in the item master, pack conversion, label logic, or transaction mapping. That is not a labor issue. That is a system design issue.

If the error disappears when you manually count and manually key the adjustment, the WMS is probably exposing a bad setup. If the error persists even with manual work, the process itself is leaking.

How to separate bad receiving, bad picking, and bad adjustments#

Do not start with opinions. Start with a variance map.

Pull 30 to 60 days of:

  • receiving discrepancies by vendor and SKU
  • pick shorts and mis-picks by zone and shift
  • inventory adjustments by reason code and user
  • cycle count variance by location type

Then trace each mismatch back to the first transaction that could have caused it.

If the stock is wrong immediately after receipt, it is receiving. If it is right after receipt but wrong after order fulfillment, it is picking or replenishment. If it stays wrong until someone “fixes” it in an adjustment, the adjustment process is hiding the real problem. If the same item family keeps drifting and the transaction trail looks clean, check item master and barcode setup.

That is the fastest way to answer what causes inventory counts to drift between the system and the shelf over time? without turning the whole warehouse upside down.

For teams in Remote / nationwide, this kind of trace is usually more useful than a full physical inventory because it shows where the error enters the flow. In Danville, California, where many operators are running lean space with tight labor, that matters even more. You do not have time to recount everything. You need the leak.

What to do next#

Pick one SKU family, not the whole building. Pull its last 20 receipts, 20 picks, and every adjustment tied to it. Compare the transaction trail to the shelf count and mark the first place the numbers split. That will tell you whether you have a receiving issue, a picking issue, a returns issue, or a system setup problem.

If the drift is spread across multiple functions and you need someone to find the bottleneck, quantify the cost, and stay until the change sticks, Operations Diagnostics is built for that kind of work. It scores findings against SCOR stages and puts a dollar figure on what the mismatch is costing, which is a lot more useful than another generic recount.

Reading about it is the easy part.

If any of this sounded like your operation, a 30-minute diagnostic call will tell you whether it actually is — and what it is costing you.