Back to Article List

VPS vs dedicated server: When to move

VPS vs dedicated server: When to move

Updated and tested 28 September 2026

If top on your VPS has shown a steal figure above 5% for most of a week, or iostat reports 4 KB reads waiting 10 ms or more at a quiet hour, you are past the point where a bigger VPS plan fixes anything. Those two numbers are the honest signal that the machine you're sharing is the limit, and the choice in front of you is a virtual dedicated server with pinned cores or a physical server with nobody else on it. This article is about the second option: what changes operationally when the hypervisor goes away, what you give up, the concrete triggers I use to decide, and the odd case where you rent bare metal and put a hypervisor back on it yourself.

The comparison assumes you already know what a VPS is and how the shared host works. If not, the explainer on KVM VPS covers the mechanics. Commands below assume Ubuntu 24.04 LTS.

What a dedicated server is operationally

A dedicated server is a physical machine in a rack that the provider hands to you whole. There's no hypervisor unless you install one, no other tenant, and the resources printed on the order page are the resources in the chassis: the CPU sockets, every DIMM, the NVMe or SATA drives in their bays and the physical network port. You boot an OS on it the same way you would on a desktop, except the console is a remote KVM-over-IP session and the install media is an ISO you mount over the network.

Everything that follows in this article is a consequence of that one difference. The VPS gives you a slice of a host that the provider manages; the dedicated server gives you the host and makes you the manager.

Single tenant vs shared host

On a VPS your vCPUs are threads scheduled onto cores that other VMs also use, your RAM is a region of the host's memory and your disk is an image on storage that everyone on the host reads and writes. That's fine most of the time and it's the reason a VPS is priced the way it is. The failure mode is the noisy neighbour, which shows up as CPU steal, as disk latency or as a saturated host NIC, and the diagnosis routine for all three, from %st to r_await, is in the piece on CPU steal time and noisy neighbours, along with the ticket template. On bare metal the neighbour problem doesn't exist in that form. The only thing that can steal from you is your own software.

The flip side is that the provider can no longer fix contention for you by moving your VM to a quieter host. There is no quieter host. If the server you rented is too small, the fix is a different server and a migration you perform.

Memory bandwidth and NUMA

A detail that rarely appears on a VPS order page: memory bandwidth. A VM with 8 GB on a host with 512 GB across two sockets is sharing the memory controllers with every other VM, and a neighbour running a large in-memory analytics job pulls bandwidth you can't see from inside your guest. On a dedicated server the whole memory subsystem is yours, and on a two-socket box you also get to care about NUMA (non-uniform memory access), which is the reason a database pinned to socket 0 should have its memory allocated from socket 0's DIMMs. numactl --hardware prints the topology. Most people never need to touch it; the ones who do tend to be running a single large process that wants all the RAM.

numactl --hardware on a VPS: available: 1 nodes (0), node 0 cpus 0 1

A VPS sees a single NUMA node; a two-socket dedicated server shows at least one per socket.

Raw NVMe, RAID and the filesystem

On a VPS you get a virtual disk (/dev/vda or /dev/sda) whose backing store is the provider's business. Replication, RAID level, the drive model, the write cache policy: all decided for you, and mostly not disclosed. On a dedicated server you get the drives. You choose software RAID with mdadm, ZFS with a mirror or RAID-Z, a hardware controller if the chassis has one, or no redundancy at all for a scratch box. You also inherit the consequence, which is that a failed drive is your alert to handle, and a controller with a dead battery-backed cache is your Tuesday.

lsblk -d on a VPS: sda 30G, ROTA 0, model QEMU HARDDISK

From inside a VPS the disk is a virtual QEMU device; the hardware under it stays out of view.

The performance side is real. A single enterprise NVMe drive on a bare-metal host with iodepth=1 random reads answers in tens of microseconds. The same test on a VPS goes through virtio, the host's I/O scheduler and whatever storage layer sits behind it, and a few hundred microseconds is a normal result even on an idle host. For a queue-depth-heavy database the difference is a multiplier on every query. For a web server serving cached pages it doesn't register.

The network port

A VPS port is a virtual NIC on a host bridge, and its speed is a cap the provider sets on top of a physical port shared with the other VMs. A dedicated server's port is a physical cable, and 1 Gbps or 10 Gbps means the whole thing. Bandwidth terms (transfer volume, fair use) still apply, but the port itself isn't contended.

