Odoo 19WarehouseFree

Cost Price History Report

Product cost price history - see every cost change Odoo already records, with what the cost was before, what changed and who changed it

The video below shows Cost Price History Report running on a real Odoo 19 database. Want it driven against your own data, or a question answered first? Ask and we will set up a session.

What it does

Odoo already records this. It just never shows you.

Every time somebody changes a product's cost, Odoo writes down the product, the new cost, the date and the user. There is exactly one screen for that data in the whole system - a single-record form reached from a stock move - and no list, no filter and no menu. This is the missing report. It stores nothing new.

What it was, what it became, who changed it

Every cost change newest first: the previous cost, the new one, the difference in money and as a percentage, and the person who typed it. Filter to a month, to rises or to falls. Group by product, by month or by user.

"Previous" means the real previous cost

It is read from the product's whole history, not from the row above it on screen. If it were taken from what you can see, filtering to one month would report each change as a move from the last visible cost rather than the real one - and every figure on the page would be wrong in a way nothing on the page reveals.

Without the noise Odoo leaves in the data

Odoo writes a line the moment a product is created, reading "from None to 0.0". Left alone it puts a cost change on every product you own, dated the day it was created. Those are hidden by default, and so are valuation entries from stock moves, which are a different thing and would make the percentages meaningless.

A starting cost is not a rise from nothing

The earliest cost on record is shown as a change of zero rather than an infinite increase, so new and migrated products do not sit at the top of every "biggest increases" list.

What it does not do

It does not record anything. If Odoo did not already store a change, this cannot show it. Cost edits made before you upgraded are not there, and neither is anything Odoo chooses not to keep.

It does not cover FIFO products. Odoo skips them on purpose: with FIFO the cost is worked out from the stock layers rather than typed, so there is no "someone changed it" to record. Average-cost and standard-cost products are covered.

It does not show stock valuation entries. Those come from moves, not from somebody changing a price, and Odoo's own stock valuation report covers them. Mixing them in would make the percentages meaningless.

It needs Inventory with valuation. That is the module where Odoo keeps this data. Reading it needs the Inventory Manager right, which is Odoo's setting and not one this changes.

Screenshots

Cost Price History Report in Odoo — screenshot history

Requirements

  • Odoo 19.0, Community or Enterprise.
  • Odoo.sh or On-Premise only. Third-party apps cannot be installed on Odoo Online (SaaS) databases — check your hosting before buying.
  • Module mh_cost_price_history, version 19.0.1.0.7, licensed OPL-1.

Related apps

← All Odoo apps