AI Agents · Customization

Acumatica Inventory Costing — FIFO, Average, and Beyond

A clear comparison of Acumatica inventory costing methods — FIFO, Average, Specific, Standard — with the cost-flow consequences, when to use each, and migration considerations.

John Kihiu12 min read

The costing method you choose in Acumatica decides what number lands in cost of goods sold every time you ship, and it is one of the hardest things to change once a company is live and holding history. FIFO, Average, Specific, and Standard are not interchangeable preferences — each implies a different cost flow, a different reaction to price volatility, and a different reconciliation story with finance. This is how they actually behave and how to pick before you are stuck.

Where the method is set

Valuation method is a property of the Item, defaulted from the Item Class, and set on the Stock Item's General settings. That means you can run different methods for different item classes in the same company — Standard for manufactured goods, FIFO for high-value traded stock, Average for fast-moving consumables — as long as you decide deliberately. The important constraint: once an item has transactions, Acumatica will not let you switch its valuation method freely, because the historical layers no longer make sense under a different flow. Changing method in practice means running the item down to zero, or a scripted revaluation project, not a dropdown change.

FIFO — first in, first out

FIFO keeps discrete cost layers. Each receipt creates a layer at its own unit cost, and each issue consumes the oldest layers first. In a rising-price environment your COGS lags current replacement cost, which flatters margin in the short term and leaves inventory valued near current cost on the balance sheet. FIFO is the right choice when you genuinely rotate physical stock oldest-first and want cost to track that flow — perishables, batch-dated goods, anything where the layer history is meaningful. The cost is complexity: Acumatica tracks every open layer per item/warehouse, so high-turnover items accumulate a lot of them, and the inventory valuation reconciliation is layer-by-layer rather than a single average.

Average cost

Average (moving average) collapses everything into one running cost per item/warehouse. Every receipt recomputes the average against the on-hand quantity, and every issue leaves at that current average. It is the simplest to reason about and reconcile — one number, not a stack of layers — and it smooths price volatility rather than exposing it. The trade-off is that it hides the timing information FIFO preserves, and a large receipt at an unusual price shifts the cost of everything already on hand. For most distribution and general inventory scenarios in the region, Average is the pragmatic default: finance understands it, the sub-ledger stays simple, and the month-end variance investigation is short.

Average is not a single global number

The moving average is maintained per item per warehouse (and per valuation cost basis). Transfers between warehouses move cost between those pools. If two sites show different unit costs for the same item, that is expected behaviour, not a bug.

Specific — track by lot or serial

Specific identification carries the exact cost of the exact unit. It is only meaningful for items you already track by lot or serial number, where each physical unit is individually identifiable and its acquisition cost is known. Think high-value, low-volume goods — equipment, precious materials, regulated items with recall requirements. It gives you the most precise COGS possible, and it is the most operationally demanding: every issue has to name the specific lot/serial, so it only works when your warehouse process already enforces that discipline.

Standard cost

Standard cost fixes a planned unit cost and books the difference between standard and actual as variances (purchase price variance on receipt, and manufacturing variances in production). Inventory always sits at standard, which makes the sub-ledger predictable and makes margin analysis clean — until the standards drift from reality and the variance accounts balloon. Standard is the natural fit for manufacturing and for businesses that want stable planning costs and treat variance as a management signal. It requires a discipline the others do not: a periodic standard-cost roll and review, or the numbers quietly go stale.

Standard cost needs a maintenance cadence

A standard cost is only as good as its last review. If purchase prices have moved 20% and standards have not, every receipt throws a large variance and inventory valuation drifts from economic reality. Schedule the cost roll — quarterly at minimum — and treat growing variances as the alarm they are.

How they compare

MethodCost flowBest fitMain trade-off
FIFOOldest layer firstRotated / dated stock, layer history mattersMany open layers to track and reconcile
AverageMoving average per item/warehouseGeneral distribution, simple reconciliationHides timing; large receipts shift on-hand cost
SpecificExact cost of the exact unitLot/serial-tracked high-value goodsDemands per-unit discipline on every issue
StandardFixed cost + variancesManufacturing, stable planning costsNeeds a regular cost roll or standards go stale

Changing method on a live item

The recurring real-world request is "we picked Average and now we want Standard" (or the reverse). There is no in-place switch on an item with history. The clean path is to run the item quantity to zero, change the method, then receive it back in — practical only for a handful of items. For a whole company it becomes a project: freeze transactions, capture on-hand quantities and current valuation, adjust everything out at the old method, change the item/class method, and adjust back in at the target cost, tying the net inventory GL impact to zero. Do it in a copy of the tenant first, reconcile the inventory sub-ledger to the GL before and after, and pick a period boundary with finance so the cut-over is clean.

Choosing without regret

Default to Average unless you have a specific reason not to — it is the simplest to run and reconcile, and most distribution businesses never outgrow it. Reach for FIFO when physical rotation and layer history genuinely matter, Specific when you already track lots or serials on high-value goods, and Standard when you are manufacturing or need stable planning costs and can commit to maintaining them. The one thing you cannot do cheaply is change your mind after go-live, so decide with finance up front. If you are weighing this for a live implementation, reach out or keep reading through the rest of the Acumatica blog.

John Kihiu
Acumatica ERP Developer · Laravel Engineer

Independent software engineer in Nairobi specialising in Acumatica customisations, Laravel backends, and tax fiscalisation integrations across East and Southern Africa.