All posts

The Variability Tax: Why Kingman's Equation Says Lumpy Demand Costs More Than a Busy Line

The Variability Tax: Why Kingman's Equation Says Lumpy Demand and Erratic Changeovers Cost You More Than a Busy Line

The line wasn't full, so why was everything late?

Here's a scenario every scheduler recognizes. Your flagship line ran at about 80% utilization last month — comfortable, not maxed out. There was slack in the schedule. And yet jobs sat in queue for hours, lead times swung wildly week to week, and the customer-service team spent Fridays apologizing for late shipments.

If utilization was only 80%, where did all that wait time come from?

The honest answer is that utilization is only one of the three things that set queue time on a production line. The other two are both forms of variability — and they behave like a tax that inflates every hour your jobs spend waiting, whether the line is busy or not. This post is about that tax, where it comes from, and how to measure and cut it.

We've already covered the utilization lever in The 100% Utilization Trap. This is the companion piece: the variability lever that most schedulers never quantify.

Meet Kingman's formula: three dials, not one

In queueing theory, Kingman's formula is an approximation for the mean waiting time in a single-server queue (technically a G/G/1 queue). It was first published by John Kingman in his 1961 paper "The single server queue in heavy traffic," and it is known to be generally very accurate — especially for a system operating close to saturation, which is exactly when your line is under pressure.

The formula multiplies three terms:

E(Wq) ≈ [ ρ / (1 − ρ) ] × [ (c_a² + c_s²) / 2 ] × τ

Don't let the symbols scare you. Read it as three dials in sequence — the VUT mental model:

  • U — Utilization. ρ / (1 − ρ), where ρ is how busy the line is (arrival rate ÷ service rate).
  • V — Variability. (c_a² + c_s²) / 2, the coefficient of variation of arrivals (how lumpy your demand hits the line) and of service times (how inconsistent your run rates and changeovers are).
  • T — Time. τ, the mean service time — the base time to process one job or batch.

Wait time is the product of all three. That single fact is the whole lesson: you can hold the line at a moderate utilization and still get punishing queue times if your variability term is high. Kingman's formula is why.

The U term: a quick recap

The utilization term, ρ / (1 − ρ), is the one most schedulers already feel in their bones. At ρ = 0.80 it equals 4. At 0.90 it equals 9. At 0.95 it equals 19. As you approach 100%, it explodes toward infinity — a small increase in load produces a huge jump in wait time.

We unpacked that non-linear cliff in The 100% Utilization Trap, and it connects directly to Little's Law. For this post the point is simply: utilization is one dial, and it's not the one we're focused on today.

The V term: the part schedulers ignore

Here is the term almost nobody measures. (c_a² + c_s²) / 2 is built from coefficients of variation — and the coefficient of variation (CV, also called relative standard deviation) is just the ratio of the standard deviation to the mean, often expressed as a percentage. It's a standardized measure of dispersion, which means it's a clean, unitless number you can actually compute per SKU and per changeover.

There are two contributors:

c_a — arrival variability (how lumpy demand hits the line)

This is the spikiness of the work arriving at your line: promo-driven order surges, end-of-quarter loading, retailer order batching. Demand rarely arrives smoothly. When it arrives in unpredictable bursts, c_a rises — and it gets amplified as it travels upstream, which is the bullwhip effect at work. Intermittent, hard-to-forecast SKUs are especially guilty here; that's the same population you'd flag with ABC-XYZ segmentation.

c_s — service variability (how inconsistent your execution is)

This is the scatter in how long jobs actually take: changeover times that swing from 20 minutes to 90 depending on who's on shift, run rates that vary batch to batch, and unplanned breakdowns that turn a predictable service time into a lottery. Every one of these lifts c_s. We've written about how expensive inconsistent setups are in The Hidden Cost of Changeovers and how run order changes the picture in sequence-dependent changeover scheduling.

The crucial structural point: it's (c_a² + c_s²) / 2. Upstream demand lumpiness and shop-floor execution scatter feed the same multiplier. You cannot fix one and ignore the other — they add together before they multiply your wait time.

The T term: base process and batch time

The last dial, τ, is the mean time to run one job. Large batches with long setups make τ big, which scales up everything else. Right-sizing batches — the whole point of economic production quantity and EPEI production wheels — pulls this term down directly.

The money section: two levers, side by side

