Demand History and Stockout-Aware Forecast Quality
Review monthly demand, warehouse availability, stockout adjustment evidence, trends, and the source split used for the Action Line.
Open an Action Line > Demand History, or use the chart button in Purchase Review. The view is calculated locally for the selected product and warehouse and does not start a forecast or consume a forecast refresh.

Choose the evidence window
Use 6M, 12M, or 24M. The history is shown as of the forecast run where possible, so later orders do not appear as if they influenced an earlier recommendation.
Summary cards
- Demand - Last 30 Days: confirmed demand up to the snapshot cutoff.
- Average Monthly Demand: average of recent complete months; a partial current month is excluded from the complete-month average.
- Recent Trend: latest three complete months compared with the previous three.
- Stock Availability - Last 90 Days: reconstructed in-stock percentage and out-of-stock day count.
Demand sources
- Sales Orders: confirmed demand assigned to the warehouse.
- POS: validated Point of Sale demand when enabled and available.
- Inherited: eligible demand transferred from obsolete products.
- Estimated During Stockouts: constrained-demand estimate shown separately when adjustment is applied.
The Monthly demand used for forecast chart stacks recorded sources. An estimated segment is visually separate so users can distinguish observed demand from the added estimate.
Out-of-stock days
An OOS day is a completed day whose reconstructed end-of-day physical stock was zero or negative. The reconstruction uses current stock and completed stock movement history. It does not claim hourly availability and Odoo does not provide historical reservation snapshots.
Monthly details
Expand Monthly details to review Sales Orders, POS, inherited demand, recorded total, estimated stockout demand, adjusted total, demand days, OOS days, in-stock rate, month-end stock, and demand per in-stock day.
Stockout adjustment states
- Adjusted: eligible constrained demand was added.
- Adjusted and capped: an estimate was applied but limited by the safety cap.
- Flagged: stockout risk was found, but demand was not adjusted under the selected mode.
- Limited evidence: stockouts exist, but reliable in-stock history was insufficient for a safe estimate.
- Availability unknown: warehouse availability history could not be reconstructed reliably.
- Disabled: the global or Planning Rule treatment ignores stock availability.
Forecast Quality statuses
- Reliable: no material stockout-quality issue was identified for the current evidence.
- Adjusted: constrained-demand evidence was applied.
- Needs Review: stockout evidence was flagged, capped, or insufficient.
- Availability Unknown: historical stock evidence is not reliable enough.
- Disabled: stock availability is intentionally not used.
How to use the result
- Confirm the product and warehouse in the header.
- Compare recorded demand with source documents.
- Review OOS days in the same months as low sales.
- Read the adjustment reason and confidence.
- Compare recorded and adjusted average monthly demand.
- Return to How Calculated to see how the forecast and policy became the final recommendation.
Do not call the estimate lost sales
Odoo records fulfilled and confirmed demand, not every purchase a customer might have made. The stockout feature provides constrained-demand evidence, not a guaranteed lost-sales value.
When to ignore availability
Use a Planning Rule override for made-to-order products, project products, services, deliberately seasonal stock, or backorder-driven workflows where a stockout estimate would misrepresent or duplicate demand.
Action Lines: Screen and Field Guide
Understand the current product-by-warehouse plan, recommendation explanation, supply fields, timing, UoM, transfers, documents, and review status.
Planner Purchase Quantity and Purchase Review
Edit purchase quantities before RFQ creation, preserve deliberate zero, review changed suggestions, and update linked draft RFQs explicitly.
