Inventory Cycle Counting for Contractors: A Practical Guide
The short answer: Cycle counting replaces the once-a-year shutdown count with small, frequent counts spread across the year. Rank your items by value and movement, count the expensive fast movers monthly, the middle tier quarterly, and the long tail once a year. Count a short list, scan instead of typing, record the variance, and find the cause before you adjust. CRMb tracks stock by location, scans barcodes on the spot, and keeps an average cost per item so a count adjustment lands on the right dollar figure.
Most contractors count inventory once a year, in December, badly. The warehouse closes, everyone counts with a clipboard, the numbers do not match, and someone types in whatever it takes to make the sheet balance. Nothing is learned. The same shrinkage happens again next year.
Cycle counting is the alternative. Nothing dramatic — just a small count, often, on a schedule you can actually keep.
What cycle counting is
A cycle count is a partial physical count of inventory performed on a recurring schedule, so that over the course of a year every item gets counted at least once and your highest-value items get counted many times.
The trade is straightforward. An annual wall-to-wall count gives you one accurate day out of 365. Cycle counting gives you a warehouse that is roughly right every day, because errors get caught within weeks instead of within a year.
It also costs less. Counting 30 items on a Tuesday morning takes twenty minutes. Counting 3,000 items in one day takes the whole crew and a closed shop.
Step 1: Rank your items (ABC analysis)
Not every item deserves the same attention. A pallet of copper fittings and a bin of zip ties do not carry the same risk.
Sort your item list by annual usage value — unit cost multiplied by how many you consume in a year — and split it into three groups:
| Class | Share of items | Share of value | Count frequency |
|---|---|---|---|
| A | ~20% | ~70-80% | Monthly |
| B | ~30% | ~15-25% | Quarterly |
| C | ~50% | ~5% | Once or twice a year |
The percentages are a starting point, not gospel. Adjust for your own risk. Items that walk off easily — copper, brass fittings, power tools, high-end fixtures — belong in A regardless of what the math says.
Step 2: Build the count schedule
Divide each class into batches small enough to count in under thirty minutes.
An example for a shop with 900 SKUs:
- A items (180 SKUs): 9 batches of 20, one batch counted every other business day. Every A item lands once a month.
- B items (270 SKUs): 14 batches of about 20, one per week. Every B item lands quarterly.
- C items (450 SKUs): 18 batches of 25, one per week. Every C item lands twice a year.
That is roughly one A batch and one B or C batch per week — under an hour of labor for a warehouse that stays accurate all year.
Count first thing in the morning, before any material moves. A count taken mid-day while a truck is loading is a count you cannot trust.
Step 3: Count blind, and scan
Two rules make the difference between a real count and a rubber stamp.
Count blind. Do not print the expected quantity on the count sheet. If the counter can see that the system says 14, they will find 14. A blind count is the only one that produces an honest variance.
Scan, do not type. Typing part numbers off a shelf tag is where most "shrinkage" is actually born — a transposed digit becomes a phantom variance in two items at once. Scanning a barcode removes the whole error class. CRMb's barcode scanner uses the iPad camera, so a count is one person walking the racks with the device they already carry.
Count each stocking location separately. A warehouse, a second yard, and each truck are distinct locations, and rolling them into one number hides exactly the problem you are counting to find.
Step 4: Investigate variances before you adjust
A variance is information. Adjusting it away without asking why destroys the information and guarantees a repeat.
Work the short list of usual causes first:
- Unposted material usage. Parts went out on a job and nobody recorded them against it. This is the most common cause by a wide margin, and it means that job's cost is understated too.
- Untracked transfers. Stock moved from the warehouse to a truck without a transfer record.
- Receiving errors. A purchase order was received in full when the supplier shorted the delivery, or a case quantity was entered as an each.
- Miscount. Recount before you conclude anything else. A second count resolves a surprising share of variances.
- Wrong unit of measure. A box of 100 counted as one.
- Theft or breakage. Real, but far less common than the paperwork causes above. Conclude it last, not first.
Set a materiality threshold so the process stays sane: investigate any variance above a set dollar value or above a set percentage of on-hand quantity, and accept small ones on low-value items. Recount every A-class variance before adjusting, without exception.
Step 5: Adjust, and cost it correctly
Once the cause is known, adjust the on-hand quantity — and understand what that adjustment does to your books.
If parts went to a job and were never posted, the fix is not a shrinkage write-off. It is posting the materials to the job, where they belong. That corrects both the stock count and the job's margin, which was quietly overstated the whole time.
If the parts are genuinely gone, the adjustment is a cost of doing business and should be visible as one. CRMb holds an average cost per item, so an adjustment is valued at what you actually paid across your receipts rather than at whatever the last invoice happened to say.
Write the reason on every adjustment. Six months of adjustment reasons is the most useful document in the warehouse — it tells you exactly which process is leaking.
Step 6: Watch the trend, not the count
A single count tells you today's number. The trend tells you whether your process is working.
Three things worth tracking:
- Count accuracy. The share of counted items that matched exactly. Below 95% on A items means something structural is broken.
- Variance value. Total dollars adjusted per month, up or down. Should trend toward zero.
- Repeat offenders. Items that produce a variance on consecutive counts. These almost always point at a process gap — a bin that two people pick from, or a part that goes out on jobs without ever getting recorded.
Pair the count trend with reorder points so the same walk-through does double duty: you are already at the shelf, so you already know what is low.
What good looks like
A contractor running cycle counts well has a warehouse where:
- Every stocking location — warehouse, yard, each truck — has its own on-hand number.
- A count takes one person under thirty minutes, scanning as they go.
- Variances get a cause written next to them before anyone adjusts.
- Material used on jobs shows up in that job's cost, so margin reports are real.
- Nobody shuts the shop down in December.
None of that requires a warehouse management system. It requires a schedule and the discipline to keep it.
Frequently asked questions
How often should a small contractor cycle count?
Weekly is enough for most shops under 1,000 SKUs. One A-class batch and one B or C batch per week covers the whole catalog on the ABC frequencies above and costs about an hour of labor.
Can cycle counting replace an annual physical inventory?
Often, yes — but check with your accountant. Many will accept a documented cycle count program in place of a wall-to-wall count if accuracy is demonstrably high and the process is written down. Some lenders and auditors still require the annual count regardless.
Who should do the counting?
Ideally not the person who picks and receives the same items, so the count is an independent check. In a small shop where that is impossible, blind counts and recounts on variances do most of the same work.
What is an acceptable inventory accuracy rate?
95% or better on A items, 90% on B, and looser on C is a reasonable target for a contracting business. Distribution warehouses chase 98%+; a service business with material flowing out to trucks and jobs every day rarely needs that.
Should truck stock be cycle counted too?
Yes, and it is usually where the biggest variances live. Count each truck as its own location on a monthly rhythm, ideally at the start of a shift before the tech loads for the day.
Does cycle counting affect job costing?
Directly. Most inventory variance is material that went to a job and was never posted, which means that job looked more profitable than it was. Fixing the count and posting the material fixes the margin number at the same time.
Getting started with CRMb
CRMb tracks inventory by location — warehouse, yard, and each truck — with barcode scanning on the iPad camera, transfers between locations, reorder points that flag what is low, and an average cost per item so material lands on the job at what you actually paid. Reports show inventory valuation alongside job margin computed on real punched crew hours.
Start a 14-day free trial at crmb.io. No card charged until the trial ends.