How to run a stocktake in Stokkap
A step-by-step user guide for creating focused stocktakes, counting with a sheet or scanner, reviewing variances, and completing approved counts.
Overview
A stocktake is a controlled count of physical stock in one or more locations. Stokkap compares the counted quantity with the system stock captured when the stocktake was created, then records the difference as a variance.
Stocktakes can be completed as records only, or used to update stock in WooCommerce and Stokkap after review.
If you are comparing stocktake software features rather than following setup steps, start with the stocktakes feature overview.
For day-to-day counting, keep the scope focused: one location type, one area, a short list of locations, or a product group that needs checking. Full-store stocktakes are best reserved for planned business-wide counts.
Status-only WooCommerce products: if a product only has a stock status such as In stock or Out of stock, use Set to Counted when the stocktake should write an exact quantity back to WooCommerce.
| Term | Meaning |
|---|---|
| System Stock | The quantity recorded when the stocktake was created |
| Count | The physical quantity entered by the user |
| Variance | Counted stock minus system stock |
| Adjustment | The stock change applied after approval |
Create a stocktake
Open Stocktakes and choose New Stocktake. The setup page lets you name the stocktake, choose stock management types, select locations, choose a count method, set options, and start immediately or save as a draft.
Recommended first setup
- Choose Stokkap managed products when checking location stock.
- Select one location type, then only the locations being counted today.
- Use Count Sheet for list-based counting or exact quantity entry.
- Use Scanner (Tally Mode) when every scan should add +1.
- Enable Include product variations if variations are stocked separately.
Locations
Location selection controls which Stokkap locations are included. If Stokkap managed products are selected and the stocktake is started immediately, at least one location is required.
Count method
Choose the workflow that matches how the team will count.
| Mode | Best for |
|---|---|
| Count Sheet | Printed lists, exact quantities, manual review, and barcode lookup from a list |
| Scanner (Tally Mode) | Fast barcode counting where each scan should increment the count by 1 |
Options
| Option | What it does |
|---|---|
| Include products with zero stock | Pre-populates products or selected locations where system stock is currently 0. Users can still count 0 even when this is off. |
| Include product variations | Includes individual variations as separate count rows. Variable parent products are not counted as stock rows. |
| Include private products and disabled variations | Includes hidden products or disabled variations that may still have physical stock. Draft and trashed products are excluded. |
| Count by location separately | Counts each selected location as a separate line item. This is required for Stokkap managed products. |
Choose Start Stocktake to begin counting immediately, or Save as Draft to create the stocktake and start it later.
Which products are included
The app builds the stocktake item list from the selected stock management type, selected locations, and options.
Stokkap managed products
- Only products managed by Stokkap are included.
- The selected Locations control which product/location rows are created.
- Products that are not assigned to any selected location are not added to the stocktake.
- When Count by location separately is enabled, each used selected location becomes its own count row.
- If Include products with zero stock is off, selected locations with
0stock are skipped. - If Include products with zero stock is on, selected locations with
0stock are included so they can be confirmed.
WooCommerce managed products
- Products using WooCommerce's normal single stock value are included.
- Location selection does not split these products by location.
- Products that only have a WooCommerce stock status, such as In stock or Out of stock, can still be included and counted.
- Status-only products are useful when the business wants to move from simple status tracking to exact stock quantities.
General inclusion rules
- Variable parent products are not counted as stock rows.
- Product variations are included only when Include product variations is enabled.
- Published products and enabled variations are included by default.
- Private products and disabled variations are included only when Include private products and disabled variations is enabled.
- Draft and trashed products are always excluded.
Status-only products need Set to Counted. Apply with Realtime Adjustment is delta-based and is best for products that already track an exact starting quantity. A status-only product counted as 0 may be skipped as a zero adjustment because there is no exact numeric stock value to adjust from.
Count stock
Both count modes update stocktake item rows. The difference is how quantities are entered.
Count Sheet
Use Count Sheet when users need to view the product list, print count sheets, enter exact quantities, or scan a barcode/SKU to find the matching row.
Scanner (Tally Mode)
Use Scanner mode when each barcode scan should add 1 to the count automatically. The item sheet remains available at the bottom for manual corrections, review, and printing.
Scanner mode works best when products have barcodes saved in WooCommerce, or when product SKUs match the labels being scanned.
Choose location prompts
If a scanned product exists in multiple selected stocktake locations, Stokkap asks where the scan should be counted. After a location is chosen, it becomes the current counting location for later scans until another prompt is needed.
Best practices while a stocktake is active
Tell staff before a stocktake starts, especially anyone picking orders, receiving stock, moving stock between locations, or editing products in WooCommerce.
During an active stocktake:
- Avoid moving stock in or out of the counted locations unless it is necessary.
- Avoid stock transfers between counted locations.
- Let pickers know which locations or products are being counted.
- Keep a note of any urgent picks, sales, receipts, or stock moves that happen during the count.
- Use smaller targeted stocktakes when normal trading needs to continue.
- Complete and sync soon after counting to reduce movement confusion.
Order picking during a stocktake
Order picking can affect the final result if the picked products are also in the stocktake. Choose the completion mode first, then count consistently.
| Completion mode | How to handle picked or sold items during the count |
|---|---|
| Set to Counted | Count what should be the final available stock. If items have been sold or picked after the stocktake started and should no longer be available, do not include them in the counted quantity. |
| Apply with Realtime Adjustment | Include stock that was picked or sold after the stocktake started, or add it back to the counted quantity, because the app preserves the live sale or pick movement separately. |
Example: a stocktake starts with system stock 10. Two items are picked for an order while the stocktake is open.
- With Set to Counted, if only
8are now available, count8. - With Apply with Realtime Adjustment, count as if the two picked items are still part of the stocktake total, so the count remains
10. The app then applies only the real variance while WooCommerce keeps the order movement.
For the cleanest result, pause picking in the counted area where possible. If picking cannot pause, use smaller location-based stocktakes, keep a pick or movement note, and prefer Apply with Realtime Adjustment for busy live stores.
Review variances
A variance is the difference between counted quantity and the system stock recorded when the stocktake was created.
variance = counted stock - system stock
| System Stock | Count | Variance | Meaning |
|---|---|---|---|
| 10 | 12 | +2 | 2 more found than expected |
| 10 | 10 | 0 | Count matches system stock |
| 10 | 7 | -3 | 3 fewer found than expected |
Rows can be accepted, flagged, or rejected before completion. Counted pending rows can still be applied if they have a variance. Flagged, rejected, and uncounted rows are skipped when adjustments are applied.
Complete stocktake
Choose Complete Stocktake when counting and review are finished. The completion dialog warns about variance rows, uncounted rows, and flagged rows before approval.
Stock handling choices
| Choice | What it does |
|---|---|
| Record Only | Completes the stocktake for audit evidence without changing stock |
| Set to Counted | Sets stock to exactly what was counted; use when sales were paused during the count |
| Apply with Realtime Adjustment | Applies the counted difference to current live stock; recommended for active stores |
Realtime adjustment uses this formula:
new stock = counted - started + current
Apply with Realtime Adjustment is intended for products that already track an exact starting quantity. It applies a numeric variance, so a stock-status-only item counted as 0 may be skipped as a zero adjustment instead of being converted. If a status-only WooCommerce product should be changed by the stocktake, use Set to Counted.
When stock changes are applied, Stokkap queues adjustment records and syncs them to the connected store in 20-row batches. Large stocktakes can continue syncing in the background until they reach Completed or Partial.
Completion email
When the final result is Completed or Partial, Stokkap sends a stocktake completion email to eligible recipients.
The email includes the stocktake name, store name, approver, completion mode, counted and uncounted totals, confirmed, skipped, and failed adjustment totals, plus a direct link back to the stocktake.
Recipients can include the account owner, the user who approved or completed the stocktake, the stocktake creator, and eligible client admins with access to the store. Duplicate email addresses only receive one copy.
Offline counting
Offline counting works for existing cached stocktake rows. Prepare the stocktake while online before leaving a reliable connection.
- Create or open the stocktake while online.
- Choose Cache for offline.
- Wait until the app confirms the stocktake is cached for offline counting.
- Count existing rows offline.
- Reconnect before final approval and stock adjustment sync.
Creating a new product/location row through Count in another location requires the app to be online.
Permissions
| Permission | Allows |
|---|---|
stocktake_view | View stocktake lists and details |
stocktake_create | Create stocktakes, update counts, accept, flag, and reject rows |
stocktake_approve | Complete stocktakes and process adjustment sync |
A common workflow is for staff to count stock, then an admin reviews variances and completes the stocktake.
Edge cases
- Product not found: check that the product was included in scope and that its SKU, barcode, or GTIN matches the scan.
- Duplicate scans: scanner mode adds +1 per scan, so avoid scanning the same physical item twice.
- Counted 0: a value of 0 means the item was checked and none were found. A blank row means it was not counted.
- Partial completion: some adjustment rows synced successfully but at least one failed and needs review.
- Failed for review: Stokkap stopped because it could not safely finish a stock-changing batch.