Skip to content

Costing & Valuation — what stock is worth, and what a sale costs

What this covers. Every gram of food in stock carries a number: what it's worth. Every plate that leaves the line carries another: what it cost. This chapter explains where those numbers come from. It covers the weighted-average method that blends many purchase prices into one cost per item per warehouse — one price for a whole accounting period, struck at the close, with a provisional figure standing in while the period is still open; the landed-cost build-up that turns a goods receipt into a per-unit value by folding in freight, handling, and each line's share of the non-recoverable tax; how a tax charged once on many goods reaches each of them; how the same word "tax" means opposite things to inventory value in two regions (US sales tax you keep vs. EU VAT you get back); the difference between what you owe a vendor and what the goods are worth; why shuffling stock between your own warehouses moves quantity around without changing total value; and what becomes of a value that changes after the goods were used — a corrected receipt, or a transfer's price struck after the receiver closed.


1. Why a blended average, and why one price a period

The business problem. A restaurant buys the same flour many times in a month at different prices — €0.80/kg one week, €0.95/kg the next. Sacks get tipped into one bin and commingled. When a gram of that flour ends up in a dish, what did the gram cost? You can't answer it per-sack: the sacks are indistinguishable once they're in the bin. The cost of "the next gram out" is genuinely undefined at the sack level.

The method: weighted-average cost. Weighted-average cost (WAC) means every unit on hand is treated as carrying the same blended cost — the total value of the pool divided by the total quantity in it. Buy 200 kg at €0.80 and 500 kg at €0.848, and every kilogram in the bin is worth the single blended figure, not "the old price" or "the new price." This is the standard choice for food because ingredients are fungible (one gram is as good as another) and commingled (physically mixed in one bin), so tracking the cost of each individual sack — the alternative methods that try to peel off "the oldest layer first" — is a fiction the bin can't honor. Blending also smooths week-to-week commodity swings into a stable food-cost percentage, instead of making margin lurch every time a delivery arrives at a new price.

One price for a whole period. The blend is struck once per accounting period, at the close, out of that period's own facts:

period price = (opening value + the value of everything that came in)
             / (opening quantity + the quantity that came in)

