BlogResources

How to automate inventory tracking when the count is always wrong

Recorded stock and physical stock diverge continuously. Reconciliation, the thresholds that should depend on lead time, and overselling across channels.

Amman VediAmman Vedi11 min read

Summarize with AI

How to automate inventory tracking when the count is always wrong
On this page

To automate inventory tracking, build the automation that measures the gap between recorded and physical stock first, then build reorder alerts on top of it. Recorded stock never matches the shelf exactly, so any automation that acts on the raw number inherits the error.

A reorder that fires on a count wrong by six units orders the wrong amount. An availability figure wrong by one unit sells something you cannot ship. Reconciliation, lead-time thresholds, and per-channel buffers address those failures in that order.

What we'll cover

Key takeaways

  • Recorded stock and physical stock diverge continuously, so measure the gap before automating on the number.
  • Set each reorder point from the supplier's lead time and the recent rate of sale, then recalculate it as sales change.
  • Hold a stock buffer per sales channel, and update availability when a sale happens, to limit overselling.
  • Write low-stock alerts as days of cover, with lead time and open orders beside the number.
  • Track measured supplier lead times, because a supplier that drifts from two weeks to four invalidates every reorder point built on the old figure.

Recorded stock is not physical stock

Recorded stock differs from physical stock because of six ordinary causes, and the gap is a property to measure, not a failure to eliminate.

Damage and breakage are recorded late or not at all.

Returns re-enter stock at different points depending on who processes them and how.

Miscounts at receiving happen when a delivery of forty-eight is recorded as fifty.

Shrinkage (stock lost to theft or error) is a real number in retail and warehousing, and teams rarely discuss it until a count.

Items in the wrong place are present but unfindable. For fulfilment purposes, an unfindable item is absent.

Timing matters too. Stock allocated to an order that has not shipped is neither available nor gone, and different systems treat it differently.

Measuring the gap tells automation built on the number how much to trust it.

Reconciliation, which comes first

Reconciliation means counting physical stock regularly and comparing the result with the recorded number. Count a weighted subset every week instead of everything once a year.

Use cycle counting. Count a subset each week, weighted towards fast-moving and high-value items, to produce a continuous picture.

Record the variance, not just the correction. Adjusting the number and moving on loses the information. The variance history shows which items and locations drift.

Report variance by item and by location. A concentration in one item or one location points to a process problem with a findable cause.

Compare against the system of record, and be clear which system that is when there are several.

Watch the trend. Rising variance means a process has changed. Finding it early costs less than finding it at the annual count.

Set your confidence from the history. An item with consistently accurate counts can drive automation directly. An item that drifts needs a buffer.

Thresholds that depend on lead time

A reorder point is the supplier's lead time multiplied by the rate of sale, plus a buffer. A round number chosen once makes low-stock alerts noise.

Lead times differ per supplier, sometimes by weeks, so one threshold applied to every item is wrong for most of them.

The rate of sale changes with seasons and promotions, so a threshold set in January is wrong by June.

Recalculate the threshold from recent sales instead of leaving it static. This is a tedious recurring calculation, which makes it a good candidate for automation.

Size the buffer to demand variability. An item with erratic demand needs more cover than an item that sells steadily.

Alert with enough time to act. An alert that fires when stock is already below the lead-time requirement announces a stockout that has already been decided.

Building it with CodeWords

CodeWords connects to 3,000+ integrations (CodeWords pricing page, 2026), so stock, sales, and supplier data can be combined without anybody exporting a spreadsheet.

  1. Open CodeWords and start a new automation.
  2. Describe what should happen in plain language to Cody, the automation builder: which items, which thresholds, and who should be told.
  3. Authorize the connections: the commerce platform, the inventory system, and wherever alerts go.
  4. Describe the exceptions: an item with no recent sales, a supplier with no lead time recorded, a negative stock level.
  5. Run the automation against last quarter's data and compare the alerts it would have produced with what actually happened.

You describe the outcome; Cody builds it, connects it, and deploys it. The Free plan costs $0, Pro costs $39 per month, and Business costs $100 per month (CodeWords pricing page, 2026). Details are on the pricing page.

Overselling across channels

Overselling happens when two sales channels sell the last unit before either updates its availability. Multichannel selling makes overselling certain without a plan, so hold a buffer per channel and decide the response in advance.

Each channel holds its own view of availability, updated on a delay.

Two channels selling the last unit at the same moment is a certainty to plan for, not a race condition to eliminate.

Hold a buffer per channel instead of exposing the full count everywhere.

Update availability when a sale happens, not on a schedule. The window between sale and update is when overselling happens.

Decide the response in advance: fulfil from elsewhere, offer an alternative, or refund promptly. Improvising is worse.

Tell the customer quickly. An oversell handled within the hour with an honest message is recoverable. An oversell the customer discovers a week later is much harder to recover.

What a low-stock alert should say

A low-stock alert should state days until stockout at the current rate, the lead time, any open order, and what the item sells. Units remaining alone is not actionable.

Days until stockout is the number somebody can act on.

The lead time makes the urgency obvious without a lookup.

Whether an order is already placed, and when it arrives. Duplicating an existing purchase order is the commonest wasted response to a stock alert.

