Karpenter

How We Used Karpenter to Slash Costs and Save Engineering Time

April 19, 20252 min read

🚀 How We Used Karpenter to Slash Costs and Save Engineering Time

When I first heard about Karpenter, I was skeptical. We’d already invested time tuning the Cluster Autoscaler, we had spot instances in place, and swapping out a core part of our infrastructure felt risky.

But then the AWS bill landed.

And a few too many Slack messages like:

“Why are we still scaling to r5.4xlarge for background jobs?”

So, we decided to give Karpenter a shot — and the results were way better than we expected.

The Problem

We run a moderately sized EKS cluster that handles both long-running services and bursty background jobs. We had autoscaling enabled, but we kept running into familiar issues:

  • Inefficient instance types being selected

  • Slower pod scheduling during peak traffic

  • Over-provisioning due to rigid node group configurations

  • Spot instance churn causing unnecessary workload disruptions

The nodes weren’t matching the workload, and managing scaling logic was becoming a weekly chore.

Why Karpenter?

Karpenter is an open-source Kubernetes autoscaler built by AWS. It’s designed to simplify node provisioning by launching exactly the right instance types based on what your workloads actually need.

The benefits were immediately attractive:

  • It works directly with the Kubernetes scheduler

  • It doesn’t require predefined node groups

  • It supports dynamic provisioning with smart instance selection (including spot)

Installation was simple. We used Helm, added a Provisioner, and let Karpenter take over from Cluster Autoscaler for our background jobs.

What Changed

Within the first week of rollout, we saw some serious improvements:

Karpenter dynamically launched the right instance sizes with just enough resources to get the job done. No overkill, no lag.

What We Learned

  • Karpenter skips node groups entirely — no more managing ASGs or launch templates

  • Instance selection is dynamic and optimized for the workload

  • It’s especially powerful with bursty jobs or unpredictable load

  • You do need to monitor eviction behavior and keep an eye on which spot types are available in your region

If your cluster runs both spot and on-demand workloads, you’ll probably want multiple provisioners to control isolation.

Would I Recommend It?

Yes — 100%.

If you’re using EKS and still on Cluster Autoscaler, it’s worth trying Karpenter. It’s not a magic bullet, but it made a meaningful dent in our AWS bill and took some pressure off our infra team.

The cost savings were nice, but the engineering time saved? That was the real win.

Back to Blog