Any tips on what value to use for initial buffer size on TameFlow-Kanban?

Hi everyone,

I’m currently re-reading chapter no. 18 Tameflow-Kanban: The throughput focused Kanban and I cannot find what is usually a good starting point for a work state buffer size. I recall that for MMR buffer size a good starting point could be 50% of the MMR total size.
I wonder if there is a way to initially determine the buffer size for a work state in TameFlow-Kanban? (other than coming up with a random number :wink: )

Thanks in advance,

1 Like

Hi dhdez

Great question. And good that you make the distinction between the MMR buffer, and the buffer on the TameFlow board.

To establish a heuristic for sizing the buffer, start by considering why we put the buffer in place. The primary purpose is to ensure that the constraint work state (column) never runs out of work, because we know that time lost on the constraint can never be recovered and is time lost for the entire system.

Now we can look at this taking into account the time dimension. Imagine to lower WIP to the minimal possible, and that we work in ideal conditions, with no hiccups, problems, emergencies or disasters. What is the minimal that needs to happen? For continuous operation of the Constraint a Work Item needs to be released into the Work Flow at such timing that it reaches the Constraint “just in time” - in other words, as soon as the Constraint is done with one Work Item, the new one should turn up in front of the Constraint, at that same very moment.

As an example: suppose the Constraint takes on average an in-State Flow Time of 1 day. Further suppose that the average Flow Time for a Work Item to traverse the part of the Work Flow that is upstream of the Constraint is 3 days. So a replenishment signal (the “drum”) needs to be raised 3 days earlier than when the Work Item is needed at the Constraint. Now three divided by one is three: that gives you a first indicative size for the Buffer.

Now remember, we said this was for an ideal situation. We must now give space for Mr. Murphy to hit the system with random variation. In other word you need to cater for the situation when the Flow Time from start up to the Constraint is greater than the average 3 days (after all, it is an average!).

We can reason as we did for the MMR buffer. We might consider what further “travel” time needs to be ensured to have say around 80% due time. With a proportion centered on the idea that 3 days is the 50%, we could arrive at a tentative sizing of 5. (It would be 4.8… but Work Items are integer units so we round up to 5).

This is your starting point. Then you might tune the sizing. You keep on observing how frequently the Buffer signals are raised. If they are raised too frequently, make the Buffer larger. If they are raised to seldom, tighten the screws, and make the Buffer smaller. But don’t get too active on this tuning, or it wil become tampering. Use common sense. Keep it such that it is a challenge but not a stress. We want the teams to be in psychological Flow States!

Hope this helped


Hi Steve,

Thanks a lot for your thorough answer! It makes perfect sense to me. I read thru your example and I can now visualize the work item reaching the buffer as the constraint pulls work out of it.

So basically look at average flow times upstream the constraint, and then cater for Murphy by calculating 80% of that average. After that it is a matter of “fine tuning” the buffer depending on the frequency of signals raised. Making sure we don’t tweak that buffer too often to avoid tampering with the system.

That is great! I’m going to print out your answer and stick it on the back cover for future references :smiley:
Thanks once again :pray:


Thank you Daniel. This is a keeper to design a classroom exercise …