When inventory accuracy is poor, companies buy more “just in case,” expedite more “just in time,” and write off more “just because.” Cycle counting is necessary. It is not sufficient. Several ERP settings silently invent or destroy stock every day while dashboards still show a comforting on-hand number.
The usual suspects
- Negative inventory allowed: the system ships air and your ATP becomes fiction.
- Backflush without scan discipline: components disappear from the wrong location.
- Default lead times of 1 or 999: planning either panics or never launches.
- Uncontrolled inventory adjustments: a reason-code of “misc” is a cash leak.
- Multiple bins, one forgetful issue transaction: stock exists, just not where picking looks.
Configuration checks this quarter
| Setting / process | Healthy pattern | Cash drain pattern |
|---|---|---|
| Negative stock | Blocked except quarantined roles | Enabled globally “to keep shipping” |
| Adjustments | Dual control above threshold | Any user, any amount |
| WMS / ERP sync | Near real-time, exception queue | Nightly batch, silent fails |
| Count tolerances | Tight on A items | Same % on screws and engines |
| Scrap | Order-linked with reason | Negative adjustment at month end |
A 30-day accuracy sprint
- Measure accuracy by ABC and location type, not one plant-wide percentage.
- Turn off negative inventory in a pilot warehouse with executive air cover.
- Require reason codes mapped to GL accounts—no miscellaneous.
- Match ERP on-hand to WMS nightly and auto-ticket variances above $X.
- Publish a weekly “top 20 variance SKUs” with a named investigator.
Conclusion
Inventory accuracy is an ERP physics problem before it is a counting problem. Disable the settings that let the business ship fiction, tie every adjustment to a reason and an owner, and only then scale cycle counts. Cash returns as lower buffers, fewer expedites, and a close that finance can believe.