Skip to content
About
Main content

Idle: the most misunderstood cost

What sets the idle you must pay for, and what does serverless really sell?

is the cost most often treated as pure waste. It is not a defect in the model. bought. Decompose it, because each cause has a different fix, and only some are fixable.

  1. The floor, set by queueing. A latency-sensitive system must keep well below 1 (recall R = S ÷ (1 − ρ)). A target of ρ ≈ 0.6–0.7 means 30–40% idle is mandatory. Buying it back destroys the SLO.
  2. Burstiness. If you provision for the peak and the peak is 3× the mean, you multiply again.
  3. Granularity. You need 1.1 nodes and you can only buy whole nodes, so you buy 2.

The combined multiplier is roughly (peak ÷ mean) ÷ ρ_target.

kept well below 1 for latency (0.6–0.7)
ρ target 0.65ρ target 0.9 (batch)
Data table
Provisioned ÷ mean demand, by burstiness
Peak ÷ meanseriesProvisioned ÷ mean demand
1ρ target 0.651.54×
1.11ρ target 0.651.71×
1.23ρ target 0.651.88×
1.34ρ target 0.652.06×
1.45ρ target 0.652.23×
1.56ρ target 0.652.4×
1.68ρ target 0.652.58×
1.79ρ target 0.652.75×
1.9ρ target 0.652.92×
2.01ρ target 0.653.1×
2.13ρ target 0.653.27×
2.24ρ target 0.653.44×
2.35ρ target 0.653.62×
2.46ρ target 0.653.79×
2.58ρ target 0.653.96×
2.69ρ target 0.654.13×
2.8ρ target 0.654.31×
2.91ρ target 0.654.48×
3.02ρ target 0.654.65×
3.14ρ target 0.654.83×
3.25ρ target 0.655×
3.36ρ target 0.655.17×
3.48ρ target 0.655.35×
3.59ρ target 0.655.52×
3.7ρ target 0.655.69×
3.81ρ target 0.655.87×
3.92ρ target 0.656.04×
4.04ρ target 0.656.21×
4.15ρ target 0.656.38×
4.26ρ target 0.656.56×
4.38ρ target 0.656.73×
4.49ρ target 0.656.9×
4.6ρ target 0.657.08×
4.71ρ target 0.657.25×
4.83ρ target 0.657.42×
4.94ρ target 0.657.6×
5.05ρ target 0.657.77×
5.16ρ target 0.657.94×
5.28ρ target 0.658.12×
5.39ρ target 0.658.29×
5.5ρ target 0.658.46×
5.61ρ target 0.658.63×
5.72ρ target 0.658.81×
5.84ρ target 0.658.98×
5.95ρ target 0.659.15×
6.06ρ target 0.659.33×
6.17ρ target 0.659.5×
6.29ρ target 0.659.67×
6.4ρ target 0.659.85×
6.51ρ target 0.6510×
6.63ρ target 0.6510.2×
6.74ρ target 0.6510.4×
6.85ρ target 0.6510.5×
6.96ρ target 0.6510.7×
7.08ρ target 0.6510.9×
7.19ρ target 0.6511.1×
7.3ρ target 0.6511.2×
7.41ρ target 0.6511.4×
7.53ρ target 0.6511.6×
7.64ρ target 0.6511.8×
7.75ρ target 0.6511.9×
7.86ρ target 0.6512.1×
7.97ρ target 0.6512.3×
8.09ρ target 0.6512.4×
8.2ρ target 0.6512.6×
8.31ρ target 0.6512.8×
8.43ρ target 0.6513×
8.54ρ target 0.6513.1×
8.65ρ target 0.6513.3×
8.76ρ target 0.6513.5×
8.88ρ target 0.6513.7×
8.99ρ target 0.6513.8×
9.1ρ target 0.6514×
9.21ρ target 0.6514.2×
9.32ρ target 0.6514.3×
9.44ρ target 0.6514.5×
9.55ρ target 0.6514.7×
9.66ρ target 0.6514.9×
9.78ρ target 0.6515×
9.89ρ target 0.6515.2×
10ρ target 0.6515.4×
1ρ target 0.9 (batch)1.11×
1.11ρ target 0.9 (batch)1.24×
1.23ρ target 0.9 (batch)1.36×
1.34ρ target 0.9 (batch)1.49×
1.45ρ target 0.9 (batch)1.61×
1.56ρ target 0.9 (batch)1.74×
1.68ρ target 0.9 (batch)1.86×
1.79ρ target 0.9 (batch)1.99×
1.9ρ target 0.9 (batch)2.11×
2.01ρ target 0.9 (batch)2.24×
2.13ρ target 0.9 (batch)2.36×
2.24ρ target 0.9 (batch)2.49×
2.35ρ target 0.9 (batch)2.61×
2.46ρ target 0.9 (batch)2.74×
2.58ρ target 0.9 (batch)2.86×
2.69ρ target 0.9 (batch)2.99×
2.8ρ target 0.9 (batch)3.11×
2.91ρ target 0.9 (batch)3.24×
3.02ρ target 0.9 (batch)3.36×
3.14ρ target 0.9 (batch)3.49×
3.25ρ target 0.9 (batch)3.61×
3.36ρ target 0.9 (batch)3.74×
3.48ρ target 0.9 (batch)3.86×
3.59ρ target 0.9 (batch)3.99×
3.7ρ target 0.9 (batch)4.11×
3.81ρ target 0.9 (batch)4.24×
3.92ρ target 0.9 (batch)4.36×
4.04ρ target 0.9 (batch)4.49×
4.15ρ target 0.9 (batch)4.61×
4.26ρ target 0.9 (batch)4.74×
4.38ρ target 0.9 (batch)4.86×
4.49ρ target 0.9 (batch)4.99×
4.6ρ target 0.9 (batch)5.11×
4.71ρ target 0.9 (batch)5.24×
4.83ρ target 0.9 (batch)5.36×
4.94ρ target 0.9 (batch)5.49×
5.05ρ target 0.9 (batch)5.61×
5.16ρ target 0.9 (batch)5.74×
5.28ρ target 0.9 (batch)5.86×
5.39ρ target 0.9 (batch)5.99×
5.5ρ target 0.9 (batch)6.11×
5.61ρ target 0.9 (batch)6.24×
5.72ρ target 0.9 (batch)6.36×
5.84ρ target 0.9 (batch)6.49×
5.95ρ target 0.9 (batch)6.61×
6.06ρ target 0.9 (batch)6.74×
6.17ρ target 0.9 (batch)6.86×
6.29ρ target 0.9 (batch)6.99×
6.4ρ target 0.9 (batch)7.11×
6.51ρ target 0.9 (batch)7.24×
6.63ρ target 0.9 (batch)7.36×
6.74ρ target 0.9 (batch)7.49×
6.85ρ target 0.9 (batch)7.61×
6.96ρ target 0.9 (batch)7.74×
7.08ρ target 0.9 (batch)7.86×
7.19ρ target 0.9 (batch)7.99×
7.3ρ target 0.9 (batch)8.11×
7.41ρ target 0.9 (batch)8.24×
7.53ρ target 0.9 (batch)8.36×
7.64ρ target 0.9 (batch)8.49×
7.75ρ target 0.9 (batch)8.61×
7.86ρ target 0.9 (batch)8.74×
7.97ρ target 0.9 (batch)8.86×
8.09ρ target 0.9 (batch)8.99×
8.2ρ target 0.9 (batch)9.11×
8.31ρ target 0.9 (batch)9.24×
8.43ρ target 0.9 (batch)9.36×
8.54ρ target 0.9 (batch)9.49×
8.65ρ target 0.9 (batch)9.61×
8.76ρ target 0.9 (batch)9.74×
8.88ρ target 0.9 (batch)9.86×
8.99ρ target 0.9 (batch)9.99×
9.1ρ target 0.9 (batch)10.1×
9.21ρ target 0.9 (batch)10.2×
9.32ρ target 0.9 (batch)10.4×
9.44ρ target 0.9 (batch)10.5×
9.55ρ target 0.9 (batch)10.6×
9.66ρ target 0.9 (batch)10.7×
9.78ρ target 0.9 (batch)10.9×
9.89ρ target 0.9 (batch)11×
10ρ target 0.9 (batch)11.1×

What serverless really sells

This explains why can make sense even when its unit prices are several times higher. The product is not compute. It is statistical multiplexing of your : the vendor combines many customers so that their peaks do not coincide, and keeps the difference between your multiplier and theirs.

The hidden assumption is that tenants are independent, which nobody can verify and which is usually false at the edges. Everyone's midnight cron job fires at midnight, and that is exactly when capacity problems cluster.