A horizontal pod scaler has two main benefits over user-intervened scaling. Firstly, the scaling is automatic and secondly extra pods are not kept running consuming resources that could be used for some other application. An autoscaler may be created for a replication controller, replica set or a deployment. An autoscaler uses heapster to collect CPU utilization of a resource, based on which it determines if more or fewer pods should be run. Autoscaling is based on a target CPU utilization implying that the CPU utilization of a resource such as a deployment should be x%.