Everything that left the pool during the period — a sale, a staff meal, a spillage, a transfer to another warehouse, an ingredient drawn into a batch, the shortage a count turns up — is worth its quantity × that one price. There is no "the cost on the 3rd" and no "the cost after Tuesday's delivery": inside a period a kilogram is a kilogram, and every kilogram issued cost the same (a balance read on a day the close did not choose is Period close §2's).

Notice what is not in that formula: anything that left. Only the opening balance and the arrivals decide the price. A pool that was issued more than it was ever recorded as receiving still prices honestly off what did arrive, and a month's deliveries value that month's cooking whether the paperwork for them was typed on the 2nd or on the 31st.

Why a period and not a figure that moves with each delivery. A price re-blended on every arrival makes the cost of a plate depend on the order the office typed things in: the same Carbonara costs one number if Tuesday's invoice was entered before Tuesday's sales and a different number if it was entered on Friday. Nobody can explain that to a chef, and nobody can reproduce it afterwards — re-entering the same month's paperwork in a different order would give a different food cost. Striking one price from the period's totals takes entry order out of the answer entirely. It also matches the question the business actually asks: "what did flour cost us in March" is a question about March, not about the afternoon of the 12th.

While the period is open, the figure is an estimate — and honest about it. Cooking cannot wait for the close, so every issue is valued the moment it is recorded, at the same ratio struck over what the period has seen so far: the balance it opened with plus the arrivals recorded up to now. Nothing that left the pool enters the ratio, so a deficit cannot distort it, and a pool nothing has arrived in yet is worth nothing until something does. That is a provisional figure. A delivery that lands later — or a corrected price on a receipt already recorded — moves it, and the figures already written move with it. At the close the ratio is struck a last time over the finished period, every issue of the period is restated to it, and the number stops moving. So the running book is never stale and never pretends to be final; the close is what makes it final.

The count is the truth event. The book is perpetual — every event is recorded the moment it happens, rather than inferred from two counts a month apart — but it can only see what was recorded. The physical count sees what the book cannot: theft, spoilage, over-portioning, a mis-typed delivery. At the close the count settles the quantity, and the gap it finds posts as an ordinary shortage, valued like everything else that left, at the period price — or as an overage, which carries quantity and no value. That is how the cost of shrinkage reaches the food-cost number. §6 walks the math.

The value lives at the warehouse. There is one cost pool, one blended average, per item per warehouse. A warehouse is the boundary value is drawn around: every unit of an item inside it carries the same cost. Inside it sit storage locations — the areas a quantity is counted in ("walk-in," "bar," "back room") — which record where the units are and carry no value of their own. You count where things are; you value where they are all priced alike. The same item therefore has a distinct cost in each warehouse: flour in the commissary store and flour in the bar store are two pools with two averages. (The restaurant — the operation whose profit-and-loss the cost is charged to — is a separate axis; it never owns a cost pool. See Scope & locations.) "Company-wide cost" is just the special case of a company that happens to run a single warehouse.

Why not one company-wide average? A single blended cost across all warehouses is tempting — one number, less machinery — and for a single-site operation it even produces the same figures. But the moment two sites buy at different prices it fails three ways at once. Say the commissary holds 100 kg of flour bought at €1.00/kg and the bar store buys 100 kg at €2.00/kg: a company-wide blend prices everyone's flour at €1.50. Now the bar's food-cost looks 25% better than what it actually pays and the commissary's looks worse — the cross-site comparison that multi-site books exist to enable is exactly what the blend averages away. A shortage at the commissary gets valued with the bar's money. And when the bar receives an expensive delivery, the reported value of the commissary's untouched stock changes — no event, no movement, yet its number moved, which makes the figure impossible to audit from that warehouse's own history. Per-warehouse pools cost nothing in exchange: aggregation is a one-way street, so any company-wide figure — total stock value, total cost of goods — is just the sum of honest per-warehouse figures, while a company-wide blend can never be split back into honest per-warehouse ones.

A deterministic recipe cost is one company-level fact. It is a derived roll-up, not another warehouse pool. A dated item-cost point carries two lenses side by side. The stock-valuation lens explodes the recipe in force and prices stocked leaves at their company-wide blended averages, while non-stocked leaves use their reference prices. The reference lens prices every leaf according to that item's chosen price policy — newest market fact, a manual reference, one supplier product, or its stock average. The point keeps food, packaging and direct totals, the recipe and date, and whether any input lacked an honest cost. It carries no selling price or margin.

A recipe matrix is deliberately different: it records the full space of possible compositions, not one resolved build to put behind a cost point. Each concrete build has its own honest cost, and it is priced when that build is asked for. When menu defaults select a made-to-order sold item, its standard configuration supplies one such build; a recipe author may ask for the base build or another concrete build. An older point from before the recipe became a matrix ceases to be current truth.

This is one deliberate use of a company-wide blend rather than a warehouse average. Stock value still belongs to each warehouse, but a non-stocked made-to-order item has no pool of its own, so choosing one warehouse would make a planning cost depend on an arbitrary store. The actual cost of goods sold remains warehouse-accurate: the sale consumes each routed ingredient at that warehouse's real average. When a producible item is itself stocked, its sale likewise consumes the finished output at the warehouse pool's cost; its company-level point describes the recipe, not a second valuation of the output.

Item-cost history follows deterministic recipes. A point is added when today's effective recipe changes, and active producible items are repriced regularly so dated changes take effect without a separate ceremony. An item with no recipe in force for the date, or whose in-force recipe is a matrix, has no recorded point. An upcoming or unscheduled recipe — and any concrete matrix build — may still be costed as a projection, but a projection does not join the historical facts.

Pure replacement cost is a separate, derivable answer. It asks what every input would cost to buy again at the market facts known on a chosen date. Those dated facts already preserve the answer, so it need not be copied into item-cost history. Reference cost is different: pricing policies and manual references can change, so the dated point preserves the operational judgment that was true at the time.

Recipe authors can price any deterministic version or concrete build on demand. A non-stocked made-to-order item uses the company blend for its stock-valued lens; an item produced into a warehouse uses that warehouse's average. Non-stocked components follow their recipes in force or reference prices, and pinned nested recipes follow the chosen frozen version. A stocked target or variant is already valued by its warehouse pool and needs no recipe build. The resulting detail explains ingredient costs, packaging, batch totals, per-serving cost, and the theoretical cost per output unit.


2. The two money figures on a goods receipt: what you owe vs. what it's worth

The business problem. When a delivery arrives, two different people ask two different questions about it, and they get two different numbers.

  • The accounts-payable question: how much do we owe this vendor? That's the payable — the gross figure, every charge on the bill including all tax. It's what you write the check for.
  • The inventory question: how much is this stock worth in our warehouse? That's the net figure — what gets recorded as the value of the goods and feeds the blended average. It excludes any tax you'll get back from the tax authority (§4).

Every goods receipt therefore carries two distinct money totals — a gross / payable total and a net / capitalized total — and the same two figures exist on every line: each line has its own gross and its own net, and the document totals are simply the sums of its lines. The split has to live at the line because tax lands there (§3, §4): one line's tax can be fully reclaimable while its neighbor's is not. ("Capitalized" just means "recorded as the value of an asset you hold" — here, the stock in your warehouse, rather than an expense or a tax you'll reclaim.)

Whenever a line's tax is zero, or none of it is reclaimable — the US case (§4) — that line's two figures are equal, so it's tempting to keep only one number and use it for both. That is a genuine and expensive mistake the moment any reclaimable VAT enters the picture: if you feed the gross figure into inventory value, you capitalize tax you're going to get refunded, which overstates what the stock is worth, overstates the cost of everything made from it, and inflates the food-cost percentage. The rule that prevents it:

The blended average is fed the NET (capitalized) value, never the gross (payable) total. The gross total is for paying the vendor; the net total is for valuing the stock.


3. Landed cost — turning a purchase into a per-unit value

The business problem. A delivery is not simply "line items at line prices." The bill also carries shared charges — freight, handling — that belong to the goods but aren't attached to any one line; and its taxes, each charged on some or all of the goods. To value a single gram of flour honestly, the shared charges and the taxes have to be pushed down onto each line, each line's tax split into the part you keep paying and the part you get back (§4), and the result divided by the quantity received. The all-in result is the landed cost (also called the delivered cost): the true cost of the goods once they've landed in your warehouse, not just the sticker price on the line.

The build-up. For each line on the goods receipt:

1. Subtotal             = what the supplier charged for the row (its quantity at its unit price) − Discount
                          (less the line's share of a discount on the whole purchase,
                           and less any tax already inside the price)
2. + Freight/handling     (the document's shared overhead, allocated BY VALUE — each line's share of the subtotals)
3. + Non-recoverable tax  (the part of the line's SHARE OF TAX you DON'T get back — see §4)
   ───────────────────────────────────────────────
   = the line's NET value  ── this is what feeds the blended average

and, in parallel, the line also rolls up to its gross / payable value (subtotal + freight share + the line's full tax), what the purchase was charged.

Why the shared charges are allocated by value. Freight on a mixed pallet isn't truly proportional to money value — a case of saffron weighs almost nothing and a sack of potatoes is heavy, yet the saffron's value dwarfs the potatoes'. But allocating by value is the defensible, auditable default: it needs no per-line weight or volume figures (which invoices rarely carry), it never piles more freight onto a line than that line's own cost, and it's what the standard reference systems do unless told otherwise. Splitting freight by actual weight is a later refinement, not the starting point.

How a tax reaches a line. Freight is genuinely a document-level pot — one truck, one charge, no honest way to pin it to a line — so it is spread over everything. A tax is narrower: it belongs to the goods it was charged on. Real EU invoices mix rates on a single delivery — Portugal taxes most food at 6%, an intermediate band (wine, some processed goods) at 13%, and everything else at the 23% standard rate — and real US invoices mix resale-exempt food lines with taxed supplies on the same bill. Spreading the wine's 13% onto the flour would be wrong on every line, in a way no tolerance forgives. So each of a receipt's taxes (Procurement §6) is shared only among the goods it was charged on, in proportion to their value, to the cent, so the shares add back to exactly the tax charged. A tax known only by its rate is that rate on the value of its goods, after every discount. A line that several taxes fall on bears its share of each.

Worked example — one tax for the whole purchase. A US cash-and-carry receipt has two lines, $400.00 of beef and $316.63 of cooking oil — $716.63 of goods — and one sales tax of $13.15 printed at its foot: $729.78 to pay. The tax names no goods, so it falls on both by value: 13.15 × 400.00 / 716.63 = 7.3399… and 13.15 × 316.63 / 716.63 = 5.8100…. Rounded down that is 7.33 + 5.81, one cent short, and the cent goes to the larger remainder: $7.34 and $5.81. None of it comes back (§4), so all of it is cost — the stock is worth the same $729.78 that is owed.

Tax already inside the price. Some prices are quoted with their tax inside. The line's subtotal is then what remains once that tax is taken out: €12.30 that includes 23% VAT is €10.00 of goods and €2.30 of tax. Recoverable, the VAT leaves the goods worth €10.00; non-recoverable, it makes them worth €12.30 — and either way €12.30 is what is owed, the tax never added on top a second time.

A discount on the whole purchase. A discount is part of what the goods cost — IAS 2 takes trade discounts off the cost of purchase — so one given on the whole purchase, beyond those on single lines, has to reach every line too. It is shared across all the goods in proportion to their value after their own discounts, to the cent like a tax, and before any tax or freight is worked out, since both follow what the goods cost. €40.00 of flour and €60.00 of oil with €10.00 off the purchase are €36.00 of flour and €54.00 of oil.

Worked example — a single line. A line reads Quantity 10 × UnitPrice €5 − Discount €2 = €48.00 subtotal. The document carries €6.00 freight, and this is the only line, so it absorbs all of it. The line itself is taxed at the 23% standard rate: 23% × 48 = €11.04 of VAT, fully recoverable in the EU regime — so none of it enters the net. Net value = 48 + 6 = €54.00; gross/payable = 54 + 11.04 = €65.04. Under the US regime the same line — a taxed supply, say at 8% = $3.84, none of it recoverable — folds its whole tax into the net: net and gross coincide at 48 + 6 + 3.84 = $57.84.

From line value to per-unit cost. The number that actually feeds the blended average is the line's net value ÷ the quantity it represents, in base units. The base unit is the single canonical unit every quantity of that item is stored in — grams for a mass item, milliliters for a volume item (see Units of measure). Twenty sacks at 25 kg each is 500 kg of flour, and the per-kilogram landed cost is the line's net value divided by 500. No quantity reaches the ledger except converted to base units first, so the per-unit cost and the blended average always speak the same unit.


4. Region-adaptive tax — US sales-tax vs. EU recoverable VAT

The business problem. The single word "tax" means opposite things to inventory value in two tax regimes.

  • US (sales / use tax). A purchase for resale is exempt from sales tax; if any tax is nonetheless charged on a purchase, it is simply a cost of the goods and is folded into their value. Nothing is reclaimable. Tax you pay here makes the stock worth more.
  • EU (Portugal first — recoverable input VAT). Value-added tax (VAT) paid on a business purchase is reclaimable from the tax authority — it's money the authority owes you back (a receivable), not a cost of the goods. The accounting standard for inventory is explicit that stock is valued net of any recoverable tax: the cost of a purchase excludes taxes you'll get refunded. Folding reclaimable VAT into the stock value would overstate the cost of goods and the food-cost percentage.

The design: one path, with a per-line tax split. Rather than run two separate costing engines, every goods-receipt line simply splits its tax — its share of each tax charged on it (§3) — into two parts:

the line's tax        = its share of every tax charged on it         → shared by value among the goods each tax names (§3)
recoverable part      = its share of the taxes that come back        → a tax receivable, NEVER part of stock value
non-recoverable part  = the line's tax − the recoverable part        → folded into the line's net value
net (capitalized)     = subtotal + freight share + non-recoverable part → what feeds the blended average
gross (payable)       = subtotal + freight share + the line's full tax  → what you owe

Why this collapses both regions into one path. The US case is just recoverable part = 0 on every line: the non-recoverable part equals the line's whole tax, the net value rolls all of it into the stock, and net equals gross — line by line. The EU case sets a non-zero recoverable part, which is routed off to a tax receivable and kept out of the stock value. There is no "US engine" and "EU engine" — only a recoverable part that happens to be zero in one region. The receipt movement from the vendor into the warehouse always carries the net value; the recoverable VAT is booked, separately, as money owed back to you — it lands in the input-VAT receivable described in Financial boundary.

Whether a tax comes back is a fact of that tax. Where nothing says otherwise, the company's tax regime — a per-company setting alongside its currency — gives it: under the EU regime the tax is recoverable, otherwise it is not. The answer stays with the tax, so a company that later changes its regime does not re-value the receipts it already holds.

One currency per company. A company values its pools in a single currency, and every blended average is in that currency. Goods receipts in a foreign currency (capturing an exchange rate at receipt, then accounting for the rate drift later) are a deliberately separate, later concern — out of scope here.


5. Worked example — a two-line goods receipt, end to end

A goods receipt into a kitchen store (a warehouse that supplies the kitchen station), two lines, with freight and VAT at two rates. We use the EU regime (Portugal) so the two rates are visible; the US case falls out line by line, as the contrast below shows.

On the document: freight = €30.00, and two taxes — 6% VAT charged on the flour and 13% VAT charged on the wine (§3).

Lines:

Line Item Qty (unit) Unit → base Base qty UnitPrice Subtotal VAT rate
A Flour 20 sacks 25 kg/sack 500 kg €20.00 €400.00 6% (food — reduced)
B Wine 5 cases 6 × 0.75 L = 4.5 L/case 22.5 L €20.00 €100.00 13% (intermediate)

Σ subtotals = €500.00. One delivery, two rates — exactly why each tax names its own goods: most food sits at Portugal's 6% reduced rate, wine in the 13% intermediate band (and a cleaning supply on the same truck would be at the 23% standard rate).

Step 1 — allocate freight by value (subtotal × freight ÷ Σ subtotals):

  • Line A: 400 × 30 / 500 = €24.00
  • Line B: 100 × 30 / 500 = €6.00

Step 2 — each tax on its own goods (the rate × their subtotal; each names one line here, so nothing is shared):

  • Line A: 6% × 400.00 = €24.00
  • Line B: 13% × 100.00 = €13.00

Step 3 — recoverability (EU: both lines fully recoverable). The non-recoverable part is €0.00 on each line; the full 24.00 + 13.00 = €37.00 routes to the tax receivable, not into stock value.

Step 4 — the two money figures, per line and per document:

Line Subtotal + Freight + Non-recov. tax Net (capitalized) + Recov. tax Gross (payable)
A 400.00 24.00 0.00 424.00 24.00 448.00
B 100.00 6.00 0.00 106.00 13.00 119.00
Document 500.00 30.00 0.00 530.00 37.00 567.00

The document gross / payable €567.00 is what you owe the vendor. The document net / capitalized €530.00 is what gets recorded as the value of the stock. The €37.00 in between is money the tax authority owes you back.

US contrast. Run a similar delivery under the US regime: the flour is bought for resale, so its line carries no tax at all — its net equals its gross at $424.00. Swap the wine for a case of cleaning supplies taxed at 8%: that line's $8.00 of tax is not recoverable, so it capitalizes — net = 100 + 6 + 8 = $114.00, equal to its gross. Net equals gross line by line, and for two different reasons: a tax of zero, and a tax you don't get back. There is never a recoverable pot — and the sales tax still lands only where it was charged: on the supplies, never on the exempt food.

Step 5 — per-base landed cost (net value ÷ base quantity):

  • Flour: 424.00 / 500 kg = €0.848 / kg
  • Wine: 106.00 / 22.5 L = €4.7111 / L (≈ €3.53 a bottle)

Step 6 — what flour is worth this period at the kitchen store. The receipt movement (vendor → kitchen store) carries the net €424.00 for 500 kg. Suppose the pool opened the period with 200 kg @ €0.80/kg = €160.00, and this is the period's only delivery:

price = (opening value + what came in) / (opening qty + the qty that came in)
      = (160.00 + 424.00) / (200 + 500)
      = 584.00 / 700
      = €0.834286 / kg

Every gram of flour issued this period is valued at €0.8343/kg — the single blended cost, fed the net €424.00. While the period is open that figure is provisional: a second delivery would move it, and every issue already recorded would be restated to the new number. The close strikes it a last time, and it stops moving.

What the net/gross discipline buys you. Had we (wrongly) blended the gross €448.00 instead, the average would be (160 + 448) / 700 = €0.8686/kg — a 4.1% overstatement of flour cost, flowing straight into the cost of every dish and the food-cost percentage, on a tax that gets refunded. That gap is exactly what valuing stock net of recoverable tax closes.

At the close the physical count settles the quantity: if 650 kg was projected but only 640 kg counted, the missing 10 kg posts as a shortage, valued like every other issue of the period at the period price, and the 640 kg that remain roll forward at that same price (§6).


6. The close — striking the period price

The close is where the price stops being an estimate. Each warehouse strikes one figure per pool for the period just ended, out of that period's own facts. (The close process — the count, the acceptances, the blockers — lives in Period close; this chapter owns only the valuation math.)

What "came in" is worth

period price = (opening value + Σ the value of what came in)
             / (opening quantity + Σ the quantity that came in)

Four things arrive in a pool, and the close can name what each is worth.

  • A delivery is worth its net / capitalized value (§3) — the landed cost, never the gross payable. This is the precise spot where reclaimable tax would leak into the cost of goods if the gross figure were fed in by mistake.
  • A transfer in is worth what the sending warehouse's leg carries: value travels with the goods and is neither created nor destroyed on the way (§7).
  • A batch's output is worth what the batch drew — and what it drew is priced by those pools. So the pools are struck in order: flour before dough, dough before pastry. An item that feeds itself, a starter that seeds tomorrow's batch, is struck over and over until its price stops moving.
  • Found stock — see below.

The denominator is base-unit quantity throughout, guaranteed by the convert-to-base rule (§3), so the price and the quantity always speak the same unit.

The count settles quantity; the price settles worth

The count wins — the counted quantity is the physical truth, not the book's projection. The quantity is settled first: the gap posts as an overage or a shortage. Then the price is struck, and every movement of the period that took stock out of the pool is restated to its quantity × the period price — the sales, the wastage, the staff meals, the transfers out, the ingredients drawn into batches, and the count's own shortage. What remains is worth the counted quantity at that same price, and that is what rolls forward as the next period's opening value. Value is conserved across the boundary, and the value of stock that is not there flows into the cost of goods sold as shrinkage rather than being carried forward as an asset.

Why found stock carries no value. A count establishes how much is there; it cannot establish what it cost. Cost is what was actually paid — the receipt, the transfer that carried a priced leg, the batch that drew priced ingredients — and the moment a walk finds units on a shelf, nothing has been paid for them that the books did not already record. So an overage enters at zero: the quantity rises, the pool's value does not, and the found units take their place in the price's denominator, where the value that genuinely arrived spreads over the larger quantity. The operator sees the find as a cheaper unit from this close on, never as a gain at the count. Pricing the find at the running average would create value — and profit — out of a walk, which is exactly the entry an auditor reads as manufactured. The shortage is different: it destroys value that was already on the books, so it is charged at the price like any other issue.

The book does not hide what this costs. Count noise does not net across periods: a bin missed in May is a May shortage, charged to shrinkage at May's price, and finding it in June credits nothing back — the units return, and their value returns only through cheaper issues from June on. The remedy for a find whose origin is known is never a price; it is the document that was missed — the transfer, the delivery — which lifts the book with its own value and melts the find. Found stock is evidence of a missing document, and the close's job is to point at it, not to price it.

This is the standard's own reading, not a house preference. IAS 2 (paras 10–11) defines the cost of inventories as the costs incurred to acquire them and bring them to their present location and condition; the act of discovering units incurs nothing, so a find of unknown origin has no cost to capitalise — the running average, a market price or an appraisal are ways of valuing what is there, not costs the company bore for it. A find whose origin is known is not a find at all but an accounting error — a write-off that should not have posted, a delivery never entered — and IAS 8 has that corrected at its source, retrospectively when it belongs to a prior period, rather than recognised as income of the period that noticed it. Here that is the reopening chain of Period close §8: the closes are withdrawn newest first back to the period the error sits in, the document is fixed, and the periods close again in order, each price restruck on the corrected facts. Posting such units at today's average would not repair the history either, since the average on the day of the error was another number. So a find has exactly two honest treatments — the error corrected where it happened, or zero cost — and the third, a value assigned to the discovery and booked as income, is the entry this book refuses: value, profit and tax from a walk, and the entry an auditor unwinds into the first treatment anyway.

Worked example. A pool opens on 40 000 g of flour worth €40.00 and the walk finds 44 000. The 4 000 g enter at €0.00; the pool closes at 44 000 g worth the same €40.00 — €0.000909 a gram instead of €0.001, and every gram issued next period carries that.

Worked example. A pool receives 12 kg for €17.00 and issues 15 kg; the book stands at −3 kg. The count says the shelf is empty. The find of 3 kg carries €0.00 and its quantity joins the denominator: 17.00 / 15 = €1.1333/kg. The 15 kg that went out carry exactly €17.00 between them — every euro that arrived, and not a cent more — and the pool closes at 0 kg worth nothing.

A pool nothing opened and nothing arrived in prices its find the same way: nothing over the found quantity is nothing, and the units are issued at zero until a priced document reaches the pool. Starting value comes from the warehouse's initial balances; new external value comes from a priced goods receipt. Assigning a cost to a count's discovery would be value from nowhere. A zero-cost find understates what the pool is worth and overstates cost of goods, which is the honest direction of error; stock genuinely brought in from outside gets its value the honest way, through a goods receipt carrying its price, supplier optional.

The self-check

The close proves itself with a money-balance identity, and it holds to the cent:

opening value + Σ what came in − Σ what went out − closing value = 0

Nothing is allowed to hide in a rounding tolerance. Prices carry more decimals than money does, so multiplying them out leaves fractions of a cent behind; those cents are placed on the period's last ordinary issue of the pool rather than smeared across every figure, so the identity closes exactly and the cents land somewhere a reader can point at. What the close does when the ledger and the arithmetic still disagree is Period close's.


7. Quantity and value are tracked separately — and why transfers don't change worth

Quantity and value ride on separate axes. Where units physically sit and what they're worth are two distinct facts about the same stock, recorded independently. Most movements change one without dictating the other, and the clearest case is an internal transfer — moving your own stock from one of your warehouses to another.

A transfer changes quantity, not total value. Moving 10 kg of flour from the commissary store to the bar store removes 10 kg × (commissary blended cost) of value from the commissary pool and adds that same value to the bar pool. You didn't buy or sell anything — you just relocated it — so the company's total stock value is unchanged. A transfer between your own warehouses must not create or destroy value, because no economic event happened; only the location did.

The receiving warehouse blends it in. The arriving value joins the bar store's own pool and takes its place in that pool's price, exactly as a vendor delivery would, at the sending warehouse's cost rather than a vendor's price. The receiving price is computed purely from the receiving pool's own contents; it doesn't matter which warehouse the goods came from.

Worked example. The bar store opens the period with 40 kg @ €0.90/kg = €36.00. A transfer brings in 10 kg from the commissary at €0.80/kg = €8.00, and nothing else arrives. No value is created: €8.00 leaves the commissary pool and €8.00 enters the bar pool. The bar store's period price is (36.00 + 8.00) / (40 + 10) = €0.88/kg. Company-wide flour value is unchanged by the move; only the bar store's per-kilogram cost shifted.

This separation is what lets the system keep a per-warehouse cost pool while tracking quantity coherently across all warehouses off the same movements — and why the receiving warehouse's price is always computed from its own pool, never inherited from the source.

The commissary corollary: internal supply is always at cost. Value conservation has a consequence worth stating for groups that run a central production facility feeding several restaurants: the commissary is a cost center, never an internal vendor. A transfer of house-made dough to a satellite carries the dough at the commissary's own blended cost — there is no internal markup, no "transfer price," no profit booked between your own warehouses, because no economic event happened. (An operator who manages the commissary as a profit center applies that fiction in their accounting system, on top of the honest at-cost figures the boundary exports.) Likewise, a produced item's cost is its materials only — the production run rolls input values into the output, but commissary labor, rent, and energy are never absorbed into the dough's per-kilogram cost; overhead absorption is the operator's accountant's territory (see Recipes & production for the yield mechanics, Financial boundary for what crosses to accounting).


8. When a value changes after the goods were used

A value can change after the goods it belongs to have already been cooked or sold. A receipt's price may have been keyed wrong, or its quantity misread at the door, and be put right days later. A transfer arrives at the receiving warehouse long before the sending warehouse closes its period and learns what the goods were really worth.

While the period is open, a correction is simply absorbed. The receipt is corrected at its source, the period's price is struck again over the corrected totals, and every figure that price has already produced moves with it. Nothing needs to be expensed and nothing needs to be apportioned between "the units still here" and "the units already cooked", because nothing was final: the period had not yet said what a kilogram of that flour cost, and now it says something else. A receipt is corrected this way as many times as it takes, for as long as its period stays open.

After the close, a receipt is corrected by reopening its period (Stock ledger §6).

A transfer's late price is news, and it flows forward. The receiving warehouse's own sources were right: it valued the goods at the sender's provisional price, the only one there was, and closed on it. The sender's struck price is a new fact established by a later close. While the receiver's close remains in force, its figures stay settled; threading the new number back would restate a margin somebody has already reported and reconciled. The difference is recorded as a value-only adjustment in the receiver's open period, on its first open day, where it joins that period's arrivals and dilutes that period's price — the stock still on the shelf absorbs it, and the units already cooked keep the cost they were given.

Sometimes there is nothing to absorb it: the pool holds nothing and expects nothing, or the news concerns history already summarized by the warehouse's initial balances. Then the adjustment has no stock to attach to and is recognized as price-difference expense — the one bucket for value the books cannot honestly put on a shelf (see Financial boundary).

Worked example. A transfer of 10 kg leaves warehouse A for warehouse B on 15 June, valued at A's provisional €1.50/kg — €15.00 — and B closes June with that figure in its books. A closes June later and strikes €1.60/kg, so the leg it sent is really worth €16.00. The €1.00 difference cannot go into B's June, which is sealed; it lands in B's July as a value-only adjustment and dilutes July's price. A's own June, meanwhile, shows the €1.00 for what it is: value that period sent on to another warehouse's books rather than a figure inside its own.


See also

  • Period close — the period close that consumes the math above: the count that wins, overages and shortages, the self-check, and the blockers.
  • Sales & consumption — how a sale depletes stock at the price this chapter computes.
  • Scope & locations — warehouse (where value lives) vs. restaurant (whose profit-and-loss the cost lands on).
  • Units of measure — the base unit that the per-unit landed cost and the blended-average denominator are both expressed in, and why the base unit can't change once stock has moved.
  • Procurement — the order ↔ receipt match, and the goods-receipt flow from the supplier paper a receipt is entered from.
  • Stock ledger — the journal of movements that carries quantity and value, and the close boundary that decides whether a mistake is corrected in place or answered by a new dated fact.
  • Financial boundary — where this chapter's figures land when they leave the stock domain: the food-cost and packaging-cost buckets of the cost of goods sold, the input-VAT receivable, and the price-difference expense.
Last updated · History