Skip to content

25 August 2026 · TechSlideITS

Why your shop's stock count never matches the system

Everyone assumes the gap is theft. Usually it is six smaller things, and only one of them is theft.

Do a full physical count in almost any Indian retail shop and the numbers will not agree with the system. The immediate assumption is theft, and the immediate response is suspicion of staff.

Theft is usually on the list. It is rarely the biggest item on it.

The six causes, roughly in order of size

Returns that came back but never went in

A customer returns an item, the money is refunded, the item goes back on the shelf, and nobody records the return in the system. Physical stock rises, system stock does not. In shops with frequent returns this alone accounts for much of the gap.

Damages and expiry written off nowhere

Broken, leaked, expired, faded in the window. The item leaves the shelf and goes in the bin, and the system still believes it is on hand. This is invisible by nature — nobody remembers a write-off that was never written.

Units that do not mean the same thing

Bought in boxes, sold in pieces. Bought by weight, sold by packet. Wherever a conversion happens in someone's head at the point of entry, errors accumulate — and they accumulate silently, because each individual entry looks reasonable.

This is the largest cause in hardware, paint, and anything sold loose.

Goods that left without a bill

Owner's own use, staff purchase, a sample to a customer, a display piece, something sent to a relative's shop. Every one is legitimate. None of them are theft. All of them create a gap unless recorded as a stock movement rather than as nothing at all.

Transfers between godown and counter

Where stock is held in two places and moved informally, the count depends on both being included and neither being double-counted. Most mismatches here are counting errors rather than missing stock.

And then, theft

Real, and worth taking seriously. But investigating it first, before eliminating the five above, is why these investigations damage staff trust and usually find nothing.

Why an annual count makes it worse

Counting once a year produces one enormous unexplained variance covering twelve months. Nobody can trace a difference back to a cause after that long, so it gets adjusted and forgotten — and the same thing happens next year.

Cycle counting works better: a small section counted frequently, on a rotation, so the whole shop gets covered over time. Differences are small, recent, and traceable to something that actually happened last week.

It is also far less disruptive than shutting the shop for a day.

What actually closes the gap

  • Record returns as returns, at the counter, at the time — not as a refund with no stock effect
  • Make damage write-off a routine entry, with a reason, so the loss is visible and countable
  • Define purchase and sale units once, with the conversion held by the system rather than by staff
  • Give non-sale removals their own document — own use, samples, staff purchase — so legitimate movements stop looking like shrinkage
  • Use barcodes where the range makes it worthwhile, because most entry errors are typing errors
  • Cycle count rather than counting annually

What a realistic target looks like

Zero variance is not the goal and chasing it wastes effort. The goal is variance small enough, and recent enough, that each difference can be explained.

Once the five non-theft causes are handled, whatever remains is a much smaller number — and if it is still material, then you have a genuine question worth investigating, with evidence rather than suspicion.

If you want to see how this is handled at the counter, see our retail and trading system or book a demo.

FAQ

Frequently asked questions

Usually six causes: returns taken back but never recorded, damages and expiry written off nowhere, unit-of-measure conversions done in someone's head, goods removed legitimately without a document, informal godown-to-counter transfers, and theft. Theft is generally the smallest of the six, which is why investigating it first tends to find nothing.

Counting a small section frequently on a rotation, so the whole shop is covered over time. An annual count produces one enormous variance covering twelve months that nobody can trace, so it gets adjusted and forgotten. Cycle counting produces small, recent differences you can actually explain — and does not require closing the shop.

When goods are bought in one unit and sold in another — boxes to pieces, weight to packets — and the conversion happens in someone's head at entry. Each individual entry looks reasonable, so errors accumulate silently. It is the largest cause in hardware, paint and anything sold loose. Defining the conversion once in the system removes it.

Yes, as their own document type. They are entirely legitimate, but if they leave no record they are indistinguishable from shrinkage. Giving them a stock movement of their own means the remaining unexplained variance is genuinely unexplained.

Not zero variance — chasing that wastes effort. The goal is variance small enough and recent enough that each difference can be explained. Once the non-theft causes are handled, whatever remains is much smaller, and if it is still material you have a real question worth investigating with evidence rather than suspicion.

Want ERP that fits your business?

Book a free demo and see how TechSlideITS ERP works for your industry.

Chat on WhatsApp
Why Retail Stock Counts Never Match the System | TechSlideITS