Out-of-band management

Every serious dedicated server has a BMC (baseboard management controller), the small always-on computer inside the chassis that Dell calls iDRAC, HPE calls iLO and everyone else exposes through IPMI or Redfish. It's what replaces the VPS control panel's console button. Through it you get a remote console that works when the OS has crashed, power cycling, sensor readings and virtual media. Dell's documentation on the iDRAC virtual media function describes it as allowing "the remote usage of software image files (ISO files)", which in practice means you mount an installer ISO from your laptop and the server boots from it as if a USB stick were plugged in. Dell also notes an Enterprise licence is required for that feature on iDRAC 7 through 9, which is one of the things to ask a provider about, because a bare-metal server without console access is a server you have to open a ticket to rescue.

The BMC network is its own attack surface. I put it on a management VLAN or behind a VPN and never on the public address, and I'd treat a provider that exposes iDRAC directly to the internet with a default password as a reason to look elsewhere.

Provisioning time and the failure domain

A VPS deploys in about a minute because it's a copy of a disk image onto storage that's already running. A dedicated server takes anywhere from minutes (if the provider has the exact configuration racked and pre-tested) to days (if they have to build it). Installing the OS is then your job through the console, or the provider's automated installer if they run one.

Failure domains are the part I'd think about longest. When a VPS host dies, every VM on it goes down together, and the provider's job is to restart them elsewhere from shared storage, which on a well-run KVM cluster means minutes of downtime that you didn't have to act on. When a dedicated server dies, exactly one tenant is affected (you) and the recovery is physical: a technician swaps the PSU, the DIMM or the board, and your data is on the drives inside that chassis. A provider with spare parts on site and a four-hour hardware SLA will have you back the same day. Without those, you're waiting on a courier. This is why anyone running a single dedicated server for something that matters keeps a second one, or a VPS, ready to take over. Off-site backups matter more on bare metal too, since nobody else is snapshotting your disks.

Snapshots, live resize and the things bare metal can't do

The hypervisor is what makes a VPS convenient, and losing it costs you specific features.

Snapshots. On a KVM host the provider freezes your disk image at a point in time and lets you roll back. On bare metal that capability comes only from your own filesystem (LVM or ZFS snapshots), only covers what those tools cover, and the off-site half of the job is a restic or Borg timer, set up the way the restic and Borg VPS backup guide describes, pointed at somewhere that isn't this chassis. Plan to build it before you need it.

Live resize. A VM's disk can be grown while it runs; the Proxmox wiki on resizing disks gives the operator-side command as qm resize 100 virtio0 +5G and notes that "Linux should see the new size online without reboot with kernel >= 3.6". RAM and vCPU changes are a reboot at most, and the knowledge base note on what scaling your VPS means lists which changes need one. On a dedicated server, more RAM means a technician, a maintenance window and a DIMM.

Live migration. A VM can move between hosts while running, with downtime the QEMU project measures in the low hundreds of milliseconds. A physical server cannot move anywhere.

Reinstall from the panel. Two clicks on a VPS. On bare metal it's an ISO over the BMC or the provider's PXE installer, and it takes as long as a real install takes.

The cost model

No prices here, because they move, but the shape matters. A VPS is priced on the fraction of a host you hold, so small slices are cheap and the price climbs roughly linearly with resources. A dedicated server is priced on the whole machine, which means a fixed floor regardless of how little you use it and a much flatter curve above that. The crossover is the point where a VPS with the RAM and cores you need costs about the same as a small dedicated server, and above that line bare metal buys you more hardware per unit of money, plus everything in the sections above. Below that line a VPS is the better deal, and it comes with snapshots and a provider who handles the hardware.

Setup fees and contract terms are part of this. Some providers charge to rack a dedicated server or require a minimum term; monthly VPS billing rarely does either. Both belong in the comparison alongside the monthly figure.

Decision triggers

These are the conditions under which I stop resizing a VPS and price a dedicated server. Any one of them is enough.

Sustained CPU steal

