Little's Law

Here is a fact so simple it looks like it must have fine print, and so general it borders on the magical. In any queueing system that has settled into a steady rhythm — a coffee shop, a motorway, a hospital ward, a warehouse, the packets in a router — the average number of items inside the system equals the rate at which items arrive, multiplied by the average time each one spends there. That is Little's law:

L = \lambda\, W.

No assumption about how arrivals are spaced, no assumption about the service-time distribution, no assumption about the number of servers or the queue discipline. Poisson or not, one server or a thousand, first-come-first-served or utter chaos — as long as the system is stable and in the long run, the three quantities are locked together by that single equation.

What the three letters mean

The units make it click: \lambda is customers per hour, W is hours, so \lambda W is a pure count of customers — exactly what L is. Keep your units consistent (per-hour with hours, per-minute with minutes) and the law never lies.

Why it is true — an accounting argument

Little's law is really just bookkeeping. Picture the number of customers in the system, N(t), as it rises and falls: up one at each arrival, down one at each departure. Watch it over a long interval [0, T].

The area under this staircase is the total customer-time accumulated — add up how long every customer was present. Now count that same area two ways. Averaging height over time gives area = L \times T. Adding up the horizontal strips, one per customer, gives area = (\text{customers served}) \times W = (\lambda T)\times W. Two expressions for one area:

L\,T = \lambda\,T \cdot W \quad\Longrightarrow\quad L = \lambda W.

That is the whole proof. Nothing about randomness entered — which is exactly why the law survives no matter what the distributions are.

Worked example

A busy sandwich shop serves \lambda = 30 customers per hour, and a customer spends on average W = 0.1 hours (6 minutes) in the shop from joining the queue to walking out with lunch. Then, at any random glance,

L = \lambda W = 30 \times 0.1 = 3 \text{ customers in the shop.}

You never counted heads — you deduced the crowd from a rate and a duration. Turn it around: if the manager wants the shop never to feel more crowded than L = 2, and arrivals stay at 30/hour, then each customer's time must fall to W = L/\lambda = 2/30 \approx 0.067 hours — exactly 4 minutes. Little's law turns a vague "make it feel less busy" into a hard target for the service time.

It applies to any sub-system too

Draw a box around any part of the process and the law holds for that box, as long as it is stable. Draw the box around just the waiting line (exclude service) and you get the "queue-only" version:

L_q = \lambda\, W_q,

where L_q is the average number waiting and W_q the average wait before service. Draw it around the servers alone and you recover that the average number of busy servers equals \lambda \times (\text{mean service time}) — the offered load. One law, applied to nested boxes, ties a whole system together. Below are a few boxes and the number each implies.

SystemArrival rate λTime in system WNumber present L = λW
Sandwich shop30 / hour0.1 hour3 customers
A&E department8 / hour2.5 hours20 patients
Web server500 / second0.04 second20 requests
Warehouse stock1200 units / week3 weeks3600 units on hand

That last row is a favourite of supply-chain analysts: average inventory equals throughput times the average time a unit sits in the warehouse. Little's law and inventory theory are the same idea wearing different hats.

John Little proved the law rigorously in 1961, though the relationship had been folklore among traffic engineers for years. What Little supplied was the proof that L = \lambda W holds under breathtakingly mild conditions — essentially just that the system reaches a long-run steady state and that the averages exist. It does not need the arrivals to be Poisson, does not need exponential service, does not even need the customers to be served in the order they arrived. This is why it is one of the most-used results in all of operations research: whenever you know two of the three quantities, the third comes free.

Little's law is an equation about long-run averages, and it quietly assumes the system is stable — arrivals are not outpacing departures, so N(t) is not drifting upward forever. Point it at a shop in its first ten frantic minutes after opening, or at an overloaded queue that is still growing, and the "averages" have not settled, so the law does not yet apply. It also says nothing about variability: two systems with identical L, \lambda and W can have wildly different worst-case waits. The law pins the means together — it does not describe the swings around them.