Markdown for agents
---
title: "How to do a stocktake: a step-by-step full inventory count for retail shops"
description: "Everything a shop needs to run a full physical count in one session: preparation, a count-sheet template, recounts and posting the variance."
canonical: "https://sandooq.app/blog/stocktake-full-inventory-count"
locale: "en"
updated: "2026-11-02T00:00:00.000Z"
---
# How to do a stocktake: a step-by-step full inventory count for retail shops
Everything a shop needs to run a full physical count in one session: preparation, a count-sheet template, recounts and posting the variance.
**Tags:** inventory, stocktake, stock-control, guides
A stocktake is a full physical count of every item in a shop at a fixed cut-off time, compared with what the system says you should have. The difference, the variance, is investigated, recounted where needed and posted as an adjustment, so the books and the shelves agree again.
Wikipedia defines stocktaking as [the physical verification of the quantities and condition of items held in an inventory](https://en.wikipedia.org/wiki/Stocktaking): how many you have, and how many can still be sold. This guide is the shop-floor procedure for one store, with a count sheet to copy. For the everyday routines around it, see our guide to [inventory management for retail stores](/blog/inventory-management-retail).
## Stocktake vs cycle count: when you need a full count
A full count is expensive: everyone counts and the shop slows down or closes. It earns that cost when you need one trustworthy number for the whole shop at one moment:
- **Year end.** Wikipedia notes that [an annual end-of-fiscal-year stocktake is typically undertaken for use in a company's financial statements](https://en.wikipedia.org/wiki/Physical_inventory), often with the external auditors present. Your accountant will say whether your books need one.
- **Moving to a new system.** Opening stock should be a count, not last month's spreadsheet.
- **A change of owner or manager,** so both sides agree on what is handed over.
- **After a suspected theft,** or **when nobody trusts the numbers any more.**
The rest of the year, counting a few sections at a time is enough: the same entry describes [cycle counting as an alternative to physical inventory that may be less disruptive](https://en.wikipedia.org/wiki/Physical_inventory).
| | Full stocktake | Cycle count |
|---|---|---|
| When it fits | Year end, new system, handover, after a theft | Every week, all year |
| Effect on trading | Selling stops or slows for hours | Fits around trading |
| Who counts | The whole team in pairs, plus a supervisor | One or two people |
| What you get | One baseline for the whole shop at a single cut-off | Errors caught while the cause is fresh |
Most shops need both: one full count a year and [weekly cycle counts](/blog/inventory-cycle-counts) in between. This guide covers the first.
## Before the count: preparation and cut-off
Most stocktake errors are made before anyone counts anything. In the week before:
1. **Pick the date and cut-off time.** The cut-off is the moment the count describes: what sold before it has gone, what arrives after it does not exist yet. Before opening or after closing is cleanest; if you must keep selling, fence off areas until they are counted.
2. **Finish receiving.** Post every delivery and supplier return before the cut-off. Ask suppliers not to deliver on count day; anything that arrives waits in a marked area until after.
3. **Get every sale into the system.** Make sure each till is online and has sent its sales. A sale made before you counted that reaches the system afterwards looks like a sale made after the count.
4. **Tidy the shelves.** One place per product; damaged and expired goods go in a box marked "not for sale".
5. **Map the shop into numbered zones:** a shelf run, a fridge, the stockroom, the window. Number them on a floor plan and on the shelves, and print one count sheet per zone.
6. **Brief and pair the team.** Each pair gets its zones, a pen and the rules below. One supervisor holds the master list and ticks off a zone only when its sheet comes back signed.
In Sandooq, a count can cover a whole store or one section. The count screen lists every product under its category with how many have been counted, and you can post a category as soon as it is finished. Selling can carry on: each product line is compared with stock at the moment you entered its quantity, so a sale rung up after you counted a shelf is kept rather than erased. One count holds up to 500 lines, so a large stocktake is entered as several counts, one per zone or category.
## The count sheet (template)
Paper is still the most dependable tool on count day: it works without a network, shows who counted what, and becomes the record your accountant asks for. Print one per zone.
| Zone / shelf | Barcode or product code | Product name | Unit | Counted qty | Counted by | Checked by | Recount qty | Note |
|---|---|---|---|---|---|---|---|---|
| Zone 3 / shelf 2 | (from the pack) | Cooking oil 1.5 L | carton of 12 | 4 | AH | RM | | |
| Zone 3 / shelf 2 | (from the pack) | Cooking oil 1.5 L | piece | 7 | AH | RM | | 1 leaking, moved to damaged box |
| Zone 7 / bin 1 | (shop code) | Loose dates | kg | 3.25 | SK | AH | 3.40 | Weighed twice on recount |
| | | | | | | | | |
| | | | | | | | | |
*The filled rows are an illustration.*
Rules that keep the sheet honest:
- **No "expected" column.** The sheet records what is there, not what should be.
- **One unit per line.** Full cartons and loose pieces go on separate lines with the pack size written in, so 4 cartons of 12 plus 7 pieces become 55 pieces, not 11.
- **Loose goods by weight, in kilograms,** to the decimals your system accepts.
- **Pen, not pencil.** Cross out a mistake and write the new figure beside it.
- **A blank is not a zero.** If a listed product is not on the shelf, write 0.
- **A zone is done only when both initials are on its sheet.**
In Sandooq, packs and selling units convert to the product's base unit, so 2 cartons of 12 on one line and 5 pieces on another are added into one count of 29 pieces before they are compared with stock. A count in progress can be exported as a CSV file of its lines, with expected and counted quantities and the difference; because it shows the expected figure, use it for review, not as a blind count sheet.
## Counting methods that reduce errors
**Blind counts.** The counter does not see the quantity the system expects. People who know the expected number tend to find it: they stop at 24 because the system said 24.
**Two-person counts.** One counts aloud, the other writes, and they swap halfway through a zone. For high-value items the second person counts again, and the line is written only when both numbers match.
**One direction, once.** Count each zone top to bottom, left to right, front to back, and mark each shelf when it is done so nothing is counted twice or skipped.
**Scan or write?** Scanning identifies the exact product, which matters when ten flavours share a shelf. But scanning 48 identical cans one by one invites double scans: count them and enter the total. Check barcodes before count day; our [barcode and SKU setup guide](/blog/barcode-sku-management-retail) covers shop codes for loose items.
**Damaged and expired goods on their own lines,** kept in the "not for sale" box and written off later as a disposal. Count dated stock by batch or expiry date; our guide to [expiry tracking for perishable stock](/blog/perishable-inventory-expiration-tracking) explains why.
In Sandooq, the count screen accepts barcode scans: each scan counts one, a repeat scan adds one and jumps to that line so you can type the total instead, and a carton's own barcode counts it in cartons. The screen shows the quantity on hand beside each line, so for a blind count, count on paper and key the sheets in afterwards. Products tracked in batches are counted lot by lot, and a lot line is compared with the lot's quantity when the count is posted, so post those lines soon after counting them.
## Recounts and finding the cause of a variance
Every large difference deserves a recount before anyone changes stock. Set the rule before count day; these thresholds are only an illustration:
- Recount any line more than 2 units, or more than a value you set, away from the system.
- Always recount your 20 highest-value products.
- Always recount when one product is over and a similar one is short.
A different pair does the recount without seeing the first count. If it matches the first count, the variance is real; if it matches the system, the first count was wrong.
Then find the cause before you post anything:
| What you see | Likely cause | Where to check |
|---|---|---|
| Short by exactly one carton | A delivery received short, or never received in the system | The delivery and its receiving record |
| One flavour over, a similar one short by the same amount | The wrong item scanned at the till | Sales of both on the same days |
| Short by a multiple of the pack size | Pack and piece mixed up at receiving or on the sheet | Units on the receipt and the sheet |
| A steady shortfall on small, valuable items | Theft | Movement history, then loss-prevention checks |
| Short with nothing in the records | Damage or expiry thrown away unrecorded | The bin, the damaged box, the staff |
Trace large variances through the product's movement history, where every sale, receipt, return and adjustment sits with its document. If it explains the gap, fix the cause; if not, it is a loss, and our guide to [shrinkage and loss prevention](/blog/loss-prevention-retail-shrinkage) covers what to do when the pattern repeats.
In Sandooq, each line on a count links to that product's movement history, which shows the document behind every quantity change, so you can trace a variance before you post it.
## Posting adjustments and approvals
After the recounts, the counted quantities go into the system and the differences are posted as adjustments. Three rules:
**Every adjustment carries a reason.** Keep the list short: count correction, damaged, expired, suspected theft, internal use. Reasons turn a pile of corrections into a report by cause.
**Large adjustments wait for a manager.** Whoever counted should not be the only person approving a large write-down. Decide which changes need a second signature, by size or by type.
**Damaged and expired goods are disposals,** recorded with their reason so the loss shows as a cost. The accounting standard [IAS 2 recognises a write-down of inventories, or a loss, as an expense in the period it occurs](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/).
In Sandooq, a count posts each difference as a stock adjustment under the reason you chose for the count, and lines that match stock create no entry. You define your own reason codes, so reports group the way you think. Approval sits on the reason rather than on the size of the change: mark a reason as needing approval, and stock changes posted under it wait for a manager before they take effect. While a count waits, sales keep reducing stock, and approving it later does not undo them. Damaged or expired stock is recorded as a disposal, with the loss posted to the expense account you chose, and the value of each adjustment posts to the ledger.
## Valuing the stock and reporting the result
Now the quantities need a value. Under [IAS 2, inventories are measured at the lower of cost and net realisable value](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/), and for items that are ordinarily interchangeable the standard names the [first-in, first-out or weighted average cost formula](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/). Which formula your books use is your accountant's call; the count's job is correct quantities at correct costs.
A one-page result for the owner:
| Line | Value at cost (illustrative figures) |
|---|---|
| Stock per the system before the count | 182,400 |
| Stock counted | 179,150 |
| Net shortage | 3,250 |
| of which count corrections (receiving and unit errors) | 1,100 |
| of which damaged and expired, disposed | 900 |
| of which unexplained | 1,250 |
| Cost of goods sold since the last full count | 640,000 |
| Unexplained shortage as a share of cost of goods sold | about 0.2% |
Watch the unexplained shortage against the same figure at your previous full count. Give the accountant the signed sheets, the cut-off date and time, the adjustments by reason and the list of disposals.
In Sandooq, every product carries its cost, and the value of each count adjustment and disposal posts to the ledger, so the books move with the count. Our guide to [a POS with accounting](/blog/pos-with-accounting) shows what else the till books for you, and [the POS back office](/blog/pos-back-office) covers the rest of the work behind the counter.
## After the stocktake: keep the numbers right
- **Start weekly cycle counts on fast movers and high-value items,** so the next variance turns up within days.
- **Fix the process behind the biggest variance:** count deliveries at the door, relabel look-alike products, or make a broken item easy to record the moment it happens.
- **Book the next full count now,** and file this year's sheets with the year's records.
- **Compare next year's result with this one.** A falling unexplained shortage shows the fixes worked.
Our hub on [running stock in a retail shop](/blog/inventory-management-retail) covers receiving, reorder points and the weekly reports that stop the numbers drifting between counts.
## Frequently asked questions
### What is a stocktake?
A stocktake is a full physical count of everything a shop holds at one fixed cut-off time, compared with the system's quantities. Differences are recounted, explained and posted as adjustments with a reason, so the system matches the shelves again.
### How often should a retail shop do a full stocktake?
Most shops do one full count a year, usually at year end, plus an extra one when they move to a new system, change owner or manager, or suffer a theft. Weekly cycle counts keep the numbers accurate in between.
### Can I keep selling during a stocktake?
You can, but it makes the count harder: count before opening or after closing, or sell only from areas not being counted. If you sell during the count, the system must compare each line with stock at the moment it was counted, or a sale made after a shelf was counted is wiped out and later shows up as a shortage.
### What is a blind count in a stocktake?
A blind count is one where the person counting does not see the quantity the system expects, so they cannot stop at the expected number or adjust their figure to match it. The result reflects the shelf, not the screen.
### What should I do if the count does not match the system?
Have a different pair recount the line. If the difference holds, check the product's movement history for unposted deliveries, pack-and-piece mix-ups and wrong items sold. Then post the difference as an adjustment with a reason, with a manager approving the large ones.
### What is the difference between a stocktake and a cycle count?
A stocktake counts the whole shop at one cut-off, usually once a year, and often means closing or slowing the shop. A cycle count covers a few sections at a time on a weekly rota while trading continues. The stocktake sets a complete baseline; cycle counts keep it accurate.
## Sources
- [Wikipedia — Stocktaking](https://en.wikipedia.org/wiki/Stocktaking) — stocktaking as the physical verification of the quantities and condition of items held in an inventory.
- [Wikipedia — Physical inventory](https://en.wikipedia.org/wiki/Physical_inventory) — year-end counts for the financial statements, often with external auditors present; cycle counting as a less disruptive alternative.
- [IFRS Foundation — IAS 2 Inventories](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/) — measurement at the lower of cost and net realisable value; first-in, first-out or weighted average cost; write-downs and losses recognised as an expense in the period they occur.
## Next step
See a stock count posted with its reasons and approvals: [book a demo](/demo) with your own products, or [see pricing](/pricing).