Odoo inventory guide

How to calculate the reorder point in Odoo

The reorder point is the on-hand level that should trigger your next order. This guide gives you the formula, a worked example, exactly how to set it in Odoo, and where a static min and max starts to cost you.

Updated June 30, 2026 · by Niyu Labs · about 6 min

What a reorder point is

The reorder point answers one question: at what stock level do I order more so it arrives before I run out? Order when you hit it, and the new stock lands just as the old stock would have run dry.

It has two jobs. The first is to cover the demand you expect while you wait for the order to arrive, which is the lead time. The second is to hold a buffer for the weeks when demand runs hot or the supplier runs late. That buffer is your safety stock, and it is what separates a reorder point from a simple guess.

The reorder point formula

Two inputs you can measure, plus the buffer you choose.

Formula

Reorder point = average daily demand x lead time (days) + safety stock

Demand during lead time + safety stock = the level that triggers a new order

  • Average daily demand: recent demand divided by the number of days
  • Lead time: days from placing the order to receiving the goods
  • Safety stock: the buffer for variability, sized on the safety stock guide

A worked example

A product that sells 40 units a day, with a 14-day lead time and 80 units of safety stock.

Formula

40 x 14 + 80 = 640 units

Order when on-hand reaches 640. The 560 units cover demand during the 14-day wait, and 80 units absorb the bad weeks.

Setting the reorder point in Odoo

Odoo does not compute a reorder point for you. You encode it as the minimum quantity on a reordering rule.

  1. 1

    Open the product's reordering rules

    On a storable product, open Reordering Rules, or go to Inventory then Operations then Replenishment.

  2. 2

    Set the minimum quantity to your reorder point

    Odoo does not compute a reorder point for you. The Min quantity is the trigger: when forecasted stock falls below it, Odoo proposes an order.

  3. 3

    Set the maximum quantity

    Max is the level Odoo replenishes back up to. A common choice is the reorder point plus the quantity you want each order to cover.

  4. 4

    Add a quantity multiple if needed

    Round orders to a pack, carton, or pallet with the quantity multiple, and let the scheduler create the purchase or transfer.

Min equals reorder point

In Odoo, the Min quantity on a reordering rule is your reorder point, and Max is the level it tops back up to. When forecasted stock drops below Min, the Replenishment dashboard or the scheduler proposes the order.

Where a static min and max stops

The formula is only as good as the numbers in it, and in native Odoo those numbers sit still.

Demand is seasonal and lead times drift, but a Min quantity does not move until someone edits it. On a handful of steady products that is fine. Across a few thousand, the reorder points quietly go stale, and you find out through a stockout or a pile of dead stock. Odoo also triggers on forecasted stock, which is a projection from confirmed orders, not a prediction of future demand, so it reacts rather than anticipates. There is more on this in the reordering rules comparison.

Forecast-driven reorder points

Keep the formula you already understand, and let it move with demand.

Niyu Smart Stock computes the same reorder point for every product and warehouse, but it drives the average daily demand from a forecast, sizes safety stock from a service level, and expresses the min and max as days of stock so they scale on their own. It recomputes every day and drafts the resulting purchase or transfer in Odoo for you to approve. You keep the concept; you lose the maintenance.

Reorder point calculator

Try it with your own numbers. The formula is shown so you can see the working.

Reorder point

640units

40 x 14 + 80 = 640

Estimates for planning. Demand, lead time, and variability change over time, which is exactly what a forecast keeps up with.

No spam. One email with your numbers and the checklist.

Niyu Smart Stock computes the reorder point, safety stock, and the buy or transfer for every product and warehouse in Odoo, recomputed daily from a demand forecast. This calculator does one line at a time.

See it on the free tier

Frequently asked questions

What is the reorder point formula?+

Reorder point equals average daily demand multiplied by the lead time in days, plus safety stock. The first part covers the demand you expect during the wait for stock; the safety stock covers demand and supply that run worse than average.

Does Odoo calculate the reorder point automatically?+

No. Odoo's reordering rules use a minimum quantity that you set and maintain by hand, which acts as the reorder point. Odoo triggers replenishment when forecasted stock falls below that minimum, but it does not calculate the minimum from demand and lead time for you.

What is the difference between the reorder point and the minimum quantity in Odoo?+

They are the same thing in practice. In Odoo you encode the reorder point as the Min quantity on a reordering rule. The difference is that a reorder point should be recalculated as demand and lead time change, while a Min quantity sits still until someone edits it.

How often should I update reorder points?+

As often as demand and lead times move, which for many products is monthly or faster. That maintenance is the real cost of static min and max values, and it is why forecast-driven tools recompute them automatically.

How does Niyu Smart Stock handle the reorder point?+

It computes a forecast-driven reorder point for every product and warehouse: average daily demand from a demand forecast, multiplied by an effective lead time, plus service-level safety stock. It expresses the targets as days of stock so they scale with demand, and it recomputes daily.

See it plan your Odoo stock, on the free tier

Install the module, run it on your own data, and compare the recommendations before you commit. No card required.

See everything Niyu Smart Stock does