When you buy a VPS, you are renting a slice of a physical server. How that slice is carved out — the virtualisation technology — affects everything from performance consistency to what operating systems you can run. The two most common types are KVM and OpenVZ. Understanding the difference helps you avoid the cheapest plans that underdeliver.

How they work

KVM (Kernel-based Virtual Machine) is full virtualisation. Each VPS gets its own kernel, its own virtual hardware, and strict resource isolation. The hypervisor (the host’s kernel with KVM modules) presents a complete virtual machine to the guest. The guest can run any operating system — Linux, BSD, Windows — with its own kernel.

OpenVZ is container-based virtualisation. All VPS instances share the host’s Linux kernel. Each container gets its own filesystem, processes, and network stack, but the kernel is shared. This makes OpenVZ lighter but less isolated.

The key differences

FeatureKVMOpenVZ
KernelDedicated per VMShared with host
OS supportAny (Linux, BSD, Windows)Linux only (must match host kernel)
Resource guaranteeHard (enforced by hypervisor)Soft (can be oversold)
MemoryRAM dedicated to VMRAM can be burstable/best-effort
Disk I/ODedicated virtual diskUsually better (direct kernel access)
Boot time10-30 secondsNear-instant
Docker supportYes (native)Yes, with caveats
Kernel modulesCan load anyCannot load custom modules

The overselling problem

OpenVZ allows hosts to oversell resources. A server with 64 GB RAM might host 100 containers each “allocated” 1 GB — total 100 GB “sold” on 64 GB of physical RAM. This works when most containers use less than their allocation, but when many containers are busy simultaneously, performance degrades.

KVM cannot be oversold the same way. The hypervisor enforces resource limits. If a VM is allocated 2 GB RAM, those 2 GB are reserved from the host’s physical memory.

This is the single most important difference: KVM gives you guaranteed resources. OpenVZ gives you allocated resources that may or may not be available when you need them.

Performance

On identical hardware with the same allocation:

MetricKVMOpenVZ
CPU overhead~2-5%<1%
Disk I/O (raw)Slightly lower (virtualised)Near-native
Memory accessSlightly higher latencyNative
Network throughput95-98% of bare metal98-99% of bare metal

OpenVZ is marginally faster in benchmarks because it has less overhead. But this advantage disappears when the host is oversold — your “1 GB RAM” OpenVZ container might effectively have 256 MB available while your KVM VM always has its full allocation.

Practical implications

Can I run Docker?

KVM: Yes. Docker works exactly as it does on bare metal. You can run any container, load any kernel module needed by Docker.

OpenVZ: Yes, with limitations. Docker inside OpenVZ requires the host to enable specific kernel features. Some Docker features (overlay2 storage driver) may not work. Always test before committing.

Can I run a VPN (WireGuard)?

KVM: Yes. WireGuard needs kernel modules. KVM lets you load them.

OpenVZ: Depends. WireGuard requires kernel support that the host must provide. Many OpenVZ hosts do not enable it.

Can I change kernels?

KVM: Yes. Install any kernel you want inside the VM.

OpenVZ: No. You share the host kernel. No kernel customisation.

Can I run custom firewall rules?

KVM: Yes. iptables/nftables work normally.

OpenVZ: Usually yes, but some advanced modules (connection tracking helpers) require host configuration.

How to check which one you have

# Check if you're on OpenVZ
ls -la /proc/vz 2>/dev/null && echo "OpenVZ" || echo "Not OpenVZ"

# Check for KVM
dmesg | grep -i kvm
# or
lscpu | grep Hypervisor
cat /sys/class/dmi/id/product_name  # May show "KVM" or "VirtualBox"

Most providers clearly label their plans. If they do not, and the price seems too good to be true, it is probably OpenVZ with aggressive overselling.

Pricing

OpenVZ hosting is typically cheaper because hosts can pack more containers per server:

TypeEntry priceTypical RAM at $5
KVM$4-6/month1 GB
OpenVZ$2-4/month1-2 GB

The price difference used to be larger. KVM has become more efficient, and host hardware has improved, narrowing the gap. In 2026, many budget providers offer KVM at OpenVZ prices.

When each makes sense

Choose KVM for:

  • Production websites and applications
  • Anything handling user data or payments
  • Docker or Kubernetes workloads
  • Custom kernel requirements (VPNs, specific filesystems)
  • Performance-sensitive applications where consistency matters

OpenVZ is acceptable for:

  • Development and testing environments
  • Personal projects with no uptime guarantees
  • Learning Linux without spending on KVM
  • Very low-traffic sites where occasional slowdowns are acceptable
  • Build agents and CI/CD runners

Verdict

KVM is the standard for production workloads. The resource guarantees, kernel isolation, and flexibility outweigh the small price premium. Most reputable providers (DigitalOcean, Linode, Vultr, Hetzner Cloud) use KVM exclusively.

OpenVZ is a cost-cutting technology for hosts, not a feature for you. If you see an unusually cheap VPS plan, check whether it is OpenVZ. If it is, understand that you are getting best-effort resources, not guaranteed ones.

The simple rule: for anything that matters, use KVM. For throwaway environments, OpenVZ is fine.