<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni" -->

---
title: Best Kubernetes VPA Alternative for Production Workloads
description: Kubernetes Vertical Pod Autoscaler (VPA) has long disappointed production teams because applying recommendations required pod eviction. Kubernetes 1.35 made...
canonical: https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Best Kubernetes VPA Alternative for Production Workloads | daily.dev
og:description: Kubernetes Vertical Pod Autoscaler (VPA) has long disappointed production teams because applying recommendations required pod eviction. Kubernetes 1.35 made...
og:url: https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni
og:image: https://api.daily.dev/og/posts/IO01Y6dNI.png
og:image:alt: Best Kubernetes VPA Alternative for Production Workloads
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Best Kubernetes VPA Alternative for Production Workloads

**[Medium](https://daily.dev/sources/medium_js)** · 6 min read · 0 upvotes · 0 comments

## Summary

Kubernetes Vertical Pod Autoscaler (VPA) has long disappointed production teams because applying recommendations required pod eviction. Kubernetes 1.35 made In-Place Pod Resize stable, enabling CPU/memory changes without restarts. However, three key gaps remain: memory decreases are still best-effort, InPlaceOrRecreate can silently fall back to eviction, and VPA's 8-day rolling recommendation window misses weekly traffic patterns. A true VPA alternative needs a wider observation window, pre-resize capacity coordination, and HPA coexistence. DevZero is presented as one such alternative, profiling workloads continuously and adjusting resources without eviction. A case study from Fi Money shows 67% cost reduction and 89% overprovisioning elimination using this approach.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://medium.com/@sales_31287/best-kubernetes-vpa-alternative-for-production-workloads-49cdeacd916d>

## Questions this post answers

### What changed with Kubernetes 1.35 and in-place pod resize for VPA?

Kubernetes 1.35 made In-Place Pod Resize a stable, generally available feature on December 17, 2025, six years after it was first proposed. This enables VPA's InPlaceOrRecreate update mode to resize a running pod's CPU and memory requests without restarting it, falling back to eviction and recreation only when the node cannot accommodate the new request.

_Teams tracking Kubernetes autoscaling changes like this one can follow updates on daily.dev._

### Why does VPA still evict pods even in InPlaceOrRecreate mode after Kubernetes 1.35?

InPlaceOrRecreate falls back to evicting and recreating a pod whenever a node cannot accommodate the newly requested CPU or memory, and this eviction appears in the event log as a routine reschedule rather than a flagged failure, making it easy to overlook during incident reviews. Memory decreases are also only best-effort, since the kubelet defers or rejects a resize if current usage is too close to the new limit.

_Anyone debugging unexpected pod evictions during Kubernetes resizing can dig into root causes like this via daily.dev._

### What usage window does the Kubernetes Vertical Pod Autoscaler use to calculate recommendations?

VPA calculates recommendations from a rolling eight-day usage window, which stays unchanged even after Kubernetes 1.35's in-place resize update. This means a batch job or a workload with a weekly usage cycle can receive a recommendation tuned to a recent quiet period right before a predictable spike, since the window doesn't account for longer seasonal patterns.

_Engineers weighing VPA's sizing accuracy against alternatives can compare approaches on daily.dev._

## Similar posts on daily.dev

- [Why Kubernetes 1.35 is a game-changer for stateful workload scaling](https://daily.dev/posts/why-kubernetes-1-35-is-a-game-changer-for-stateful-workload-scaling-h3xwtunre) · The New Stack · 1 upvotes · 0 comments
- [Best Pod Rightsizing Tools for Kubernetes](https://daily.dev/posts/best-pod-rightsizing-tools-for-kubernetes-zh2efcfme) · Cast AI · 0 upvotes · 0 comments
- [HPA vs VPA: When to Use Each, and Can You Use Both?](https://daily.dev/posts/hpa-vs-vpa-when-to-use-each-and-can-you-use-both--kkfdjdpuk) · Cast AI · 0 upvotes · 0 comments
- [3 Keys for Successful Autoscaling Kubernetes](https://daily.dev/posts/3-keys-for-successful-autoscaling-kubernetes-bejc9mgq7) · Container Journal · 0 upvotes · 0 comments

---

Tags: [#kubernetes](https://daily.dev/tags/kubernetes), [#finops](https://daily.dev/tags/finops)

[View this post on daily.dev](https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Best Kubernetes VPA Alternative for Production Workloads","url":"https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni"},"datePublished":"2026-07-16T07:32:43.432Z","dateModified":"2026-09-14T06:50:17.804Z","description":"Kubernetes Vertical Pod Autoscaler (VPA) has long disappointed production teams because applying recommendations required pod eviction. Kubernetes 1.35 made...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/92d91059b3eca0b8b6d7848d9f9ca984?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/92d91059b3eca0b8b6d7848d9f9ca984?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Medium","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Medium","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/medium","url":"https://daily.dev/sources/medium_js"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"kubernetes,finops","timeRequired":"PT6M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Medium","item":"https://daily.dev/sources/medium_js"},{"@type":"ListItem","position":3,"name":"Best Kubernetes VPA Alternative for Production Workloads"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/best-kubernetes-vpa-alternative-for-production-workloads-io01y6dni#faq","mainEntity":[{"@type":"Question","name":"What changed with Kubernetes 1.35 and in-place pod resize for VPA?","acceptedAnswer":{"@type":"Answer","text":"Kubernetes 1.35 made In-Place Pod Resize a stable, generally available feature on December 17, 2025, six years after it was first proposed. This enables VPA's InPlaceOrRecreate update mode to resize a running pod's CPU and memory requests without restarting it, falling back to eviction and recreation only when the node cannot accommodate the new request. Teams tracking Kubernetes autoscaling changes like this one can follow updates on daily.dev."}},{"@type":"Question","name":"Why does VPA still evict pods even in InPlaceOrRecreate mode after Kubernetes 1.35?","acceptedAnswer":{"@type":"Answer","text":"InPlaceOrRecreate falls back to evicting and recreating a pod whenever a node cannot accommodate the newly requested CPU or memory, and this eviction appears in the event log as a routine reschedule rather than a flagged failure, making it easy to overlook during incident reviews. Memory decreases are also only best-effort, since the kubelet defers or rejects a resize if current usage is too close to the new limit. Anyone debugging unexpected pod evictions during Kubernetes resizing can dig into root causes like this via daily.dev."}},{"@type":"Question","name":"What usage window does the Kubernetes Vertical Pod Autoscaler use to calculate recommendations?","acceptedAnswer":{"@type":"Answer","text":"VPA calculates recommendations from a rolling eight-day usage window, which stays unchanged even after Kubernetes 1.35's in-place resize update. This means a batch job or a workload with a weekly usage cycle can receive a recommendation tuned to a recent quiet period right before a predictable spike, since the window doesn't account for longer seasonal patterns. Engineers weighing VPA's sizing accuracy against alternatives can compare approaches on daily.dev."}}]}
```

