The cost picture

Storage: $1-10 per million spans at managed backends. At 1B spans/day a 100% sample is $30K-300K/month. Sampling 1% drops it to $300-3000 — same operational utility for SRE debugging if done right.

Advertisement

Head-based sampling

Decide at span start. Random, e.g., keep 10%. Cheap, simple. Problem: misses the interesting traces — errors and slow requests are exactly the ones you want, but they're rare and random sampling biases against them.

Advertisement

Tail-based sampling at the collector

Collect all spans for a trace, decide at trace completion: keep all error traces, all slow traces (>p99), plus N% normal. Requires a tail-sampling collector tier (memory-buffer spans until trace completes). Worth the operational cost.