{"id":88,"date":"2008-11-12T16:55:53","date_gmt":"2008-11-12T16:55:53","guid":{"rendered":"http:\/\/www.supplychainview.com\/blog\/?p=88"},"modified":"2009-05-11T14:29:45","modified_gmt":"2009-05-11T14:29:45","slug":"inventory-managagement-101-how-reorder-point-control-works","status":"publish","type":"post","link":"http:\/\/www.supplychainview.com\/blog\/2008\/11\/inventory-managagement-101-how-reorder-point-control-works\/","title":{"rendered":"Inventory managagement 101 &#8211; How reorder point control works"},"content":{"rendered":"<p>This is basic stuff, but as usual there is a lack of clear and concise explanations of this on the web. It is also very important, as most methods of inventory control can be reexpressed as some form of reorder point method. Hence this simple introduction. I have also prepared a <a title=\"ROP Reference Sheet pdf\" href=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/ROP Reference Sheet (RS001.1).pdf\">Reference Sheet<\/a> that summarises the tutorial and a <a title=\"ROP calculator xls\" href=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/ROP calculator.xls\">spreadsheet calculator<\/a> that you can play with.<\/p>\n<h2>Meet Mr Li<\/h2>\n<p>Among other things, he sells widgets. I&#8217;m not sure what kind of widgets, but he usually sells about 5 each week. Sometimes a few more, sometimes a few less, but usually about 5. Every Friday before he closes up shop, he checks how many widgets he has and then calls his supplier to place an order. The widget supplier is reliable, but it takes him 4 weeks to fulfil an order. Mr Li generally receives delivery of widgets on a Monday morning. Because he orders every week, Mr Li&#8217;s average order consists of 5 widgets (though it varies from week to week).<\/p>\n<p>In the normal supply chain inventory management jargon we would say:<\/p>\n<pre style=\"padding-left: 30px;\">Forecast weekly demand (D):     5 units\r\nSupplier lead time (LTs):       4 weeks\r\nPlanned order size (Q):         5 units<\/pre>\n<p>With such a long lead time, Mr Li gets nervous if his stock drops too low (if he runs out his customers will go to Mr Zhang down the street). So he doesn&#8217;t like to end the week with less than 10 widgets in his store-room. <!--more-->That&#8217;s about 2 weeks of sales, but it protects him against a period of higher-than-normal sales, or a late delivery. We can add this to our list of parameters:<\/p>\n<pre style=\"padding-left: 30px;\">Safety stock (SS):              10 units<\/pre>\n<h2>Poor sales<\/h2>\n<p>This has been a disappointing week for Mr Li: he only sold 2 widgets. After his regular Monday morning delivery, he had 11 widgets in stock, so this Friday he has 9 widgets left. It looks as if he should order some more. But we are missing an important piece of information: we don&#8217;t know how many widgets he has on order. If he&#8217;s expecting large deliveries in the future, he shouldn&#8217;t add to them just because he is low on stock now. In fact, because it takes 4 weeks for an order to arrive, that wouldn&#8217;t even help his immediate problem. Luckily Mr Li has a cool head and long experience of his business.<\/p>\n<p>His purchase records show that he has four orders outstanding. Next Monday he is due a delivery of 5 widgets, and in the following weeks he will get 8, 6 and 7 widgets respectively. In total that makes 26 widgets.<\/p>\n<pre style=\"padding-left: 30px;\">Stock on hand:                  9 units\r\nStock on order:                 26 units<\/pre>\n<p>So perhaps with so much on order it&#8217;s not a good idea to order more. Remember that Mr Li wants to end up with 10 widgets in stock on the Friday before he receives the order he&#8217;s about to place (so that will be in 4 weeks time). But he can calculate what figure is likely to be: he knows how much stock he has now (<strong>stock on hand<\/strong>), he knows how much he is expecting to receive (<strong>stock on order<\/strong>), and he knows how much he expects to sell &#8211; over 4 weeks with demand of 5 units each week it will be about 20 widgets. We call this last figure the <strong>Lead time demand (LTD)<\/strong>. Remember that it represents a forecast (our best guess), not what we&#8217;re guaranteed to sell.<\/p>\n<p>Mr Li makes the calculation:<\/p>\n<pre style=\"padding-left: 30px;\">Stock on hand + Stock on order - Lead time demand\r\n= 9 + 26 - 20\r\n= 15<\/pre>\n<p>Mr Li realises that even if he doesn&#8217;t place an order this week, he has plenty of stock. Unless sales pick up, he will probably be OK waiting until next Friday when he will place his normal order (for about 5 widgets).<\/p>\n<p>I&#8217;m going to rearrange the formulae so they are easier to work with in practice, but let&#8217;s have a look at this in a picture first:<\/p>\n<p><img loading=\"lazy\" class=\"alignnone size-medium wp-image-90\" title=\"ROP example 1\" src=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop1-300x283.png\" alt=\"\" width=\"300\" height=\"283\" srcset=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop1-300x283.png 300w, http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop1.png 736w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/> What we have done is add together all the stock in Mr Li&#8217;s supply chain and considered it together. You will see I have marked on the picture the Reorder point, and counting widgets you can see that it is set at 30. Why have I chosen this figure?<\/p>\n<p>Well if we subtract from it the Lead time demand (what we&#8217;re going to sell before we receive the order we&#8217;re about to make) we get 10, the safety stock, or the number of widgets Mr Li wants on the shelf as a target minimum. In other words:<\/p>\n<pre style=\"padding-left: 30px;\">Reorder point (ROP) = Lead time demand + Safety stock<\/pre>\n<p>This is a simple but fundamental formula: if you have a demand forecast <em>and<\/em> a lead time <em>and<\/em> a safety stock target, you have the ROP. So the reorder rule is:<\/p>\n<pre style=\"padding-left: 30px;\"><strong>Order only if<\/strong> Stock on hand + Stock on order &lt;= Reorder point<\/pre>\n<h2>How much to order<\/h2>\n<p>This is our next decision. We could just order 5 widgets each time (we wouldn&#8217;t even have to check the reorder point), and if that&#8217;s a fair reflection of the weekly demand that would work out OK (and would be very convenient for the supplier, preventing problems further up the supply chain). We call this a <strong>rate-based schedule<\/strong>, and I will discuss this approach another time. Mr Li doesn&#8217;t do this, because the extra inflexibility of this approach means he would have to hold more stock to achieve the same availability of product.<\/p>\n<p>He is aiming to place an order every week of about 5 widgets (one week&#8217;s worth of sales). So he sets an <strong>Order-up-to level<\/strong>:<\/p>\n<pre style=\"padding-left: 30px;\">Order-up-to level = Reorder point + Planned order size<\/pre>\n<p><img loading=\"lazy\" class=\"alignnone size-medium wp-image-97\" title=\"ROP example 2\" src=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop2-300x283.png\" alt=\"\" width=\"300\" height=\"283\" srcset=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop2-300x283.png 300w, http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop2.png 736w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>Consider what happens at Mr Li&#8217;s the following Friday.<\/p>\n<p>This week business has been really good. He has sold 8 widgets in total. Luckily he received his delivery of 5 widgets on the Monday morning. If you remember he had 9 in stock at the end of the previous week, so he started the week with 14 widgets.<\/p>\n<p>So now, taking into account the 8 items he sold this week, he has 9 + 5 &#8211; 8 = 6 widgets left. Looking at what he has outstanding from his supplier, he sees he also has 8 + 6 + 7 = 21 left on order.<\/p>\n<p>This makes:<\/p>\n<pre style=\"padding-left: 30px;\">  Stock on hand + Stock on order\r\n= 6 + 21\r\n= 27\r\n&lt;= 30 (Reorder point)<\/pre>\n<p>Therefore it&#8217;s time to place an order. We want to order to bring our total <strong>effective stock<\/strong> (on hand + on order) up to 35 (the order-up-to level = ROP + Q). So Mr Li needs to place an order for 35 &#8211; 27 = 8. So the rule for the size of the order placed is:<\/p>\n<pre style=\"padding-left: 30px;\">Order placed = ROP + Q - Stock on hand - Stock on order<\/pre>\n<h2>Further thoughts: Kanban and refinements<\/h2>\n<p><img loading=\"lazy\" class=\"alignnone size-full wp-image-101\" title=\"rop3\" src=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop3.png\" alt=\"\" width=\"500\" height=\"212\" srcset=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop3.png 1158w, http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/rop3-300x127.png 300w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/>This chart shows what happens to effective stock over time: it goes up and down as we place orders and use stock, but it never exceeds the Order-up-to level. This means that there is a cap on the total stock in the part of the supply chain we are controlling, and wherever there is a cap like this we are operating a form of <strong>Pull system<\/strong>. (Although in the rest of the supply chain pull may not be operating.) In fact, the ROP model describes what is happening in a <strong>Kanban<\/strong> system too. Kanban cards are orders to a workstation up the line from one down the line because stock has been consumed to a defined point. The number of Kanbans in the system represents Lead time demand (work in progress at the upstream workstation) plus an element of safety stock (to buffer against congestion, quality issues, machine outages and other causes of time variation). And of course the Lean goal is to reduce set-up times so that we can operate with Q=1.<\/p>\n<p>Probably the simplest variant is the <strong>Two bin<\/strong> system: we keep two storage bins of the product. When one is empty, we order another bin&#8217;s worth. Get the bins the right size and it&#8217;s a very low-tech solution for a stable environment without too many SKUs. It&#8217;s equivalent to a two-card kanban loop.<\/p>\n<p>Another variant on the ROP approach is a simple <strong>Top-up<\/strong> system. Instead of checking whether the stock has reached the ROP, we replenish to the Order-up-to level every time we review. This is particularly useful when we&#8217;re not recording material usage. For example in a workshop there&#8217;s little benefit in recording each time we use this or that fixing (we use a lot, they cost pennies, recording would add no value). So these items are usually on &#8220;free vend&#8221;, and we ensure a regular supply by topping up the storage bin each day or week. Provided we choose the right size bin, this should work well, and we&#8217;re using an equivalent ROP of the Order-up-to level minus usage over the review interval (and a zero lead time). In fact there are businesses that provide this as a service &#8211; the fixings suppliers are essentially doing VMI (vendor managed inventory) with a weekly top-up.<\/p>\n<p>I have made a couple of simplifications in my account above that you need to understand if you want to put this approach into practice. First, I have assumed there are no <strong>back-orders<\/strong>. If we allow a customer to reserve products even if we&#8217;ve run out, we need to subtract these back-orders from on hand and on order stock to calculate a true effective stock figure.<\/p>\n<p>Second, Mr Li only reviews his stock once a week. This means that he may drop below his ROP midweek but not place an order until Friday. In effect, he has added some extra lead time to the process. It is usual therefore to define the <strong>Effective leadtime<\/strong> as being the <strong>supplier leadtime<\/strong> plus <strong>half the review frequency<\/strong> &#8211; in this case half a week. We would also normally make sure that any other <strong>logistical processes<\/strong> were properly accounted for (such as warehouse handling from dock to bin) &#8211; for Mr Li these were negligible, but in other contexts the one or two days they add might be significant. So Mr Li&#8217;s effective leadtime is actually 4.5 weeks, and the leadtime demand is 22.5 widgets.<\/p>\n<p>This leads to the following observation: all else being equal we want the highest review frequency possible. Kanban creates a kind of continuous review &#8211; as soon as a container is empty a card is released. Even ten years ago I was coming across monthly review of stock levels &#8211; so that&#8217;s over 2 weeks of lead time that could be removed immediately. Where stock levels are system controlled, there is no reason not to have a daily review. Note this does not mean more orders: order size is controlled by our Q parameter, or the difference between Order-up-to and ROP. So this doesn&#8217;t mean more work for planners or inbound logistics. It just means lead time reduction.<\/p>\n<p>When does Reorder point control stock being a pull system? This is a topic for another time, but the simple answer is &#8220;as soon as we change the ROP&#8221;. Demand goes up, we need more stock in the system (this happens in manufacturing too if production rates need to rise). So we raise the ROP. This is where the problems start &#8211; the <strong>Bullwhip<\/strong> or <strong>Forrester Effect<\/strong>, and other nasty things. A topic for another time.<\/p>\n<h2>Links<\/h2>\n<p><a title=\"ROP Reference Sheet pdf\" href=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/ROP Reference Sheet (RS001.1).pdf\">ROP Reference Sheet (RS001.1).pdf<\/a><br \/>\n<a title=\"ROP calculator xls\" href=\"http:\/\/www.supplychainview.com\/blog\/wp-content\/uploads\/ROP calculator.xls\">ROP calculator.xls<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is basic stuff, but as usual there is a lack of clear and concise explanations of this on the web. It is also very important, as most methods of inventory control can be reexpressed as some form of reorder point method. Hence this simple introduction. I have also prepared a Reference Sheet that summarises [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[29,6,7],"tags":[68,13,56,20,73,72,32],"_links":{"self":[{"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/posts\/88"}],"collection":[{"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/comments?post=88"}],"version-history":[{"count":22,"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/posts\/88\/revisions"}],"predecessor-version":[{"id":107,"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/posts\/88\/revisions\/107"}],"wp:attachment":[{"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/media?parent=88"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/categories?post=88"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.supplychainview.com\/blog\/wp-json\/wp\/v2\/tags?post=88"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}