You've probably here because you have a queuing problem. Maybe you're looking to implement a queue management system to help make your operation run smoother and improve your guest experience.
But queue management systems are not silver bullets. They can't solve all your operational or wait time issues for you — though they can help.
If you want to fix your wait time problems and get the most out of a queue management system, you should start by understanding the basics of queueing theory.
This is the first in a multi-part series that introduces some important concepts to help you enhance and innovate in your queue management.
Here's what we'll cover:
Let's dive in!
Basics of Queuing and Little's Law
The simplest queue is one in which you have a single channel (also known as a single server) and a single phase of service. This can be a line at the post office with a single clerk.
Other types of queues may have multiple channels, like restaurants or airline ticket counters, where there are multiple resources helping to serve the line.
Queues with multiple phases would be like a drive-thru, where the first phase of service is taking your order, and the second phase is preparing and delivering the order.
In all of these queues, you have customers arriving and customers being served.
Let's first define some terms:
Average service time: the average time it takes to serve a customer.
Average arrival time: the average time between new customers arriving.
From these 2 data points, you can actually calculate a lot about your service operation, including:
- Average queue length
- Average wait time in the queue
I think it'll be easier if we do this through an example, though.
A Simple Queueing Example
Let's take our Post Office's single channel, single phase queue.
Let's say that it takes 2 minutes to serve an average customer. From this, we want to calculate the average service rate, which is the number of customers served per time period.
Average service rate = 60 minutes per hour / 2 minutes to serve a customer = 30 customers served per hour.
We perform a similar calculation with the average arrival time. Let's say customers arrive at our post office every 3 minutes on average.
Average arrival rate = 60 minutes per hour / 3 minutes between customers = 20 customers arrive per hour.
Another helpful stat we can get from the average service and arrival times is your service's utilization, which is the average service time divided by the average arrival rate. You can also think of this as what percent of your service capacity is being used.
Utilization = 2 minutes to serve a customer / 3 minutes between customers = 2/3 = 67%.
From here, you can keep calculating some really interesting information!
Average queue length = utilization^2 / (1 - utilization) = (2/3)^2 / (1 - 2/3) = 1.33 people waiting, on average.
Now we come to Little's Law, which states that the average number of people in your queue is equal to the average arrival rate of new customers times the average wait time in the queue. You can also frame this as: your average wait time is equal to the average number of people in your queue divided by the average arrival rate of new customers.
Average wait in the queue = average queue length / average arrival rate = 1.33 people waiting / 20 customers arriving per hour = .067 hours = 4 minute wait
It's kind of amazing how much you can calculate if you just know the average time between customer arrivals and the average time it takes to serve a customer!
Taken together, Little's Law is a simple yet powerful way for a service operation to diagnose long wait times for customers.
By breaking a simple queue up into its component pieces, you can begin to identify the cause of your issue(s) and determine how to reduce the average time that customers spend in the system. This might involve improving your service efficiency, increasing the number of employees or resources available to serve customers, or implementing other measures to reduce the time that customers spend waiting.
Queue Variability in The Real World
Unfortunately, nice and neat averages are rarely how things play out in the real world.
In reality, there's variation in both customer arrival rates and service times. Not all customers are helped in exactly 2 minutes, and sometimes there are busy periods with twice as many customers showing up.
It turns out that service operations with lots of variability in either the customer arrival time or the service time (or both!) will experience rapid degradation in performance as the systems get heavily loaded.
Said differently, wait times explode when utilization approaches 100%, and increased variability just makes it worse.
Here's a chart showing what happens to wait times as utilization increases for our hypothetical post office, assuming there is some variability in both the service and arrival times.
As utilization increases (i.e., as more and more customers show up relative to the ability of the post office to service them), wait times start to increase massively.
Higher Service Variability Means Longer Wait Times
This chart shows the exact same post office queue except we've doubled the variability of when customers arrive and how long it takes to serve them. The average arrival and service times remain the same.
You can see that for a queue with 80% utilization, average waits jump from 12 minutes to 49 when variability is high!
Lower Service Variability Means Shorter Waits
For completeness, I've added a version of the chart that shows what happens to wait times if the variability of service and arrival times is cut in half. This means that pretty much everyone that visits can be served in a pretty tight window and that new customers arrive at a pretty consistent rate.
You can see that as long as your utilization stays a few points below 100%, your lines will never get too long.
Queue Management in Your Service Operation
By visualizing what happens to wait times as you approach your capacity, and knowing what kind of service operation you run (high or low variability), you can start to break apart your wait time problems.
For example, if capacity is your biggest problem, you can:
- Reduce peak demand
- Increase prices, implement surge pricing, or otherwise create incentives to spread out demand — ideally, without reducing it overall
- Publish real-time wait times so customers self-select out of visiting when it's too busy for them but return when it's not
- Add capacity
- Add resources for serving customers
- Hire more workers or use part-time employees
- Examine whether employee skills are sufficient and being used effectively
- Invest in training to up-level staff
- Hire more junior staff to take simpler tasks off the plates of highly skilled employees so they can focus on their value-added, high-leverage skills
- If additional required resources would be expensive and underused in off-peak times, consider jointly sharing them with other businesses
- Airlines sharing ramps and gates at minor airports (for them)
- Hospitals in a region can share advanced and expensive medical equipment
- Increase or otherwise adjust business hours (if customers would take advantage)
- Phase staff lunch breaks if full lunchtime shutdowns cause late-morning or early-afternoon demand spikes
- Engage your customers to participate in completing the service so your staff have less to do
- Add self-check-in and self-checkout options
- Add resources for serving customers
- Identify key service bottlenecks that you can address to serve customers more efficiently
- Invest in technology that automates rote or time-consuming tasks
- Prioritize only the most essential tasks at peak times
- Clear and reset tables ASAP between covers, but let empty water glasses sit a few extra minutes
However, because variability has such an outsize effect on which wait time curve you're on, it's often even better to start with ways you can reduce variability.
- Reduce service time variability by streamlining where possible
- Separate high- and low-variability services into separate queues
- Reduce the level of customization/flexibility you allow customers so each person's request can be handled in a more streamlined manner
- Have customers do any paperwork ahead of time so you don't need to wait for them and aren't dependent on how quickly they can complete it
- Know your ideal customer and really prioritize targeting them -
- Reduce customer arrival variability, making it more predictable and consistent
- Use a reservations system so people can schedule their place in line, using strict limits on the number of people per time slot
- Develop non-peak demand (but be careful not to lose focus on your core service)
- Add breakfast items if you're a hamburger chain
- Offer mini-vacation weekend specials if you're a hotel catering to business travelers during the week
- Offer complementary services
- Provide an alternate service while customers wait
- 5-minute shoulder massage while waiting for a mani-pedi
- Expand your lounge area so waiting diners can relax with a cocktail
- Develop a service that attracts people during non-peak hours
- A morning wake & refresh routine (sun lamps, meditation, etc.) at a spa or tanning salon
- Provide an alternate service while customers wait
In the end, your customers' wait time depends on both utilization and variability. Because waiting time is a non-linear function of utilization, variability in either arrivals or service times magnifies the effects of utilization on waiting times.
However, reducing wait times is a necessary but not sufficient goal for your operation. You must also manage your customers' perceptions of waiting, which is the next article in our series.