Little’s law and measurement boundaries

On this page

Little's law, , connects average concurrency, flow rate and mean residence time. Its strength comes from consistent accounting boundaries. It requires neither Poisson arrivals nor an exponential service distribution, and its mean cannot be replaced by p99.

Why area equals accumulated residence time

Within , job contributes the indicator to occupancy. Sum over jobs and integrate:

This is a sample-path identity without probability assumptions. Both sides have units job-seconds. Intersections include the part of any job that arrived before the window or finishes after it.

If the system is empty at both endpoints and all arrivals depart within the window:

For a stable system with well-defined long-run rates and mean residence times, and suitable conditions making residual boundary contributions divided by vanish, this gives . Stationarity is a common analytical setting, not a prerequisite for the finite-window area identity. A short interval that looks calm does not establish the required limits.

What a cutoff leaves out

The experiment uses arrivals s and services s. At s, two jobs have finished. Occupancy area is job-seconds, so average concurrency is 1.8. Completion rate is and completed-job mean residence is 3 s; their product is only 1.2. The missing 3 job-seconds belong to the third, unfinished request.

Preparing the visual
Little’s law and measurement boundaries · Experiment

Fixed arrivals [0,1,2,6] s and service times [3,1,2,1] s. Move the cutoff to compare full occupancy area with completed-job contributions. Initially empty, no rejection.

Move the endpoint to 7 s or later. All jobs have finished and the boundary contribution becomes zero. Extending the window further adds idle time, reducing both estimates together. Observation length is part of the measurement definition.

Match boundary, population and time range

A stable pool accepting 200 requests/s with mean connection holding time 40 ms has mean occupied connections . This does not say that configuring eight connections meets a waiting target: average occupancy leaves no explicit allowance for fluctuations.

For the waiting area, use ; for the entire system, use . If only 800/s of 1000/s offered requests enter, use 800/s with internal occupancy. When exits include failures or cancellations, residence statistics must include the same exit population. Successful throughput cannot be paired directly with occupancy of all attempts.

Retries create multiple attempts per business request. A business boundary can span first submission to final outcome; an attempt boundary tracks each entry and exit separately. Either is useful, but their counts and durations cannot be mixed.

Check your understanding

  1. Average concurrency is 50 and throughput 500/s. Is p99 therefore 100 ms?
Reasoning

Only the mean system time follows as 100 ms, provided long-run boundaries match. Many distributions share a mean and have different tails. A percentile requires request-level distribution data or another model.

  1. During an incident, occupancy rises but completed-job mean latency stays low. Has Little's law failed?
Reasoning

Slow requests may still be unfinished and absent from completed-job statistics. Instantaneous occupancy also differs from time-average occupancy. Check window area, unfinished residence contributions and jobs entering before the window before applying a long-run formula.

Further reading

The MIT 2026 queueing lecture discusses Little's law and subsystem boundaries. The cutoff example above follows directly from its independently constructed timestamps.