VPA Recommendation Calculator
Estimate the Vertical Pod Autoscaler's recommended resource request from p95 usage and a safety margin, compared against the current setting.
Inputs
95th percentile CPU usage observed by VPA's recommender over its history window.
Extra margin added on top of p95 usage.
VPA-Style Recommended Request
345millicores
Change vs Current Request
145millicores
Change vs Current Request
72.5%
Recommended Direction
increase
Step by step
Recommended = p95 usage × (1 + margin%)
300m × (1 + 15%)
= 345m
Delta vs current request
345m − 200m
= 145m (72.5%)
How it works
The Vertical Pod Autoscaler's recommender tracks a decaying histogram of usage and targets a high percentile (commonly p95 or p90) plus a margin, rather than the raw peak, to avoid overreacting to one-off spikes. This calculator reproduces that logic in simplified form — applying a percentage margin over p95 usage — and compares the result to the pod's current request to show whether VPA would recommend scaling up or down.
Formula
recommended = p95Usage × (1 + marginPercent / 100)
- U_{95}
- 95th percentile CPU usage in millicores
- m
- Safety margin percentage
- R
- VPA-recommended CPU request in millicores
Frequently Asked Questions
Why does VPA use p95 instead of peak usage?
Peak usage can be a single outlier event; p95 usage reflects sustained near-peak behavior while filtering out one-off spikes, giving a recommendation that's stable across normal traffic variance rather than chasing the single highest data point ever seen.
What update modes does VPA support?
Off (recommend only, no changes applied), Initial (apply only at pod creation), and Auto/Recreate (VPA evicts and recreates pods with new resource values) — always verify update mode before assuming VPA will change running pods automatically.
Can I run VPA and HPA together on CPU?
Not safely on the same metric — VPA adjusting CPU requests while HPA scales replicas based on CPU utilization creates a feedback loop. Common practice is VPA on memory only, paired with HPA on CPU or custom metrics.