Let's make it concrete. Hold everything constant except one dial at a time, using Kingman's formula. Assume base service time τ = 1 hour for simplicity, so the queue-time numbers are in hours.

Scenario A — attack variability, hold utilization at 0.85

Utilization term: 0.85 / (1 − 0.85) = 5.67.

Situation c_a c_s V term (c_a²+c_s²)/2 Queue time (hrs)
High variability 1.5 1.5 2.25 5.67 × 2.25 × 1 = 12.8
Halved variability 0.75 0.75 0.56 5.67 × 0.56 × 1 = 3.2

Halving the coefficient of variation on both demand and changeovers cut queue time by roughly 75% — from 12.8 hours to 3.2 — without touching utilization and without adding a minute of capacity. (The drop is more than proportional because CV is squared in the formula.)

Scenario B — same variability, push utilization up

Hold V at a moderate 1.0 (c_a = c_s = 1), τ = 1 hour, and watch the utilization dial climb.

Utilization ρ U term ρ/(1−ρ) Queue time (hrs)
0.75 3.0 3.0
0.90 9.0 9.0
0.95 19.0 19.0

The utilization lever is powerful but dangerous — it explodes non-linearly as you chase the last few points of "efficiency."

The takeaway from both tables: variability is a multiplier you can attack directly and predictably, while utilization is a cliff you approach at your peril. Cut V first; don't run near 100% while V is high.

How to measure V on your own line

This is the part that makes Kingman actionable. Both coefficients are computable from data you already have.

Demand variability (c_a): Pull order history per SKU. For each, compute the standard deviation of period-over-period demand divided by the mean. That ratio is your CV. SKUs with CV above ~0.5 are your "erratic" bucket; below ~0.25 are steady. This is exactly the X/Y/Z axis of ABC-XYZ segmentation.

Changeover variability (c_s): Pull setup-time logs by changeover type. Compute standard deviation ÷ mean of the actual durations. A changeover that averages 40 minutes but ranges 20–90 has a CV near 0.5 — that scatter is quietly inflating queue time for every job behind it.

Why bother? Because variability doesn't just lengthen the queue on the line — it forces cost downstream too. As Netstock notes, lead-time variability creates uncertainty in supply-chain planning: high variability forces companies to carry excess safety stock to buffer against unpredictable delays, which increases inventory carrying costs and ties up working capital. Kingman's insight is that the same variability is lengthening the queue upstream on the line itself. You pay the tax twice.

This isn't fringe theory, either. Recent operations research on manufacturing queueing networks derives models that decompose system queue time and variability into bottleneck and non-bottleneck parts while capturing dependence among workstations, characterizing exactly this trade-off between queue time and utilization.

The variability-reduction playbook

Once you've measured V, here's the order of attack:

  1. Lower c_a (smooth demand arrivals). Level the schedule with heijunka, set a fixed EPEI cadence so each product returns on a predictable rhythm, and smooth retailer order patterns to fight the bullwhip effect.
  2. Lower c_s (make execution consistent). SMED isn't only about faster changeovers — it's about consistent ones. Standardized work, checklists, and staged tooling shrink the spread. Total productive maintenance cuts the breakdown scatter that spikes c_s. See The Hidden Cost of Changeovers.
  3. Lower T (right-size batches). Smaller batches and shorter setups pull the base service time down — the EPQ conversation.
  4. Only then chase U. Once variability is under control, you can safely run at higher utilization because the multiplier is smaller. Push utilization while V is high and you're stacking two explosive terms on top of each other.

Where this fits in the schedule

Every point of variability you remove shows up in two places: shorter, more predictable lead times on the line, and lower safety stock required to hit your target cycle service level. That's the double payback. A scheduler who continuously monitors per-SKU demand CV and per-type changeover CV — and levels the plan accordingly — is protecting lead time at the source instead of buffering it downstream with inventory.

Key takeaways

  • Wait time ≈ V × U × T. Utilization is one dial; variability is two of the three.
  • Variability is a pure multiplier. Because CV is squared in the formula, halving demand and changeover variability can cut queue time by roughly three-quarters — with zero added capacity.
  • Measure it. Compute the coefficient of variation (σ ÷ mean) per SKU from order history and per changeover from setup logs.
  • Attack V before U. Smooth demand (heijunka, EPEI), stabilize execution (SMED consistency, TPM), right-size batches — then raise utilization.
  • You pay the variability tax twice: longer queues on the line, and higher safety stock downstream.

Sources

More from the journal