The cost adjustment job in Business Central
Why Business Central separates inventory cost adjustment from posting — how the Adjust Cost - Item Entries batch works, when it runs, and the value-entry chain that ties it all together.
When you sell an item before its true cost is known — a sale shipped today against a vendor invoice that arrives next week, or a transfer received before the costing run that establishes its standard — Business Central posts the sale at an expected or best available cost, then comes back later to adjust the cost via the Adjust Cost - Item Entries batch job. Understanding this two-step pattern is essential to reading BC's inventory accounting.
Why costs aren't always final at the moment of sale.
- A purchase receipt can post before the purchase invoice is received. Item ledger entries get an
Expected Costuntil the invoice posts. - A revaluation runs after an item has already been sold; the cost difference needs to flow forward.
- An inventory adjustment (e.g. write-off) changes the cost basis of remaining stock.
- A standard cost change revalues open inventory and may require COGS adjustment on already-shipped items.
In all these cases, the original transactions are correct from a quantity perspective; only the unit cost needs revision.
The value entry chain. Each item ledger entry has one or more value entries attached:
- The first value entry captures the cost at the time of the original posting.
- Subsequent value entries capture cost adjustments —
Direct Cost,Indirect Cost,Variance,Revaluation,Rounding. - The sum of value entries equals the current cost recorded against the item ledger entry.
This separation lets BC track how a cost became its current value, not just the final number — auditing the cost history is essential during cost disputes.
Adjust Cost - Item Entries. The batch job:
- Scans for item ledger entries whose costs are still flagged as not adjusted or have downstream entries needing adjustment.
- Recomputes the cost for each affected entry using the item's costing method (FIFO, LIFO, Average, Specific, Standard).
- Posts value entries to capture the adjustment.
- If
Automatic Cost Postingis enabled on Inventory Setup, the value entries also post to the general ledger; otherwise the Post Inventory Cost to G/L batch posts them later.
Costing methods determine the math.
- FIFO — outbound entries match against earliest inbound; adjustments propagate when those inbounds are revalued.
- LIFO — same, but latest inbound first. Rare; some US tax positions.
- Average — running weighted average. Adjustments to one inbound recompute the average and ripple forward.
- Specific — by lot or serial; adjustments stay tied to the specific unit.
- Standard — items always post at standard; variances post separately. Adjustments materialise as additional variance entries.
Running cadence. Most BC tenants schedule Adjust Cost on the Job Queue to run nightly or hourly. Some run it after every purchase invoice posting. Don't leave it manual — un-adjusted entries pile up and the next run takes much longer.
Automatic cost adjustment. On Inventory Setup, the Automatic Cost Adjustment field can be set to:
Never— manual only (not recommended in production).Day,Week,Month,Quarter,Year— entries posted within that window trigger an immediate adjustment on next save.Always— adjusts on every transaction.
Always is theoretically pure but kills performance in high-volume environments. Most use Day plus a scheduled nightly run.
Post Inventory Cost to G/L. Separately from Adjust Cost, the value entries created need to flow to the General Ledger. The Post Inventory Cost to G/L batch reads value entries and creates G/L entries for COGS, inventory account, variance, etc. Either run it via job queue or set Automatic Cost Posting = Yes on Inventory Setup to post G/L entries inline.
Reconciliation. Two views need to agree:
- Inventory Valuation Report — values inventory based on item ledger entries.
- G/L Inventory Account — balance from posted G/L entries.
If they disagree, the cause is almost always:
- Cost adjustments pending (haven't run Adjust Cost recently).
- Value entries not yet posted to G/L.
- Direct G/L journals against the inventory account bypassing item ledger.
The Inventory Valuation - Reconcile report in BC compares the two and shows the gap.
Common pitfalls.
- Skipping the job. Costs stay at expected; financial reporting is wrong.
- G/L posting disabled. Value entries accumulate; G/L inventory account drifts.
- Manual G/L journals against the inventory account. Reconciliation impossible — fix by only ever using item-side documents.
- Closing period before adjustment. Adjustments posted in a closed period either fail or post into the next period, breaking the historical valuation.
Operational discipline. A clean cost-adjusted environment is the foundation of accurate gross-margin reporting. Treat Adjust Cost and G/L posting as core financial close steps, not a "run if you remember" task.
Related guides
- The standard cost worksheet in Business CentralHow Business Central's standard cost worksheet helps maintain and revalue standard-cost items — annual cost rolls, what-if analysis, and the GL impact.
- Account schedules and financial reports in Business CentralHow Business Central's account schedules and the newer Financial Reports feature work — and how to build P&L and balance sheet reports without leaving BC.
- Aging reports in Business CentralHow Business Central's aging reports work — AR aging, AP aging, date-driven buckets, customisation, and the operational use in collections and cash management.
- Approval workflows in Business CentralHow approval workflows work in Business Central — built-in templates, custom workflow design, Power Automate alternatives, and approval limits.
- Bank deposits and cash management in Business CentralHow Business Central handles physical bank deposits, cash receipts, and the day-to-day cash management beyond bank reconciliation.