Inventory Management in Tanzania: 7 Ways to Stop Stock Losses

Practical stock control for Tanzanian shops: receiving, barcodes, adjustments, cycle counts and a step-by-step stock reconciliation with a worked TSh example.

By SmartBiashara Editorial TeamPublished 9 min read

Short answer

Most stock losses in Tanzanian shops come from five places: goods that never arrived, sales not recorded, damaged or expired items written off in nobody's book, theft, and counting mistakes. Receive every delivery against an order, barcode every product, record each adjustment with a reason, count a few lines every week and reconcile the gaps in shillings.

On this page

Every shop owner in Tanzania knows the feeling. The shelves look full, sales seem steady, yet the money at month end does not match what the business should have made. Very often the gap is stock that left the shop without being paid for, or stock that was paid for but never arrived. This guide covers seven habits that close those gaps, a worked stock reconciliation you can copy, and what a barcode system actually involves.

Where stock goes missing

Before fixing anything, it helps to name the leaks. In most dukas, wholesalers and mini-supermarkets they fall into the same few groups.

Source of loss How it usually happens What reveals it
Short deliveries Supplier delivers 18 cartons, the invoice says 20, nobody counts at the door Checking goods received against the purchase order
Unrecorded sales A sale is taken in cash or to a personal M-Pesa number and never entered Stock falls faster than recorded sales
Damage and expiry Broken bottles or expired yoghurt are thrown away without a record Adjustments with a reason code
Theft Staff or customers remove goods Spot counts on high-value lines
Counting and entry errors Wrong unit (carton vs piece), wrong item scanned, typing 100 instead of 10 Barcodes and reconciliation

Each of the seven habits below targets one or more of these rows.

7 ways to stop stock losses

1. Receive every delivery against a purchase order

Raise a purchase order (PO) for what you expect, then check the delivery against it before the driver leaves. Record a goods received note (GRN) for the quantities that actually arrived, not the quantities on the supplier’s invoice. If 2 of 20 cartons are missing, the GRN says 18, your stock goes up by 18, and the supplier ledger shows you owe for 18.

This habit stops a quiet and expensive loss: paying for goods you never received.

2. Give every product one identity

Duplicates cause chaos. If “Sugar 1kg”, “Sukari 1 kg” and “Sugar Kilo” all exist as separate items, sales land on one and deliveries on another, and neither count makes sense. Clean your product list once:

  • One name per product, in the language your staff actually use.
  • One unit of sale (piece, kg, carton) and a clear rule for converting cartons into pieces.
  • One barcode per item, whether from the manufacturer or printed by you.
  • A category for each item, so reports can group them.

3. Record every adjustment with a reason

Stock changes for reasons other than sales and purchases. A crate of eggs breaks, a box of biscuits expires, the owner takes soap home. Each of these should be an adjustment with a reason attached: damaged, expired, own use, found in count. Without a reason, every loss looks like theft and you cannot tell which problem to fix.

At month end, look at adjustments by reason and by value. A pattern of “damaged” on one product line usually points to poor storage or handling, which is cheaper to fix than to keep writing off.

4. Count a little, often

A full stock take once a year is too late to find out who was on shift when 30 bottles of cooking oil disappeared. Cycle counting means counting a small group of items regularly:

  • Every week: your 10 to 20 fastest sellers and anything expensive and easy to pocket (phones, perfume, spirits, airtime scratch cards).
  • Every month: one full category, rotating through the shop.
  • Every quarter or year end: a full count, ideally with the shop closed.

Count blind. Give the counter a list of items without the expected quantities, so they write down what they see.

5. Limit who can change what

Many losses happen through the till itself: a sale deleted after the customer leaves, a price changed for a friend, a stock adjustment made to cover a gap. Decide which roles can do what. A cashier sells. A manager approves refunds, price changes and adjustments. The owner sees everything. Make sure every action carries a user name so you can trace it.

6. Track batches and expiry dates

For pharmacies, food shops and agrovets, expiry is a major source of loss. Record the batch and expiry date when stock is received, then check an expiry report each week and move short-dated items to the front or onto promotion. Selling a product at a small discount a month before expiry beats throwing it away.

7. Record every transfer between branches

If you run two shops, say one in Kariakoo and one in Mbagala, stock moves between them constantly. A phone call and a boda boda leave no record, so use a transfer in the system: branch A sends 10 units, its stock drops by 10; branch B confirms receipt, its stock rises by 10. If only 8 arrive, the gap is visible on the same day.

How to run a stock reconciliation

Reconciliation turns a count into decisions. Here is the routine, using an example of a general shop in Mwanza checking five lines on a Saturday evening after closing.

  1. Freeze activity. Finish all sales, receipts and transfers for the day so the system figure is final.
  2. Count blind. Two people count each item; one counts, one writes.
  3. Compare. Put the system quantity next to the counted quantity.
  4. Value the gap. Multiply each difference by the buying cost, so you see the loss in shillings.
  5. Investigate before adjusting. Check unposted deliveries, pending transfers, sales entered under the wrong item and unit errors.
  6. Adjust with a reason. Only after checking, record the remaining difference as an adjustment with the best-known reason.
  7. Act. Decide one change for next week: tighter receiving, a moved shelf, a different person on the till.

