What Is a VPS? Virtual Private Servers Explained (2026)

What Is a VPS? Virtual Private Servers Explained (2026)

What is a VPS? A VPS (virtual private server) is your own server that doesn’t exist as its own hardware. A hosting provider uses virtualization software to split one big physical machine into several isolated virtual machines. Each of them behaves like a complete computer, with its own operating system, its own IP address and full root access. You only pay for a slice of the hardware, but you get full control over “your” server.

That’s the definition. We want to give you more than that, though. We run two VPS in production ourselves: a large development server with 12 vCPUs and 23 GB of RAM that currently runs 70 services, and a small one with 4 vCPUs and 8 GB of RAM that runs 45. For this article we measured both from the inside in 2026. One result surprised us, and you can check it on your own VPS in ten seconds.

What is a VPS? The explanation in one picture

Picture a large apartment building. The building is the physical server in the data center: a box with dozens of CPU cores, hundreds of gigabytes of memory and fast SSDs. The provider builds apartments inside it. Each apartment has its own front door and key, its own rooms and its own mailbox. Whatever you do inside, the neighbors don’t see it. You can paint the walls, move the furniture and change the lock.

That’s exactly what a VPS is:

  • The building is the hardware (the “host”).
  • The building manager is the hypervisor, software that splits the hardware and makes sure nobody gets into someone else’s apartment.
  • Your apartment is the virtual machine, your VPS.
  • The neighbors are other customers running their own VPS on the same hardware.

What matters is what you don’t share: your operating system, your files, your processes and your passwords. What you do share is the foundation: the host’s CPU, memory bus, network card and disks. That distinction sounds academic. It explains almost every pro and con in the rest of this article, though.

A server stack made of hardware, a hypervisor layer and several isolated virtual machines

How does a VPS work technically?

Under the hood, almost every modern VPS provider uses KVM (Kernel-based Virtual Machine). KVM is built directly into the Linux kernel and uses the virtualization instructions of modern CPUs (AMD-V on AMD, VT-x on Intel). That’s why code inside your VPS runs on the real processor at close to native speed. Nothing is emulated.

You can check this from the inside. On both of our VPS, these commands return the same thing:

systemd-detect-virt
# kvm

lscpu | grep -E "Model name|Hypervisor"
# Model name:        AMD EPYC-Genoa Processor
# Hypervisor vendor: KVM

So your VPS knows it’s virtualized, and it can see the host’s real CPU model. Both machines are hosted at Hetzner (/sys/class/dmi/id/product_name literally says vServer). They sit in different data centers and have different sizes, but run on the same server CPU generation.

The three building blocks: vCPU, RAM, storage

When you rent a VPS, you’re essentially buying three numbers:

1. vCPUs (virtual CPU cores). A vCPU is a compute thread on the host that the hypervisor assigns to your machine. On “shared vCPU” plans you share the physical cores with other customers, which is why they’re cheap. On “dedicated vCPU” plans a core is reserved for you. Hetzner itself describes shared plans as designed for “variable usage patterns rather than sustained high workloads” and dedicated ones for high production workloads. That matches our experience.

2. RAM. With reputable KVM providers, memory is reserved. If you pay for 8 GB, you get 8 GB. We measured how much you actually need in a separate article: How much RAM does a server need?. Short version: usually less than you think.

3. Storage (disk). Your disk is a virtual drive that lives on the host’s SSDs or NVMe drives. Inside your VPS it shows up as an ordinary disk. On our machines it’s literally called QEMU HARDDISK, because QEMU emulates the devices while KVM accelerates the CPU.

On top of that you almost always get a public IPv4 address (which increasingly costs extra), an IPv6 network and an allowance for outgoing traffic.

What “virtual” means in practice, and what it doesn’t

A common misconception: “virtual” sounds like “not quite real”. From your point of view, though, a VPS is a full Linux server. You log in via SSH, install packages, start services, set up a firewall and run a web server. No program notices that it’s running on a VPS unless it wants to talk directly to hardware, such as a graphics card or special USB devices.

