A VPS is the cheapest point where you get root access and predictable resources. It’s also where most people either overspend by 3x or under-spec and spend the next six months fighting the OOM killer.

The spec sheet won’t tell you which you’re doing. The reasoning below will.

Start from what your stack eats, not from traffic

Traffic is the wrong first input. Two sites with identical visitor counts can need wildly different memory, because memory is driven by what’s running — PHP workers, a database, a cache daemon, and the OS — not by who’s visiting.

A rough baseline on a modern Linux distro:

Component Typical resident memory Notes
OS + systemd + sshd 250–450 MB Higher on panel images (cPanel, Plesk) — often 800 MB+
MariaDB or MySQL 350 MB–1.2 GB Grows with buffer pool and connection count, not just data size
PHP-FPM 60–120 MB per worker Workers are the multiplier most people miss
Redis (object cache) 30–80 MB Cheap, and often removes the need for a bigger box
Nginx or Apache 20–150 MB Apache with prefork uses substantially more

Do the arithmetic on your own stack. A small WordPress site with 6 PHP-FPM workers at 80 MB, a 400 MB database, Redis on defaults, and a 300 MB OS sits around 1.2 GB before the kernel uses any disk cache.

The 1 GB trap. A 1 GB VPS boots fine and serves a quiet site fine. Add a traffic spike, a plugin spawning background jobs, or a backup compressed in memory, and the kernel starts killing processes. On a database host that’s corruption risk, not just a slow page.

How much RAM for how much traffic

Planning ranges, not guarantees. Caching moves these numbers more than anything else here.

Monthly visits (cached) Practical RAM What it buys
Under 10k 1 GB One small site, no object cache, tight PHP-FPM limits
10k–50k 2 GB Comfortable single site, object cache, room for backups
50k–200k 4 GB Multiple sites or heavy plugins, staging copy
200k+ 8 GB, or move to managed hosting Your time costs more than the server at this point

Behind a page cache and a CDN, PHP only runs on cache misses. A 100k-visit month at a 95% hit rate is roughly 5,000 dynamic renders — nothing. Without a page cache it’s 100,000 renders, and your worker pool is the bottleneck.

vCPU counts are marketing until proven

“4 vCPU” for $6 and “2 vCPU” for $24 aren’t comparable. Hosts differ on whether those cores are dedicated or shared, how much steal time you get under load, and which CPU generation you land on. A shared-core count is a ceiling, not a promise.

Two things worth checking before you commit:

  • Steal time. Run top and watch the st column under real load. Persistent steal means a contended host, whatever the plan says.
  • Dated benchmarks. A performance number without a date and region is decoration. Hosts swap hardware.

Storage decides your database speed

For a database, IOPS matter more than gigabytes. NVMe versus network-attached SSD is a real difference in write latency, and you feel it on admin pages, imports, and backups long before you feel raw disk size.

One rule that survives contact with reality: keep disk usage under 70%. Filesystems slow as they fill, and a full disk turns routine log rotation into an outage.

What the pricing page doesn’t emphasize

Detail Why it matters later
Backup policy and retention ‘We back up daily’ without a retention window or restore path isn’t a plan. Ask how to restore, then try it.
Transfer limit vs bandwidth Small sites never approach either, but the overage price is what bites when one does.
Snapshot cost Some bill snapshots per GB-month. It compounds quietly.
Support scope Support that ends at ‘the server is up’ won’t debug a plugin conflict at 2am.
Migration out Check you can export a disk image. Exit cost is real leverage.
Region options Latency to your users is a design decision, not an afterthought.

Where to actually buy

For a first VPS running one site, the practical shortlist is DigitalOcean, Vultr, Linode (now Akamai), Hetzner, and Contabo at the budget end. They differ mainly in price per gigabyte of RAM, region coverage, and how much you like the control panel. Take the smallest plan that fits your stack, run it a month, and watch memory and steal time before sizing up. Moving up a tier costs a reboot; overpaying for a year costs money every month.

REPLACE_ME — DigitalOcean referral link · REPLACE_ME — Vultr link · REPLACE_ME — Hetzner link

Questions people ask

Is 1 GB RAM enough for a WordPress VPS?

It runs, with no headroom. Add an object cache, a backup job, and a spike and you’ll meet the OOM killer. 2 GB is the realistic floor for a site you care about.

Do I need a control panel?

Only if you want one. Panels cost 300–600 MB of RAM and add attack surface in exchange for convenience. On a single-site box, a firewall, unattended-upgrades, and a deploy script usually do the job.

Should I pick the cheapest provider?

Cheapest wins when the workload is disposable. When downtime costs money, pay for the provider whose support and snapshot story you’ve actually verified.

Sources

Some links on this page are affiliate links. If you buy through them, TechPicks may earn a commission at no extra cost to you. It does not affect what we recommend. Full disclosure.