Stocktake Session Counter

Count supplies, an event kit or workshop items. Keep a record of what you find.

How stocktake works

  1. PreparePaste or add the items you want to count.
  2. CountEnter a quantity and confirm each item.
  3. ReviewCheck uncounted items, drafts and differences. Recount if needed.
  4. FinishConfirm every active item, then finish. Export or reuse the list for another count.

Prepare → Count → Review → Finish

Example: Tape rolls

Expected: 10 · Counted: 8 · Difference: −2
Recount: 9 · New difference: −1

A difference compares your confirmed count with the expected quantity. Confirming a recount replaces the previous count; it does not add to it.

Stocktake session and progress

Checking saved workspace

Item list and counting controls

Item review

Session backups and replacement

Prepare the items you will count

Use this tool when one person needs to work through a finite list of discrete items. For a supplies cupboard, you might enter Tape rolls, Marker pens and Spare clips. Put the unit in the name when it matters: Boxes of envelopes and Individual envelopes describe different things. The tool does not convert between units.

  1. Prepare the list. Paste one name per line or choose Add one item. Review the pasted list before adding it. Blank lines are ignored. Duplicate names remain separate items; a short item ID distinguishes them. You can rename or reorder items without moving their counts to another item.

  2. Count and confirm. Choose Start counting, then Count item. Enter the total you observed and choose Confirm count. A saved draft is still unconfirmed. Cancel leaves the previous confirmed count unchanged, or leaves a first count unknown.

  3. Review pending work. Use Uncounted, Drafts and Differences to inspect the list. An optional expected quantity provides a comparison, not a target that the count must meet. Recount opens a blank replacement draft beside the previous confirmed count.

  4. Finish and keep a copy. Confirm every active item and apply or cancel pending setup edits before finishing. Review the saving status, then download JSON for restoration or CSV for the result. Export before replacing the session if you need its full record.

Unknown, draft and zero have different meanings

New items start unknown. Blank is not zero. Whole-number counts range from 0 to 9,999,999, and zero needs explicit confirmation. Saving draft text does not increase confirmed-item progress.

Difference is confirmed quantity minus expected quantity, only when both are known. An unknown expectation gives no difference. Applying a changed expectation keeps the confirmed observation and its confirmation time; it recalculates the comparison.

A recount replaces the previous quantity. Cancel keeps the previous confirmed quantity and timestamp. Confirming the same quantity again records a new confirmation time.

No pens is a confirmed result

Marker pens begins Not counted. Typing 0 creates a draft and leaves progress unchanged. Confirm count records zero. With expected 0 it is a confirmed match; with no expectation it is a known count with no calculated difference.

Ten expected, eight counted

Set Tape rolls to expected 10. Confirm 8 and the difference is 8 − 10 = −2. You counted two fewer than expected. The comparison does not explain why.

Recount eight as nine

Choose Recount for Tape rolls. The previous 8 stays visible while you type 9. Cancel retains 8. Confirm replacement makes the result 9, not 17. With expected 10, the difference becomes −1.

Finish the cupboard, then count again

Confirm Tape rolls 8, Marker pens 0 and Spare clips 12. Recount Tape rolls as 9, review the difference and finish. Reload to check the saved session, then export. Reopen keeps those observations for corrections. Start another count → Reuse item list keeps names, order and expectations, while every observation, including the pens' zero, starts unknown.

Finish requires at least one active item, every active item confirmed, and no pending count or setup drafts. Differences may remain. Reopening keeps the same session and observations; reusing the list starts a new session with unknown observations.

Each session supports 100 retained item slots. The one recoverable removed item also uses a slot. Only the latest removal can be undone; another removal replaces that recovery copy. Recorded work requires confirmation before removal. Undo restores the removed item without freeing a slot. At capacity, explicitly discarding its recovery copy frees one slot for a new item.

Check saving before closing the tab

Stocktake keeps one current session in this browser. A count can be confirmed in memory without being durably saved. If saving fails, keep the tab open and use recovery. Initial memory-only use needs your explicit choice and is labelled as not saved.

Drafts and recovery

Saved count drafts and unapplied setup text return on reload. After a saving failure, retry saving the retained work instead of confirming the quantity again. Text that could not reach the session remains visible for copying and is not included in its backup. Clearing site data, private browsing or browser settings can remove saved work.

One editing tab

A second tab is read-only until you choose Take over editing. Old editors must be reviewed after a takeover or replacement. There are no accounts, cloud sync or shared device sessions. Browser-local saving makes no promise that this page will be available offline.

Replace from JSON

A JSON backup preserves the supported Stocktake session, including unknown observations, confirmed zeroes, pending drafts and removal recovery. Restore validates and previews a whole-session replacement. It does not merge lists or replace another tool's profile. Keep a copy before replacing work you need.

Read a CSV result

CSV has 15 columns and labels partial or completed results and the saving state. Unknown quantities are blank; confirmed zero is 0. Invalid unfinished text is not exported as a quantity. CSV is a result, not a restorable backup.

Formula-shaped names receive an apostrophe prefix in CSV without changing the saved name. Spreadsheet interpretation and later re-saving vary, so this is not a universal spreadsheet safety guarantee. Check imported text and use text-column import settings where available.