You notice the difference in three places:

  1. You can’t touch the hardware. No RAID card of your own, no BIOS, no choice of disk.
  2. You can resize, back up or clone the machine with a click. That’s the big advantage over bare metal.
  3. You share resources, and in rare cases that can become noticeable. More on that in the measurement section.

VPS vs. shared hosting vs. dedicated server

Most people end up asking “what is a VPS?” because they’re choosing between three kinds of hosting. Let’s stick with the building analogy:

Three buildings: a shared dormitory, an apartment block with locked apartments and a detached house

Shared hosting is the dorm room. You get a folder on a server shared by hundreds of customers, plus PHP, a database and a web panel. The provider looks after the operating system. That’s convenient, but you can’t install anything the provider didn’t plan for: no Node.js service, no Docker, no mail server of your own, no cron jobs with root privileges.

A VPS is the rented apartment. You have your own isolated system with root access, but you share the building.

A dedicated server is the detached house. The entire hardware is yours for as long as you rent it. There are no neighbors, but you pay considerably more, and if hardware fails you wait for a technician instead of your system moving to another host.

Shared hostingVPSDedicated server
Own operating systemNoYesYes
Root accessNoYesYes
ResourcesHeavily sharedGuaranteed shareFully exclusive
Any softwareOnly what the host allowsYesYes
System maintenanceProviderYouYou
ScalingSwitch plansOne click, often minutesOrder new hardware
Typical costA few eurosA few to a few dozen eurosFrom around 40 euros up
Good forSimple WordPress siteWeb apps, APIs, bots, own servicesConstant full load, large databases

The most important line in that table is “maintenance”: with a VPS, you are the administrator. Security updates, the firewall, backups and SSH hardening are your job. We learned how serious that is the hard way, when one of our servers was hijacked by attackers for five days. The full story is in Server hijacked for five days. If you rent a VPS, read our Linux server setup guide first. The first login attempts from attackers don’t take days. They often arrive within minutes.

And “the cloud”?

In practice, “cloud server” and “VPS” mean almost the same thing today. Providers like Hetzner call their VPS “cloud servers” because they can be controlled via API, are billed by the hour and can be resized with a click. Technically it’s still a virtual machine on a host. The difference from “classic” VPS lies more in billing and automation than in the technology.

If you go one step further and run virtualization on your own hardware, you end up with hypervisors like Proxmox. See Proxmox vs. ESXi for that comparison. That’s the landlord’s role rather than the tenant’s.

What do you need a VPS for?

From our own operations, these are the jobs a VPS is exactly the right tool for:

  • Web applications with their own backend. Node.js, Python or Go services that run permanently don’t work on shared hosting. On a VPS they’re one systemctl start away.
  • Lots of small services side by side. Our small 8 GB VPS runs 45 system services, including several web APIs. The large one runs 70, plus a web server that serves more than 30 domains with TLS certificates.
  • A reverse proxy in front of everything. A single web server accepts all requests and routes them to internal services. What is a reverse proxy? explains how that works.
  • Docker stacks. Database, app and cache as containers from a single config file. There’s an example in our Docker Compose example.
  • Bots and automations that run around the clock. Your laptop sleeps, a VPS doesn’t. At the time of measurement our small server had been running for 82 days without a reboot, the large one for 85.
  • Your own cloud services. Nextcloud, a password manager, a Git server or a VPN: things where you don’t want to hand your data to a corporation.
  • Learning. A small VPS for a few euros a month is the cheapest way to learn Linux properly. If you break the configuration, you reinstall the image and start over.

What a VPS is not the best choice for:

  • A simple WordPress site with no technical interest. Good managed hosting is cheaper here once you count your own time.
  • Constant full CPU load (video rendering, compiling around the clock, compute-heavy databases). Dedicated vCPUs or a dedicated server pay off here.
  • Anything that needs a GPU. Regular VPS have no graphics card. If you want to run AI models yourself, you need special GPU instances or your own hardware.