The illustrative results might look like this:

Item System qty Counted qty Difference Cost per unit (TSh) Value of gap (TSh)
Rice 25 kg bag 42 40 -2 62,000 -124,000
Cooking oil 3 L 60 54 -6 14,500 -87,000
Sugar 1 kg 120 121 +1 2,900 +2,900
Bar soap (carton of 24) 15 15 0 21,000 0
Toothpaste 100 g 48 41 -7 2,300 -16,100
Total -224,200

In this example the rice gap turns out to be a delivery recorded as 20 bags when 18 arrived, so the fix belongs at the receiving door. The cooking oil and toothpaste gaps have no paperwork explanation and both are small, easy-to-carry items, so they go on the weekly spot-count list. The extra bag of sugar was a sale scanned as the 2 kg pack, which a barcode on each size would have prevented.

Barcode systems: what you need

A barcode system has three parts: codes on the products, a scanner at the till and on the store floor, and software that knows which code belongs to which item.

Codes. Most packaged goods already carry a manufacturer barcode. Scan it once when you create the product and it is linked from then on. For goods you pack yourself (rice in 1 kg bags, spices, hardware sold loose) you need your own codes printed on labels. Use one code per product and size, and stick labels where they will not rub off.

Scanners. A basic USB scanner that plugs into a laptop or desktop is enough for one till. Wireless scanners help when you receive goods in a store room away from the counter. Ask your hardware supplier for current prices and confirm that the scanner works as a keyboard input, which is how most POS systems read it.

Software. The POS should find an item instantly when its code is scanned, and the same code should work when receiving, counting and transferring stock. That way, counting a shelf becomes scanning a shelf, and there are fewer unit mistakes.

A sensible rollout for an existing shop is to label your top 100 sellers first, run a week with them, then add the rest category by category.

Weekly stock control checklist

  • Every delivery this week has a GRN that matches what physically arrived.
  • No supplier invoice was paid without a matching GRN.
  • All adjustments this week have a reason, and a manager approved them.
  • Top 20 sellers and high-value items counted blind; gaps valued in TSh.
  • Expiry report checked; short-dated stock moved forward or discounted.
  • Transfers between branches confirmed at both ends.
  • Low-stock list reviewed and purchase orders raised.
  • Deleted sales, refunds and price changes reviewed by user.

Doing this in software

You can run every habit above on paper and Excel, and some careful owners do. The cost is time: matching notebooks, retyping counts and chasing branch figures by phone. Inventory software makes the records automatic as a side effect of selling, receiving and moving stock.

SmartBiashara’s inventory management module covers the pieces this guide relies on: real-time stock, adjustments, batch and expiry tracking, inter-store transfers, purchase orders, GRNs and supplier ledgers, with barcode scanner support at the till and Excel bulk import for your product list. Admin, Manager and Cashier roles let you decide who can do what. It sits inside a wider ERP system that also handles sales, accounting and reports, so a stock loss shows up in your profit figures as well as the stock report.

Plans are priced in TSh and exclude VAT:

Plan Monthly (TSh) Locations Products
Starter 15,000 1 1,000
Basic 35,000 3 5,000
Standard 45,000 5 25,000
Enterprise 55,000 50 Unlimited

See the pricing page for yearly rates and full limits. Every plan starts with a 14-day free trial with no credit card required, which is enough time to import your products, label your top sellers and run two weekly spot counts before you decide.

Questions about this topic

Still have a question? Ask our team on WhatsApp, phone or email.

How often should a small shop count its stock?

Do a full count at least once a quarter and at year end, and count a small group of fast-moving or high-value items every week. Weekly spot counts catch problems while the staff involved still remember what happened.

What is stock reconciliation?

It is comparing the quantity your records say you should have with the quantity you physically count, then finding and recording the reason for each difference. The result is a corrected stock figure and a list of losses valued in shillings.

Do I need barcodes for every product?

Barcodes help most where you sell many lines or have several cashiers. Products that already carry a manufacturer barcode can be scanned as they are. For loose or locally packed goods, print your own labels so every item is scanned the same way.

Can inventory software stop theft completely?

No software stops theft on its own. What it does is make losses visible quickly, show which product, branch and user they relate to, and limit who can change prices, delete sales or adjust stock.

All articles
  1. Industry guides

    Which Software Can Manage My Supermarket Inventory? A POS Setup Checklist

    Choosing and setting up supermarket POS in Tanzania: what the software must handle, how to size a plan, and a go-live checklist you can follow.

    10 min read

  2. POS

    Which POS Software Supports M-Pesa in Tanzania? How to Accept and Reconcile Mobile Money

    How Tanzanian shops take M-Pesa, Airtel Money and Tigo Pesa at the till, what 'supports M-Pesa' means in a POS, and a daily routine to reconcile each channel.

    9 min read

  3. POS

    Best POS Software in Tanzania: Prices in TSh, Features and How to Choose

    Choose POS software in Tanzania by what matters at the till: TSh prices, mobile money, offline sales, stock, branches and TRA receipts. A fair buying guide.

    9 min read

See how this works with your own stock and sales

Start a 14-day free trial with no credit card, or book a demo and our team will set it up with you.