A %st figure that averages above a few percent over a working week, confirmed with sar -u or a small /proc/stat sampler, on a plan that's already the top shared tier. The intermediate step is a VDS, which fixes the CPU side without leaving the hypervisor, and the comparison in VPS vs VDS and dedicated cores is where to check if that's enough. It usually is for game servers and trading bots. It usually isn't for a database that also hits the next trigger.

IOPS and latency ceilings

Random 4 KB read latency (r_await in iostat -x) that sits in the double digits of milliseconds at quiet hours, or an IOPS figure (r/s plus w/s in the same output) that stops at the same number under load on two plan sizes. The second one is the clearer signal: the provider has an I/O limit per VM and you've hit it. Raw NVMe on a single-tenant box removes the ceiling and the queueing behind neighbours at once.

Memory above roughly 128 GB

This is the threshold where the VPS pricing curve and the dedicated pricing curve cross for most providers I've looked at, and the number is deliberately rough. A VPS plan with 128 GB of RAM exists at some providers, but you're then paying for a quarter or half of a host anyway, and for a bit more you get the whole host with the memory bandwidth and the NVMe bays to go with it. Below 32 GB the question doesn't come up. Between the two it depends on the other triggers.

Compliance that requires single tenancy

Some audit regimes, and some customers' security questionnaires, require that no other organisation's code runs on the same physical hardware. A KVM VM has strong isolation, but strong isn't the same as absent, and a checkbox that says "dedicated hardware" is satisfied by bare metal and nothing else. If you're in a sector where that box exists, the decision is made for you.

Software licensed per socket or per physical core

Databases and some middleware charge per physical CPU or per core of the machine they run on, and a few vendors count the host's cores when the software runs in a VM unless the virtualisation platform is on their approved list. On a dedicated server the count is the count on the invoice, and you can pick a chassis with one fast socket instead of two slow ones to keep it small. Windows Server is a milder version of the same shape: Microsoft's Windows Server 2025 licensing guidance requires "a minimum of 8 core licenses per physical processor" and 16 per server for the physical model, and licensing per VM needs 8 cores per VM with active Software Assurance or a subscription. For a Windows box on either product the licence is yours to bring.

Something a VM can't do

Kernel modules the provider's KVM configuration doesn't expose, a PCIe card you own and want installed (a specific capture card, a specific NIC), a dozen drives in one chassis for a storage array, or a GPU setup with NVLink between cards. None of those fit in a VM, so the decision makes itself.

Step up to bare metal

Every core and every disk belongs to you, with root access from the first minute and a monthly price that stays where it started.
Fatura Kesim Döngüsü

BM.E1

$159.00 Save  25 %
$119.00 Aylık

24 çekirdek / 48 thread

CPU 2× Xeon E5-2680 v3 @ 2,5 GHz
Bellek 64 GB DDR4 ECC
Depolama 3× 2 TB SSD (toplam 6 TB)
Ağ 1 Gbps sınırsız
Şasi HPE ProLiant DL360 Gen9
✓ IPv4 + IPv6 ✓ iLO erişimi ✓ Kurulum ücreti yok ✓ Tam root erişimi

BM.R1

$269.00 Save  15 %
$229.00 Aylık

16 çekirdek / 32 thread

CPU AMD Ryzen 9 7950X @ 4,5 GHz
Bellek 128 GB DDR5
Depolama 2× 1 TB NVMe Gen4 (toplam 2 TB)
Ağ 1 Gbps sınırsız
Şasi Supermicro
✓ IPv4 + IPv6 ✓ IPMI erişimi ✓ Kurulum ücreti yok ✓ Tam root erişimi

BM.A1

$349.00 Save  14 %
$299.00 Aylık

24 çekirdek / 48 thread

CPU AMD EPYC 7402 @ 2,8 GHz
Bellek 256 GB DDR4 ECC
Depolama 2× 1,92 TB NVMe (toplam 3,84 TB)
Ağ 1 Gbps sınırsız
Şasi Gigabyte R282
✓ IPv4 + IPv6 ✓ IPMI erişimi ✓ İç içe sanallaştırma ✓ Kurulum ücreti yok ✓ Tam root erişimi

BM.A2

$499.00 Save  14 %
$429.00 Aylık

24 çekirdek / 48 thread