Note: this video comes from a hosting provider and is promotional accordingly. It still explains the basics well.

What we measured on our own VPS

Enough theory. We looked at what you can find out about the shared hardware from inside our two VPS. All values are from September 24, 2026 and were collected with built-in tools, no benchmark software.

A figure examining the gauges of a transparent server with a magnifying glass

The two machines

Large VPS (development)Small VPS (Helsinki)
vCPUs124
RAM23 GB8 GB
Disk458 GB153 GB
Host CPUAMD EPYC GenoaAMD EPYC Genoa
Running system services7045
Uptime at measurement85 days82 days
Load (15-min average)2.070.08
Kernel boot time3.2 s3.9 s

A kernel boot time of three to four seconds is typical for VMs because hardly any real hardware needs initializing. That’s one of the underrated advantages of a VPS: a reboot after a kernel update takes seconds. On a bare-metal server with a RAID controller you often wait minutes.

Finding 1: The disk is fast, but not equally fast everywhere

We ran the same rough write test on both machines, 512 MB with direct I/O bypassing the page cache:

dd if=/dev/zero of=/tmp/probe bs=1M count=512 oflag=direct
rm /tmp/probe
Write (direct)
Large VPS1.0 GB/s
Small VPS599 MB/s

Both are more than enough for web applications. But they show something important: two VPS from the same provider with the same CPU don’t deliver the same disk performance. Larger plans often get a bigger I/O share, and the number depends on how busy the host is at that moment. A single dd run is therefore a snapshot, not a benchmark. If you need to know precisely, measure several times at different times of day.

Finding 2: Steal time is zero, and that proves less than it seems

This is the result that surprised us. A VPS has a special CPU metric: steal time (st in top and vmstat). It measures the time your virtual CPU wanted to run but the hypervisor had given the physical core to a neighbor. It’s the only number with which a VPS can see from the inside that neighbors are taking performance away from it.

We read the cumulative counter since boot straight from the kernel:

awk '/^cpu /{print "steal=" $9}' /proc/stat

Result on both machines: steal=0. Over 85 and 82 days respectively, on plans with shared vCPUs, not a single tick.

The obvious reading would be: “Our neighbors never bothered us.” We can’t claim that, though. A value that stays exactly zero for almost three months fits a second explanation just as well: the hypervisor simply doesn’t report steal time to the VM. From the inside, you can’t tell those two cases apart. Both look identical in /proc/stat.

The practical lesson: if someone tells you to “just keep an eye on steal time” on your VPS, first check whether your provider reports it at all. A metric that’s always zero can never turn red. It’s more reliable to watch your own application: response times, run times of recurring jobs, queues. If those fluctuate while your own load stays the same, that’s the more honest hint at noisy neighbors.

Finding 3: Lots of memory is “used” and still free

On the small VPS, free -m shows only 688 MB as “free”. Out of 8 GB, that looks tight. The available column, however, says 4,976 MB. The difference is the page cache: Linux uses idle RAM as a file cache and hands it back instantly when a program needs memory. That works on a VPS just like on real hardware. Beginners often book a bigger plan for no reason at this point, which is why we wrote a separate article on RAM requirements.

How to measure your own VPS

If you’ve just rented a VPS, these five commands tell you within a minute what you actually got:

# 1. Am I virtualized, and with what?
systemd-detect-virt

# 2. Which CPU, how many cores?
lscpu | grep -E "Model name|^CPU\(s\)|Hypervisor"

# 3. How much memory is really available? (column 'available')
free -m

# 4. Does my provider report steal time? (column 'st', 5 seconds)
vmstat 1 5

# 5. Roughly how fast does the disk write?
dd if=/dev/zero of=/tmp/probe bs=1M count=512 oflag=direct; rm /tmp/probe

