A VPS (Virtual Private Server) is a slice of a large physical server, carved out with virtualisation and handed to you as if it were a standalone machine: it has its own operating system, a fixed allocation of CPU, RAM and disk, and full root access that is entirely yours. You install whatever software you like, run whatever services you like and change whatever settings you like.
The key difference between shared hosting and a VPS is exactly that access. On shared hosting, hundreds of sites share one server and one operating system, and you get a single directory and a control panel (such as cPanel or DirectAdmin); the provider manages everything and you just upload files. On a VPS you get guaranteed resources and complete freedom, but keeping the server running is your responsibility. A dedicated server means an entire physical machine is yours alone. Below we compare the three in more detail and work out which one suits you.
Short answer: A VPS is a portion of a physical server, isolated by virtualisation, with its own operating system, guaranteed RAM and disk, and root access. On shared hosting, resources and the operating system are shared among many sites and you work only through a control panel. A dedicated server gives you an entire physical machine to yourself.
Three hosting models at a glance
Shared hosting
Think of a flat with a shared kitchen and bathroom. The provider splits one powerful server among many customers. The web server, PHP and database are preinstalled, and you use the control panel to put your site up, create mailboxes and set up databases.
Its strengths are simplicity and low cost. Its weakness is the sharing itself: if a neighbouring site suddenly gets heavy traffic or runs a heavy script, your site slows down too. You cannot install a specific version of a piece of software, run long-lived processes (such as a queue worker or WebSocket server), or change system-level settings.
Virtual private server (VPS)
This time you have a self-contained unit in the same building. With technologies such as KVM, the physical server is divided into several virtual machines, each with its own operating system kernel. The RAM and disk you pay for are yours, and the neighbours cannot take them. CPU is usually shared between machines unless you buy a "dedicated vCPU" plan.
With a VPS you can run Docker, install Redis and PostgreSQL, keep Laravel queues running with Supervisor or systemd, and host several projects side by side.
Dedicated server
A whole detached house. All of the hardware, from the processor to the disks, is yours alone, with no virtualisation layer between you and the hardware. It makes sense when you need high disk performance, a lot of RAM or heavy, sustained processing. In return it costs more, takes longer to provision, and if a component fails, replacing it takes time.
Comparison table
| Criterion | Shared hosting | VPS | Dedicated server |
|---|---|---|---|
| Resources | Shared, not guaranteed | Fixed, guaranteed share | All the hardware |
| Root access | No | Yes | Yes |
| Install any software | Limited to what the panel offers | Yes | Yes |
| Run long-lived processes | Usually not | Yes | Yes |
| Scaling up | Switch plans | Minutes, sometimes with a reboot | Replace or add hardware |
| Security and updates | Provider | You (if unmanaged) | You |
| Technical skill needed | Low | Medium: Linux and SSH | High |
| Cost | Low | Medium | High |
| Best for | WordPress and small company sites | Web apps, APIs, multiple projects | Heavy workloads and large databases |
Managed or unmanaged?
A VPS is usually sold in two flavours, and in practice this difference matters more than the fact that it is a VPS.
Unmanaged means the provider only keeps the machine powered on and connected. You get an installed operating system, and from then on everything, from security updates to web server configuration, is up to you. If your site goes down, support usually only checks whether the machine itself is running.
Managed means the provider also takes on part of the maintenance: installing and updating packages, monitoring, backups and sometimes a control panel. What "managed" covers varies widely between providers, so ask exactly what is and is not included before you buy.
Rule of thumb: if nobody on your team is comfortable with Linux and SSH and has time to look after a server, either go managed or stay on shared hosting for now.
What exactly are you responsible for on a VPS?
When you move from shared hosting to an unmanaged VPS, work that used to happen invisibly lands on your plate:
- Initial security: a non-root user, SSH key-only login, a firewall and fail2ban. There is a step-by-step guide in the first hour on a new Linux server, and key setup is covered in SSH keys and connecting to a server.
- Updates: security patches for the operating system, PHP, the web server and the database.
- Backups: nobody backs up your data by default, and even if your provider offers snapshots, they are not enough. Take the 3-2-1 backup rule seriously.
- SSL certificates: issuing and renewing them automatically; with Let's Encrypt it is free.
- Monitoring: a filling disk, exhausted RAM, a crashed service. You need to know about problems before your users do.
- Email: running a mail server on a VPS is a lot of hassle, and messages easily end up in spam. It is usually better to hand email to a separate service.
- DNS: setting the domain's records to point at the server's IP. If records are new to you, see DNS records explained.
For day-to-day server work, a few dozen Linux commands are enough; they are collected in essential Linux commands for server management.
Which one do you need?
Rather than starting from price, start from what you need. Answer these questions in order:
- Is your site WordPress, a small shop or a brochure site with moderate traffic? Shared hosting is enough. Spend your time and energy on content, not servers.
- Do you need something shared hosting does not offer? For example a queue worker, minute-precise cron, a persistent Node.js or Python process, Redis, Docker or a specific PHP version. This is where a VPS is the answer. Laravel apps that push slow work onto queues almost always end up on a VPS.
- Is there someone on the team to maintain the server? If not, consider a managed VPS or a ready-made platform (PaaS). The question raised in build, buy or subscribe applies here too: engineering time has a cost.
- Do you have several small projects? One mid-sized VPS is usually cheaper and easier to control than several separate shared hosting accounts, provided you accept the maintenance.
- Is your workload or database so large that even the biggest VPS plan cannot cope, or has disk performance become the bottleneck? Then move to a dedicated server.
Signs you have outgrown shared hosting
- Messages like "resource limit reached" or 508 errors at peak hours.
- Your host's support asks you to reduce CPU usage.
- Every new feature needs a workaround because you are not allowed to install anything.
- Server response times fluctuate without any change in your code.
What to look for when buying a VPS
- RAM: for a PHP app with MySQL and Redis, start at 2 GB. 1 GB gets tight very quickly.
- Disk type: NVMe, or at least SSD. A slow disk is usually the first database bottleneck.
- Data centre location: the closer to your users, the lower the latency.
- Virtualisation: KVM gives you your own kernel, and Docker runs on it without trouble.
- Snapshots and backups: does the provider offer snapshots, and what do they cost?
- Upgrades: can you add RAM and CPU without reinstalling?
- Traffic and bandwidth: the monthly traffic cap and the cost of overages.
- Operating system: choose an LTS release such as Ubuntu 24.04 so it receives security patches for years.
Frequently asked questions
Is a VPS faster than shared hosting?
Usually, yes, because its RAM and disk are guaranteed and other sites' traffic affects it less. But a small, poorly configured VPS can be slower than good shared hosting; speed also depends on configuration, caching and disk type.
How much RAM does a VPS need?
For a PHP app with MySQL and Redis, 2 GB is a sensible starting point, and 1 GB gets tight very quickly. If you host several projects side by side, plan for a bigger plan from the start or make sure RAM can be upgraded without reinstalling.
Do I need a VPS for a WordPress site?
For most WordPress sites with moderate traffic, shared hosting is enough. A VPS starts to make sense when you hit resource-limit errors at peak hours, need software such as Redis, or want to host several sites together.
What is the difference between a managed and an unmanaged VPS?
With an unmanaged VPS the provider only keeps the machine running and connected, and installation, updates, security and backups are all yours. With a managed VPS the provider handles some of that work, but the scope varies between providers, so ask exactly what is covered before you buy.
When should I get a dedicated server?
When even the largest VPS plan cannot handle your workload or database, or disk performance has become the bottleneck. A dedicated server gives you all of the hardware with no virtualisation layer, but it costs more and replacing a failed part takes time.
Wrap-up
Shared hosting is simple and cheap, and perfectly adequate for ordinary websites. A VPS gives you guaranteed resources and complete freedom, and is the right choice for apps that need long-lived processes, specific software or more control, provided you accept responsibility for security, updates and backups or buy a managed plan. A dedicated server is for when you genuinely need a whole machine. Start from your needs, not the price list, and step up a tier whenever you see the signs that you have outgrown the current one.