MoneyStock
The items you are selling below your own cost
Some lines on your shelf lose money on every sale and look busy doing it. Here is where the loss hides, how to find it in ten minutes, and what to do next.

It happens when your buying cost rises and your counter rate does not. The packet that cost Rs 82 now costs Rs 97, transport adds Rs 3, and you are still selling at Rs 95. Nothing looks wrong, the line moves fast, and every sale takes money out of the shop. Ten minutes a week finds it.
How an honest shop starts selling at a loss
Nobody decides to do this. It arrives through a series of perfectly reasonable moments, which is exactly why it survives for years.
You set a rate when you first bought the item, and it was a good rate. Then the supplier's price crept up by a few rupees, twice, at different visits. Neither rise was big enough to notice on a bill with thirty lines on it.
Meanwhile the shelf label stayed where it was, because rewriting labels is a job nobody enjoys and customers remember the old figure anyway. And the item kept selling, which felt like proof that the rate was right.
That is the whole mechanism. A rate that was correct once, a cost that moved quietly, and a gap between them that nobody was looking at. The fast-moving items are the worst affected, because a fast-moving item is one you buy often, so its cost changes more often than anything else on your shelf.
The arithmetic almost nobody does
Put one packet through the calculation properly, including the parts people leave out.
Say one fast-moving packet whose rate never moved
Look at where the Rs 3 came from. Transport, loading and the two packets in every carton that arrive damaged are all real costs of putting that item on your shelf, and almost nobody adds them to the buying rate. They are small individually, and on thin-margin goods they are the difference between earning and losing.
Then look at the last line. Forty packets a week is a good, healthy line, and it is quietly taking Rs 200 out of your shop every week. Over a year that is a serious amount, taken from a product that everybody in your shop would describe as one of your best sellers.
This is why shopkeepers sometimes have a busy shop and no money at the end. The busyness is real and so is the emptiness, and the two are connected through exactly this kind of line. If your profit never seems to match how much you sold, the method in working out your shop's real profit is where to start.
The six places the loss hides
Once you know the shapes, you find them faster.
The places a below-cost rate usually hides
- A supplier rate that rose quietly between two visits
- A scheme that reduced the pack size, not the price
- Transport, loading and breakage never added in
- A wholesale rate given to somebody buying two pieces
- An old label on the shelf nobody rewrote
- A rounding-off habit that always goes downward
The scheme one deserves special attention because it is so easy to miss. A supplier keeps the price the same but reduces the pack from 500g to 450g, and your rate per packet is unchanged, so nothing appears to have happened. Your cost per unit of what you are actually selling has gone up by a tenth.
The wholesale rate one is the most common in shops that serve both kinds of customer. Somebody buys two pieces and asks for the bulk rate, you give it because it is easier than arguing, and the discount you built for a customer taking twenty pieces is now going to somebody taking two. Keeping those two rates honestly separate is its own skill, and running a retail and a wholesale rate in one shop covers how.
The rounding habit is worth a moment of self-examination too. Rs 97 becomes Rs 95, never Rs 100. Done all day, on thin-margin items, that habit alone can eat most of a small shop's earnings.
Start your digital khata today
Free to start. Works offline. English, Roman Urdu & Hinglish. Your customers get their app free, forever.
Catch it in ten minutes a week
You do not need a full stock count. You need a habit small enough that you actually keep it.
Ten minutes a week that catch it early
- 1Write the buying rate down at the moment goods arriveNot from memory at closing time. The bill is in your hand exactly once, and that is the only moment the number is certain.
- 2Compare the new bill against the previous oneTwo minutes with two bills finds every rate that moved. Suppliers rarely announce a rise, not out of dishonesty, but because nobody announces a rupee.
- 3Recheck the shelf label on anything that movedThe gap between a changed cost and a changed label is where the whole loss lives. Close it the same day, while you still remember why.
- 4Pick your ten fastest lines and check only thoseA loss on a slow item costs you a little; the same loss on a line you sell forty times a week is real money. Check where the volume is.
The first step is the one that makes all the others possible. Write the buying rate down when the goods arrive, while the bill is in your hand. Memory at closing time is not good enough, because you will remember what you expected to pay rather than what you paid.
If your stock lives in an app this becomes almost automatic. Wasoolo keeps a buy rate against each product, so when you enter new stock at a different rate the change is in front of you rather than buried in a bill, and the profit view shows what each line is actually earning instead of what you assume it earns.
The second step is the one that saves the most money. Keep the previous bill from each supplier and lay it beside the new one. Suppliers are not hiding anything; a rupee is simply not worth announcing to them, and it is very much worth noticing for you. This is also the moment to check whether a credit purchase is quietly costing more than a cash one, which is the trade-off in buying stock on credit.
What to do with the items you find
Finding one is not a disaster. Fixing it is usually simple, and the choice is only ever between four moves.
Raise the rate. On most items this is fine, especially if the increase is small and the whole market has moved. Do it quietly, on the label, without an announcement, and very few people will comment.
Change the pack. If your customers are sensitive to a familiar number, sell a slightly smaller quantity at the same price rather than a bigger number for the same quantity. Shoppers often accept this more easily, and it keeps the item on the shelf.
Change the supplier or the pack you buy. Sometimes the same goods are available at a workable cost from a different source or in a larger carton, and the problem disappears without touching your counter rate at all. Deciding how to price the replacement is the subject of how to price what you sell.
Or stop stocking it. An item that cannot earn at a price your customers will pay is not a product, it is a habit, and dropping it frees both cash and shelf space, which is the same logic as clearing out stock that never sells.
When selling below cost is actually the right call
There are real reasons to sell something at a loss, and they are worth naming so you can tell them apart from carelessness.
Clearing goods that are near their end is one. A packet that expires soon is worth whatever somebody will pay today, and holding out for a full rate usually ends with it worth nothing at all.
Drawing people in with one known line is another, and shops on every street do it. One item everybody checks the price of, sold at a rate that barely earns, brings in customers who buy four other things at normal rates. That is a decision, and it works, provided you know which item it is and what it is costing you.
The difference between these and the accidental version is simply knowledge. A loss you chose has a purpose and a limit; a loss you did not notice has neither, and it keeps growing quietly for as long as the line keeps selling.
Start your digital khata today
Free to start. Works offline. English, Roman Urdu & Hinglish. Your customers get their app free, forever.
Common questions
Should I add transport and breakage to every item's cost?
On thin-margin goods yes, because that is where those few rupees decide whether you earn anything. A practical method is to take a whole delivery, add the transport and the damaged pieces to the total bill, and work out the percentage that adds to your costs, then apply that percentage across the load. It is not perfect for every individual line, but it is far closer to the truth than pretending those costs do not exist.
My customers will not accept a higher rate. What then?
Test that belief before you accept it, because it is often stronger in your head than in theirs. Most rate increases on everyday goods pass with no comment at all, especially when the whole market has moved and people are seeing it elsewhere too. If a particular item genuinely cannot carry a higher price, then it is a decision between a smaller pack, a different supplier, or not stocking it, but do not keep selling at a loss simply because the conversation feels difficult.
How do I know my buying cost if I never wrote it down?
Start from your next delivery rather than trying to reconstruct history. Write the rate for every line as the goods come in, and within one buying cycle you will have real costs for everything you sell regularly. For the ten items that matter most, you can also simply ask your supplier what he is charging you today, which takes a phone call and settles it immediately.
Is a small loss on one item worth worrying about?
It depends entirely on how often it sells, which is why volume is the thing to check first. A rupee lost on something you sell twice a week is genuinely not worth your attention. The same rupee on something you sell fifty times a week is a real hole, and the items that sell fifty times a week are precisely the ones whose cost moves most often, so they deserve almost all of your checking time.
Should I tell customers why the rate went up?
Only if they ask, and then keep it short and factual: the cost from the supplier moved. Long explanations sound defensive and invite negotiation, while a plain answer usually ends the conversation. What genuinely helps is consistency, so a customer who buys the item every week sees one clear change rather than a rate that seems to depend on your mood that day.
My helper sells at whatever rate he remembers. How do I stop that?
Put the rate where it can be read rather than remembered, on the shelf, on the packet or in the app he is looking at. Most rate mistakes by helpers are memory failures, not decisions, and they get worse every time a price changes. Then make one rule explicit, that nobody gives the bulk rate without asking you, because that single exception is where most of the unplanned discounting in a small shop comes from.