Aggravation in the Grocery Store: Modeling the Checkout Line

Almost everyone has waited – likely impatiently – in a grocery store checkout line. The aggravation rivals another modern irritation – being stuck in traffic. And just like understanding traffic might ease the annoyance (see the reference box for two prior articles on traffic congestion), understanding the dynamics of cashier lines at grocery store might also give some mental relief.

So let’s explore.

The Need for More Cashiers

As we wait in line, we often wonder why the store doesn’t add more cashiers. The store must be trying to save money, at our expense and on our time.

However, our reaction sustainable shop hong kong doesn’t quite hit the mark. More cashiers will not fundamentally solve the waiting problem, nor does having less cashiers fundamentally save the store money. Why might the apparently obvious approach of adding cashiers not work? It might not work because the fundamental problem stems from the TIMING of the cashiers.

Let’s do some simple modeling to understand this. After that, we will add sophistication, and model more complex situations.

Simple Modeling: An Early Morning Scenario

Imagine a grocery store early on a Saturday. As the store opens, a small cadre of early risers enters. In this (relatively simple) situation, what waits might these shoppers experience?

Let’s put some numbers to the scenario, to enable calculations. We want the scenario simple enough to grasp it intuitively but still representative enough to mimic reality. Let’s use these assumptions.


  • 30 Shoppers
  • 15 items purchased per shopper
  • per item checkout time of three seconds (i.e. scanning, bagging, etc.)
  • A added per shopper checkout time of 45 seconds (i.e. payment, etc.)
  • Three cashiers on duty


As the store opens, the shoppers surge in and after a few minutes the first of the 30 shopper arrivers at the cashiers. From that point, we will assume a shopper arrives at the checkout lines every 30 seconds.

Will these shoppers need to wait? How long? How many of them?

Let’s step through events to find out. When the first shopper arrives at the checkout line, that shopper will go without waiting to one of the three cashiers (i.e. all three are available). The second shopper arriving at the checkout line will see one cashier busy (with the first customer), but will see two cashiers with no line and go without waiting to one of them. Similarly, the third arriving shopper will see two cashiers busy, but the third cashier with no line and go there.

Now the fourth shopper arrives. To which line do they go? Well, we are now 90 seconds after the first shopper’s arrival (three shoppers later times the 30 second arrival interval). Will the cashier checking out the first shopper be available in time? Certainly. Checkout requires 90 seconds – 15 times 3 seconds, or 45 seconds, for the items plus 45 seconds more per shopper. So the first cashier has completed checkout for the first shopper when the fourth shopper arrives at checkout.

So the fourth shopper goes to the first cashier, without waiting. This sequence will continue, for example the second cashier will finish with the second shopper just as the fifth shopper arrives at the checkout line. Thus no shopper will experience a wait.

We can reach the same conclusion – no waits – another way, through a ratio. Specifically, with constant arrival intervals and service times, we divide the service time (the 90 seconds) by the servers (the three cashiers) and compare the result to the arrival interval. In this case, that ratio equals or exceeds the arrival interval (i.e. 90/3 is >= 30) indicating the servers can handle the load without delays.

Now overall, when all shoppers are checked out, the three cashiers will have handled 30 customers and 450 grocery items, and have spent 45 minutes checking out customers, i.e. 90 seconds per customer times 30 customers.

No shopper will have experienced any wait. The last shopper will arrive at the checkout lines after 15 minutes, i.e. 30 shoppers times the 30 second arrival rate, and finish 90 seconds later.

The Impact of Timing

We stressed that TIMING stands as the key variable, so let’s alter the scenario to demonstrate that. We will now assume the shoppers arrive at the cashier lines every 15 seconds.

Will the shoppers encounter waits? Let’s step through events. Just as with the 30 second arrival rate, the first three shoppers get served without delay, by the three cashiers. The fourth shopper, however, arrives 45 seconds after the first shopper. (Remember we have a shopper arriving at checkout every 15 seconds). Unlike the first scenario, where the first cashier was just completing servicing the first shopper, the first cashier has handled only 45 seconds of the 90 seconds required.

Thus, the fourth shopper now waits 45 seconds for the first cashier to complete the first shopper. In a similar fashion, the fifth shopper (going to the second cashier) and the sixth shopper (going to the third cashier) will also experience 45 second waits.

What wait will the seventh shopper experience? That shopper arrives 90 seconds after the first shopper, i.e. six shoppers later times the 15 second arrival interval. The first cashier, however, has just completed the first shopper, and will spend 90 seconds servicing the fourth customer. The seventh shopper thus waits 90 seconds.

This sequential lengthening of the wait times continues. By the last shopper, the waiting time grows to 405 seconds, almost seven minutes. Across all thirty shoppers, the total waiting time sums to 100 minutes, over an hour and a half of shopper time wasted waiting.

Now let’s compare the overall metrics of our two scenarios. With both a 30 second and a 15 second arrival interval, the cashiers check out the same number of customers (30) and items (450). The cashiers spend the same combined time checking out customers (45 minutes). The last shopper is finished checkout at about 16 minutes (a spreadsheet can be used to calculate this).


Related Posts

Leave a Reply

Your email address will not be published.