VMware VM Density Calculator
Work out how many VMs an ESXi cluster really holds once CPU overcommit, host memory overhead and per-VM VMX overhead are applied.
About VMware VM Density Calculator
Density is a two-sided constraint: the CPU side multiplies logical cores by the overcommit ratio you are prepared to run, while the memory side starts from installed RAM, removes the VMkernel's 5-6% overhead, adds back whatever transparent page sharing and compression recover, then charges each VM its configured RAM plus VMX overhead. Whichever side runs out first is your real ceiling. Buying hosts against a CPU number when the cluster is memory bound is the most common capacity-planning mistake in vSphere — memory almost always saturates first, because CPU can be overcommitted safely and RAM cannot.
Formula
VMware VM Density
VMs by CPU = hosts × cores × threads × overcommit ÷ vCPU per VM; VMs by memory = hosts × RAM × (1 − host overhead) × (1 + sharing gain) ÷ (VM RAM + VMX overhead); density is the lower of the two.
- logical CPUs
- Physical cores × 2 when hyper-threading is on
- overcommit
- vCPUs you are willing to schedule per logical CPU
- VMX overhead
- Per-VM monitor and process memory charged above configured RAM
Worked example
With the default values below, VMware VM Density Calculator returns VMs per Cluster of 197. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Hosts in clusteraccepts 1–96 hosts
- 6 hosts
- Physical cores per hostaccepts 1–512 cores
- 32 cores
- Hyper-threading enabled
- Yes
- Memory per hostaccepts 8–24,576 GiB
- 512 GiB
- vCPU per logical CPUaccepts 1–12 ratio
- 4 ratio
- ESXi host memory overheadaccepts 0–20 %
- 6 %
- vCPUs per VMaccepts 1–256 vCPU
- 4 vCPU
- Memory per VMaccepts 0.25–6,144 GiB
- 16 GiB
- VMX overhead per VMaccepts 0–2,048 MiB
- 90 MiB
- Page sharing and compression gainaccepts 0–60 %
- 10 %
Results
- VMs per Cluster
- 197 VMs
- VMs per Host
- 32 VMs
- Ceiling from CPU
- 384 VMs
- Ceiling from Memory
- 197 VMs
- vCPU to Core Ratio Used
- 4.10 :1
- Limiting Resource
- Memory bound — add RAM before adding sockets
Step by step
- 1Values used
- 2VMware VM Density
- 3VMs per Cluster= 197 VMs
- 4VMs per Host= 32 VMs
- 5Ceiling from CPU= 384 VMs
- 6Ceiling from Memory= 197 VMs
- 7vCPU to Core Ratio Used= 4.10 :1
- 8Limiting Resource= Memory bound — add RAM before adding sockets
Assumptions and limits
- The result is derived only from the 10 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax or compounding frequency into account.
- Figures are rounded for display to 2 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Frequently Asked Questions
How is VMware VM Density calculated?
VMs by CPU = hosts × cores × threads × overcommit ÷ vCPU per VM; VMs by memory = hosts × RAM × (1 − host overhead) × (1 + sharing gain) ÷ (VM RAM + VMX overhead); density is the lower of the two. Density is a two-sided constraint: the CPU side multiplies logical cores by the overcommit ratio you are prepared to run, while the memory side starts from installed RAM, removes the VMkernel's 5-6% overhead, adds back whatever transparent page sharing and compression recover, then charges each VM its configured RAM plus VMX overhead. Whichever side runs out first is your real ceiling.
Why does VMware VM Density matter?
Buying hosts against a CPU number when the cluster is memory bound is the most common capacity-planning mistake in vSphere — memory almost always saturates first, because CPU can be overcommitted safely and RAM cannot.
What values do I need to enter?
This calculator takes 10 inputs: Hosts in cluster, Physical cores per host, Hyper-threading enabled, Memory per host, vCPU per logical CPU, ESXi host memory overhead, vCPUs per VM, Memory per VM, VMX overhead per VM, Page sharing and compression gain. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.
Why does hyper-threading not double density?
Logical CPUs double but throughput typically rises only 20-30%, because the two threads share one core's execution units. Treating hyper-threads as full cores is safe only when you also keep the overcommit ratio conservative.
Related Calculators
You might also need
- Hypervisor Consolidation CalculatorCommonly used together
- VMware Cluster Capacity CalculatorCommonly used together
- VMware Memory Overcommit CalculatorCommonly used together
- VMware vCPU Overcommit CalculatorCommonly used together
- VMware Datastore Capacity CalculatorCommonly used together
- Virtualization Ratio CalculatorAlso in Virtualization & Private Cloud