Write the numbers down on day one. That’s your baseline. If your server suddenly feels slow three months from now, you’ll have something to compare against instead of guessing.

Pros and cons of a VPS

Pros

  • Full control. Your own operating system, your own software, your own rules. You decide which Linux distribution runs and which services run on it.
  • Cheap. A usable entry-level VPS from a European provider costs less than a streaming subscription. Our small Helsinki server with 4 vCPUs and 8 GB carries 45 services and is mostly bored doing it.
  • Scalable. More RAM or CPU is a reboot away with most providers.
  • Snapshots and backups with one click. Before a risky update, you take an image of the whole machine and can roll back if needed.
  • Hardware failures rarely hit you directly. If a disk dies in the host, that’s the provider’s problem, not yours.
  • Fast reboots. Seconds instead of minutes.

Cons

  • You’re the admin. Updates, security, backups and monitoring are on you. That’s not a detail, it’s the main difference from shared hosting.
  • Shared resources. On cheap plans with shared vCPUs, a noisy neighbor can drag your performance down, and as finding 2 shows, you may not be able to see that from the inside.
  • No choice of hardware. No GPU of your own, no special cards, no say in the host’s disk layout.
  • Trust in the provider. Whoever has access to the host theoretically has access to your VM. For the vast majority of projects that’s acceptable. For highly sensitive data, think deliberately about encryption and your choice of provider.
  • Costs grow with you. If you run many large VPS, you eventually reach prices where a dedicated server would be cheaper.

What to look for when renting a VPS

In our experience, these are the points that actually matter. The rest is marketing.

  1. Data center location. For European users and GDPR questions, EU locations make sense. Latency barely matters for websites within Europe, but it does for real-time applications.
  2. Virtualization technology. KVM is the standard and the right choice. Older container-based offerings (such as OpenVZ) share the kernel with the host, so you can’t load your own kernel and often can’t run Docker properly. Check with systemd-detect-virt.
  3. Shared or dedicated vCPUs. Shared vCPUs are enough for websites, APIs and bots with uneven load. For sustained load, pick dedicated.
  4. IPv4 address. Many providers now charge extra for it. Include that when comparing prices.
  5. Traffic allowance. European providers are usually generous here. With some US providers, outgoing traffic gets expensive.
  6. Backups and snapshots. Do they cost extra? How often do they run? A provider snapshot doesn’t replace your own backup in a second location.
  7. Billing. Hourly billing is ideal for testing: you spin up a server, try something and delete it again for a few cents.
  8. Support and status page. When the host goes down, you want to know it’s not your fault.

We deliberately don’t quote specific prices here. They change more often than an article gets updated. Always use the provider’s current pricing page as the source, not a blog post.

Your first steps with a new VPS

You’ve rented a VPS and received your credentials. This is how we approach a fresh machine, in this order:

  1. Log in via SSH with a key, not a password. If you don’t have a key yet, What is SSH? will help.
  2. Update the system (apt update && apt upgrade on Debian and Ubuntu) and turn on automatic security updates.
  3. Disable password login and root login by password.
  4. Enable a firewall and leave only SSH, HTTP and HTTPS open. Careful: Docker can bypass firewall rules. We explain that in the Docker Compose article.
  5. Create a regular user and use sudo for admin tasks.
  6. Set up backups before you have data, not after.
  7. Run the five measurement commands from above and note the results.

All steps with commands, plus the traps we fell into ourselves, are in Linux server setup. If you’re still deciding on an operating system: an Ubuntu LTS or Debian image is the safe choice for beginners. The comparison is in Debian vs. Ubuntu.

A small server rocket launching next to a clipboard with a ticked checklist