Value and velocity allow prioritisation across a long alert list.

Group the alerts. One message listing eleven items gets read; eleven messages do not.

Send the alert to whoever places orders, on a schedule that matches their ordering rhythm rather than in real time.

The stock that never moves

Slow-moving stock is capital sitting in a warehouse, and it accumulates unnoticed because nothing prompts a review. A monthly report of items with no sales makes the cost visible.

Report items with no sales in a period, with the value tied up, monthly.

Include the storage cost where you can. The figure changes the question from "we might sell it" to "waiting costs this much".

Flag stock approaching expiry or obsolescence early enough to discount it instead of writing it off.

Report overstock relative to sales rate. An item with two years of cover is a decision somebody made and nobody revisited.

Teams usually watch for stockouts and rarely report on the opposite problem, so this is a useful gap to automate.

Suppliers, who are half the problem

Supplier delays are a main source of stockouts, and most stock automation stops at your own walls. Track each supplier's actual lead time and feed it back into your thresholds.

Track actual lead times, not promised ones. Compare the two for each supplier.

Record lead time per supplier and per item. A supplier reliable on one line can be consistently late on another.

Chase automatically. A purchase order past its expected date with no update needs a message, and nobody sends one until somebody notices a stockout.

Report delivery accuracy (on time, in full). The figure makes a supplier conversation concrete instead of anecdotal.

Watch for creeping lead times. A supplier drifting from two weeks to four invalidates every reorder point built on the old figure.

Feed the measured lead time back into the thresholds automatically, so reorder points stay correct as suppliers change.

Making inventory automation reliable

Inventory automation stays reliable when it reconciles before acting, handles bad data, and reports what it skipped.

Handle negative stock. Negative stock is a data quality signal, and it happens.

Reconcile before acting. An automation that reorders on an unreconciled number orders the wrong amount confidently.

Match items by a stable identifier across systems, because names and descriptions differ and variants multiply.

Handle the item with no sales history. A rate-based threshold cannot work for such an item, so it needs a different rule.

Report the outcome: items checked, alerts raised, variance found, and anything skipped for missing data.

Limits of inventory automation

Inventory automation has five limits that affect design.

Stock levels lag reality by however long it takes a physical event to be recorded, which is never zero.

Multi-location stock complicates everything. Total stock and stock available in one location are different numbers, and most automations conflate them.

Variants multiply. An item available in one size and not another is a common source of customer frustration that is invisible at the product level.

Bundles and kits consume components in ways that simple stock tracking misses.

API rate limits (caps on requests per minute) can apply during peak trading, when accuracy matters most.

What to build first

Build the variance report from cycle counting first: count a weighted subset each week, record the variance rather than only the correction, and report by item and location monthly. Everything else in this guide builds on the stock number, and the variance report shows how far to trust it.

Two habits make the difference. Record the variance instead of silently correcting it, because the history identifies the items and locations that drift. And express low-stock alerts as days of cover, because units mean little without the sales rate and the lead time beside them.

Frequently asked questions

Why is the recorded stock level always wrong?

Recorded stock is wrong because of damage, returns, miscounts at receiving, shrinkage, items in the wrong place, and stock allocated to unshipped orders. None of these causes is unusual. Treat the gap as a property to measure, not a failure to eliminate.

What should a reorder point be?

A reorder point is lead time multiplied by the current rate of sale, plus a buffer for demand variability. Recalculate it from recent sales instead of setting it once. A single round number applied to every item is wrong for most items.

How do I stop overselling across channels?

Hold a stock buffer per channel instead of exposing the full count everywhere. Update availability when a sale happens, not on a schedule, and decide in advance what happens when an oversell occurs: fulfil from elsewhere, offer an alternative, or refund promptly.

What should a low-stock alert contain?

A low-stock alert should contain days of cover at the current rate, the lead time, whether an order is already placed, and what the item sells. Units remaining alone is not actionable, and duplicating an existing purchase order is the commonest wasted response.

What is the most overlooked inventory problem?

Stock that never moves is the most overlooked problem. Teams watch for stockouts constantly, but rarely report items with no sales or the capital tied up in them. A monthly report of zero-sales items and their value makes the cost visible.

Should automation place purchase orders?

Automation should place purchase orders only for well-understood items with reconciled counts and reliable suppliers, and even then with a human review. An order placed on a count that is wrong by six units is wrong by six units, with full confidence.

How often should stock be counted?

Count stock continuously in subsets, using cycle counting weighted towards fast-moving and high-value items, instead of counting everything once a year. Keep the variance history as well as the corrections, because the history shows which items and locations drift.

Should reorder points use the promised lead time?

No, reorder points should use the measured lead time. Compare each supplier's promised and actual delivery dates, and feed the measured figure back into thresholds automatically. The thresholds then stay correct as suppliers drift, instead of being adjusted after a stockout.

What supplier data is worth collecting?

Collect actual lead time per supplier and per item, and delivery accuracy (on time and in full). Both figures make a supplier conversation concrete. A supplier drifting from two weeks to four silently invalidates every threshold built on the old figure.

Get started today

Your first workflow is free to build.

Describe what you need. Cody handles the build, the connections, and the deployment.