Theory and Practice of Supermarkets – Part 1

Supermarket in Brazil
All about supermarkets…

Kanban, FiFo lanes, and supermarkets are the backbone of many pull system. Some people even define lean production through its use of kanban and supermarkets. Yet why are supermarkets so useful? First we will look at what exactly makes an inventory into an supermarket. My next post will then give tips and hints on the practical use of supermarkets on the shop floor.

Simply said, supermarkets are inventories at the end of a pull system. However, not every inventory at the end of a pull system is a supermarket. There are some additional requirements on supermarkets that are not strictly necessary for pull systems and may sometimes even be not useful. But before we go deeper, let’s look at a bit of history.

A Bit of History on Supermarkets

Piggly Wiggly Supermarket
The original Piggly Wiggly supermarket

Supermarkets in manufacturing are actually named after retail supermarkets, or more precisely self-service grocery stores. Before, whenever you went shopping, you told the attendant what you wanted, and he or she got you the items from the back of the store, quite like many modern pharmacies.

The breakthrough in supermarkets was that the customer picked up the items themselves and paid at the check out. The company that pioneered this was Piggly Wiggly, opening its first store in Memphis in 1916, but the idea soon spread due to the savings being significantly greater than the occasional theft.

One small aspect of these supermarkets was the reordering principle. While not a completely novel concept, they simply reordered whatever quantity they sold to the customer. It is this aspect that defines modern supermarkets in manufacturing.

The first implementation of these supermarkets was by Taiichi Ohno at Toyota in 1948. Back then there were no supermarkets in Japan, but Ohno had heard about them and seen pictures taken by a classmate. Hence he named his inventories supermarkets. Only ten years later, in 1956, did Ohno visit the US, where he made sure to stop by some real retail supermarkets.

What Are Supermarkets?

Let’s look at what defines a supermarket in manufacturing. But before that, we would briefly need to look at pull systems.

What kind of finished goods inventory can I have in a pull system?

Pull System Inventory
In a pull system, you can only produce if a part leaves the system!

The difference between push and pull is that a pull system limits the amount of inventory in the system (see my post on the (True) Difference between Push and Pull). In a pull system, completed parts are also counted toward the inventory limit. Hence, regardless of how we store the inventory, there cannot be more parts than what the cap on WIP allows.

Only if a part leaves the system is a signal given to start production of another part. In a kanban system, this signal is the kanban and tells the first process to re-produce exactly this part and quantity. In a CONWIP system, the signal is a CONWIP card and tells the first process to produce whatever order is most urgent.

Regardless of the type of inventory, if the limit on WIP is maintained, it is a pull system. It is not necessary to have a supermarket in order to have a pull system. Even if it is an absolutely unorganized and chaotic inventory, it is a pull system if the cap on WIP is maintained. Only when a part leaves the system (hopefully sold to a customer, but could also be scrapped or broken) is permission to produce another part given.

What are the requirements of a supermarket?

Spices in a supermarket shelf
Spices in a supermarket shelf

A supermarket is not just any inventory. Instead, a supermarket is an inventory organized according to some rules. The three primary conditions that define a supermarket are:

1) The products are split by part type: In a supermarket, parts are stored in groups according to their part type. Ideally they are stored in physical groups, which allows easy observation of the current state (visual management). Alternatively, they could also be merely digitally arranged within an ERP system, although in this case you would need to dig through the data to see if you are running out of stock.

2) FiFo (First-in-first-out) is maintained: The first part of one type that went in the supermarket is also the first part that is taken out if that part type is required. The FiFo principle ensures that the oldest part is always used first.

3) A part leaving the supermarket gives a signal for re-production or delivery of more goods: The requirement for pull production is that any part leaving the last inventory (the supermarket) gives a signal (e.g., a kanban card) to replenish the part(s). If the supermarket is at the end of a production line, the signal is to produce more. If the supermarket is at the end of a logistic chain, the signal is to order more.  Hence, it is a requirement for a functioning supermarket to give exactly such a signal. Only having a part type specific FiFo (the first two conditions) is not a supermarket, but merely a nice inventory.

Are there additional requirements?

Some practitioners also add a minimum limit to the supermarket. This is possible. An inventory of completed goods in the supermarket below this level indicates something is going wrong. The supermarket is in danger of running out of parts. If your supermarket falls below this minimum, you should check if more parts of this type are in the pipeline. If there are no parts in the pipeline that will become available shortly, you may have to act and re-prioritize production to avoid stock-outs.

Please do not confuse a minimum level with an inventory that cannot be touched. Of course, if you need the parts, use them! Just do some troubleshooting to find out why there are not more parts in the supermarket.

As for the minimum quantity, the minimum level should be large enough that you still have time to act if you reach it. On the other hand, it should not be so large that you have lots of false warnings.

Fuel Gauge RedTake, for example, the fuel gauge in your car. If the warning light goes off when you have only three miles left, then this probably is way too late. Hence, your minimum is too low. On the other hand, if the warning goes off if  there is still half a tank of fuel, then it will be more annoying than helpful. In this case, your minimum is too high. Finally, if your fuel gauge is set at 20% but starts to blink five times a day, then your fuel tank is too small! Same goes for supermarkets.

Fuel Gauge Red Yellow GreenSome people get really excited with adding a minimum, and want to do more. Sometimes they add also a yellow  area to indicate a pre-warning and a green area to indicate everything is fine. Frankly, I would advise against that. It may be a case of too much labeling or too much 5S. Again, take your fuel gauge as an example. Do you really need a yellow and a green area? If you have too many yellow and red colors, it confuses the image and makes people ignore warnings. In any case, don’t expect shop floor people to pay attention.


Hence a supermarket is an inventory at the end of a pull system that stores items sorted by their part types in a first-in-first-out sequence. Whenever a part leaves the supermarket, a signal for reproduction is sent back to the production system. Hence, in theory supermarkets are rather easy. In practice, however, they are a bit trickier. My next post will give you some additional tips on how to use supermarkets in reality. In the meantime, go out and organize your industry!

4 thoughts on “Theory and Practice of Supermarkets – Part 1

  1. I really like the gas gauge example. Clearer and easier to understand than the examples I have used with our production personnel.

  2. Many thanks, David. I have to admit that I am a little proud of that idea (which I think I have not seen anywhere else). Of course, it is not perfect, as with a gas tank you either refill or empty it, whereas in a pull system you can do both at the same time. Hoover dam would be better for that, but there I have no control over the filling process. Still looking for the perfect example, but I am getting closer 🙂

Add a Comment