What we deliberately don’t claim

  • We only measured one provider. Both VPS run at Hetzner. Other providers may look different on disk performance and steal reporting.
  • One dd run isn’t a benchmark. It shows an order of magnitude, not a solid number for comparing providers.
  • Zero steal time doesn’t prove we never had noisy neighbors. It only proves we can’t see it from the inside.
  • We didn’t measure a dedicated server for direct comparison. The classification in the table is based on the technology, not on a parallel experiment of our own.

Conclusion: what is a VPS, and do you need one?

A VPS is your own complete Linux server that shares its hardware with others. You get root access, your own software and your own IP for a fraction of the price of a real server. In return, you’re the administrator, and you share CPU and disk with neighbors you don’t know.

Our measurements show that this works remarkably well in practice. A small VPS with 4 vCPUs and 8 GB carries 45 services for us, has been running for almost three months without a reboot and has almost nothing to do most of the time. At the same time, they show the limit of looking from the inside: the one metric that’s supposed to reveal noisy neighbors has been sitting at zero for months. That could mean good neighbors, or a measurement that doesn’t exist.

Our recommendation: if you want more than a simple website, if you want to run services, use Docker or learn Linux, a small VPS is the best starting point there is. Pick a European provider with KVM, start small, measure on day one, and secure the server before you do anything else.

Frequently asked questions

What is a VPS in simple terms?

A VPS (virtual private server) is a virtual server: one large physical machine is split by software into several isolated machines. Each has its own operating system, its own IP and root access. You’re renting an apartment in the building instead of the whole building.

Is a VPS the same as a cloud server?

In practice, mostly yes. “Cloud server” usually means a VPS that’s billed by the hour and controllable via API. Technically both are virtual machines on a shared host. In German-speaking countries, the same product is often called a “vServer”.

Is a VPS a real server?

Logically yes, physically no. From your software’s point of view it’s a complete server with its own kernel and processes. Physically it runs on hardware you share with other customers. Those other customers can’t see your files or processes.

How much does a VPS cost?

Simple VPS from European providers start in the low single-digit euro range per month. Larger machines with several dedicated cores cost a few dozen euros. Always check current prices directly with the provider, since they change regularly, including surcharges for IPv4 addresses.

What is a VPS used for?

For everything shared hosting can’t do: permanently running applications (Node.js, Python, Go), Docker containers, your own cloud services like Nextcloud, bots, VPNs, Git servers, or simply learning Linux. Multiple websites behind a reverse proxy also run ideally on a VPS.

Is a VPS secure?

The separation between VMs provided by KVM is robust. The bigger risk is you: a VPS is exposed to the internet from minute one, and you’re responsible for updates, the firewall and SSH hardening. Most hacked VPS are taken over through weak passwords or outdated software, not through the hypervisor.

Do I need Linux skills for a VPS?

Basic ones, yes. You should be able to log in via SSH, install packages and edit config files. If you can’t do that yet, a VPS is exactly the right place to learn. A good starting point is Best Linux for beginners.

VPS or shared hosting: which is better?

For a simple WordPress site with no special requirements, shared or managed hosting is more convenient because someone else looks after the system. As soon as you want to run your own software, use Docker or need root access, there’s no way around a VPS.

VPS or dedicated server?

A VPS is enough for the vast majority of web projects, APIs and bots. A dedicated server pays off with constant high CPU load, large databases, or when you need the hardware exclusively. If you’re unsure, start with a VPS. Scaling up takes minutes, and moving to a dedicated server later is possible too.

How much RAM does my VPS need?

For a pure web server or reverse proxy, 1 GB is enough. For a few small services with SQLite, 2 GB. For a typical web server with a database, 4 GB. What matters is the available column in free -m, not free. The detailed measurements are in How much RAM does a server need?.

What is steal time on a VPS?

Steal time is the time your virtual CPU wanted to run but the host gave the core to another customer. You see it as st in top or vmstat. Careful: if it stays at exactly zero for weeks, that may also mean your provider doesn’t report it at all. On our two Hetzner VPS it stayed at zero for more than 80 days.