CPU AMD EPYC 7402 @ 2,8 GHz
Bellek 512 GB DDR4 ECC
Depolama 2× 1,92 TB NVMe (toplam 3,84 TB)
Ağ 1 Gbps sınırsız
Şasi Gigabyte R282
✓ IPv4 + IPv6 ✓ IPMI erişimi ✓ İç içe sanallaştırma ✓ Kurulum ücreti yok ✓ Tam root erişimi

*VAT excluded.

INCLUDED WITH EVERY PLAN

✓ No setup fees ✓1 Gbps network
✓ Free server monitoring ✓ Firewall management ✓24/7 support ✓ KVM virtualization

Running your own hypervisor on bare metal

A large share of dedicated servers I've seen end up running Proxmox VE, and the customer becomes a VPS provider to themselves. It's a good pattern. You get the single-tenant hardware, and on top of it you get back the snapshots, the live resize and the per-VM isolation you lost by leaving the VPS. One physical server hosts a database VM with pinned cores, a couple of application VMs and a container host, and the whole thing costs one chassis.

What you don't get back is the failure domain. A dead PSU still takes every VM with it, and there's no other host for Proxmox to migrate to unless you rent a second server and build a cluster, at which point you also need shared or replicated storage, because the Proxmox VE QEMU guide is explicit that live migration needs no "locally bound resources" on the VM and that "PCI or USB devices that are passed through currently block live-migration." Two nodes with local disks and a GPU in one of them is a setup that looks like a cluster and behaves like two separate servers. Proxmox will still let you build it.

The other cost is time. You're now the one patching the hypervisor, watching the SMART data, rotating the backups and answering the 3 AM page. Some teams want that control and have the people for it. Others discover after six months that the reason they rented a VPS in the first place was that someone else did all this. I'd be honest with yourself about which team you are before the order goes in.

What to check on a dedicated server order

The CPU model, and one socket or two, since two slow sockets lose to one fast one for most single-process work. The exact drives (model, interface, hot-swap bay or not). The RAID option: hardware controller, software or none, and who configures it. The BMC: is there a remote console, is virtual media licensed, is it on a private network. The port speed and the transfer allowance. The hardware replacement SLA in hours, and where the spare parts live. The setup fee and the minimum term. Where the provider runs its own dedicated line on hardware it owns, the answer to most of these is on the dedicated servers page, and the ones that aren't are a support ticket away. Finding out after the drive fails is the expensive way.

And one thing I don't know: how far the newest hosts' hardware I/O virtualisation closes the disk latency gap. SR-IOV NVMe and vDPA are shipping, and on paper a VM with a directly assigned NVMe namespace should see close to bare-metal latency. I haven't measured a production VPS platform that uses them, so the tens-vs-hundreds of microseconds figure above is what I've seen on virtio, and it may be out of date on a host built this year.

Most people who move to bare metal do it for one of the triggers above and are surprised by a second one they hadn't noticed. The database gets faster because of the NVMe, and then the monthly bill stops changing because there's nothing left to resize. How much of the machine you use decides if the fixed bill is a feature.

Questions?

How do I verify that a dedicated server is really dedicated?

Run systemd-detect-virt on it: physical hardware gives none and a non-zero exit status, while a virtual machine reports its hypervisor, for example kvm, vmware or microsoft for Hyper-V. That check only reads what the hypervisor exposes to the guest, so I'd back it up with things a VM can't produce: a BMC login with its own remote console, and drives that smartctl -i lists with a real model and serial number where a VPS shows a QEMU virtual disk or no identity at all. If either is missing on a server sold as dedicated, ask the provider before any data goes on it.

About the author

J. Brennan

Jack Brennan started as a field technician in New South Wales and later spent several years maintaining infrastructure in commercial data centres. Procedures and training material gradually became part of the job, and documentation followed from there.

He writes about bare-metal servers, storage, hardware troubleshooting and the practical side of moving data between physical and virtual environments. Installation guides are another regular subject, especially where assumptions about networking or server hardware can trip up somebody doing the job for the first time. Jack lives near Newcastle, Australia, with two "majestic" greyhounds. He has restored motorcycles since his 20s, particularly Japanese bikes from the 1980s, and volunteers backstage at a community theatre on lighting and set construction.

It's time for a server that's all yours

Pick the machine your project needs from HPE, Dell, Supermicro and Gigabyte builds, with 1 Gbps unmetered and no setup fee.