Kubernetes v1.37, released on August 26, 2026, makes autoscaling down to zero replicas a Beta feature that is enabled by default. A HorizontalPodAutoscaler (HPA) that uses a suitable object metric or external metric can now scale a workload to zero Pods, then bring it back when the metric changes. Amazon EKS added Kubernetes 1.37 on October 1, 2026, and its version notes state that the HPAScaleToZero feature gate is enabled by default there.
An HPA is the built-in Kubernetes controller that adds or removes Pods based on a metric. Before v1.37, scaling from zero needed an add-on or external component, or an Alpha feature gate that first appeared in Kubernetes 1.16. The enhancement proposal behind the feature, KEP-2021, says the main benefit is cost savings for Pods with heavy resource requests, such as GPU workloads, and for queue consumers or latency-tolerant workloads that sit idle for long periods.
Which workloads can use it
- Only HPAs that scale on Object or External metrics. Resource metrics such as CPU and memory are excluded, because they can only be measured on running Pods. At zero Pods there is nothing to measure.
- On EKS, Object and External metrics require a metrics adapter, which EKS does not install. Plan for one before you set minReplicas: 0.
- The KEP lists buffering requests at the Service level as a non-goal. Its stated targets are idle queue consumers and latency-tolerant workloads, not traffic that needs a Pod running at all times.
How it behaves
- You opt in per HPA by setting minReplicas: 0.
- When the HPA scales a workload from one replica to zero, it records a ScaledToZero=True condition in its status. While that condition is present, the HPA scales the workload from zero to one when the metric calls for it, then removes the condition.
- A workload at replicas: 0 without that condition is treated as manually paused, and the HPA leaves it alone. Applying a Deployment with replicas: 0 alongside an HPA with minReplicas: 0 can be confusing for this reason, since it never scales. The KEP says operators can detect this through the HPA's ScalingActive condition.
- Scale-up from zero is not delayed by the downscale stabilization window. It happens on the next reconcile, bounded by the default 15-second sync period plus metrics pipeline latency.
What to check before and after you upgrade
- On clusters where you run the control plane yourself, the feature gate must be enabled on both kube-apiserver and kube-controller-manager. The KEP warns that if the API server is upgraded and the controller manager is not, users can set minReplicas: 0 but the older controller will not scale workloads back up from zero. Avoid minReplicas: 0 until both are upgraded.
- Alert on HPAs whose ScalingActive condition is false. The KEP names ScalingActive false with a ScalingDisabled reason as a rollback signal, and FailedGetExternalMetric or FailedGetObjectMetric means the metric could not be fetched. The KEP's mitigation for a metrics failure is to scale the workload manually. The kube_horizontalpodautoscaler_status_condition metric from kube-state-metrics can surface these conditions.
- Plan your way back. Before you disable the feature or downgrade, the KEP says to set affected HPAs to minReplicas: 1 and scale their workloads to at least one replica. Otherwise workloads left at zero may stay there. EKS allows an in-place upgrade to be rolled back to the previous minor version within 7 days.
- Read the rest of the EKS 1.37 notes. They list other changes that need action, including SELinux mount labeling enabled by default, a new Balanced consolidation default for new EKS Auto Mode NodePools, and kubelet metrics that were removed.
Start with one idle, queue-driven or GPU workload, confirm its metric adapter works, and watch the HPA conditions through a full idle and wake cycle before you widen use.
Sources
- Kubernetes blog: Kubernetes v1.37: Scale Workloads to Zero with HorizontalPodAutoscaler
- KEP-2021: HPA supports scaling to/from zero pods for object/external metrics
- Kubernetes blog: Kubernetes v1.37: Garhwal
- Amazon EKS User Guide: Kubernetes versions standard support (Kubernetes 1.37)
- Amazon EKS User Guide: Understand the Kubernetes version lifecycle on EKS