Idle capacity has three causes, and each has a different owner. Headroom kept free so a service can meet its latency or availability target belongs to whoever set the target. Capacity a team reserved but did not use belongs to that team. Capacity nobody reserved belongs to the platform owner and is the clearest signal that the platform is larger than its demand.
The usual rule is that pooled cost equals allocated cost plus unallocated cost, with the unallocated part kept visible rather than spread. Who Pays for Idle GPUs? works through an example, and the self-hosting break-even calculator shows how utilisation sets the cost per token.
Kubernetes cost allocation uses the same identity: the OpenCost specification defines cluster idle cost as asset cost not allocated to any workload, with each workload charged the greater of what it requested and what it used. Idle GPU capacity is the same problem with a coarser, dearer unit.