When you move WordPress to a VPS, the first question is how big a server to rent. Buy too small and the site slows down or crashes at the worst moment. Buy too big and you pay every month for capacity you never use.
There is no single right answer, but there is a sensible way to think about it.
What uses resources on a WordPress server
A WordPress server does three main jobs, and each one uses memory and CPU differently.
- PHP runs WordPress itself. Every page that cannot be served from a cache is built by a PHP process, and each one can use anywhere from about 40 MB to well over 100 MB of memory while it works, depending on your theme and plugins.
- The database (MySQL or MariaDB) stores your content. It is happiest when the data it reads often fits in memory, so it will use as much RAM as you give it, up to the size of your data.
- The web server and caches hand out pages, images and files. With a good page cache, most visits never reach PHP at all, and this layer uses very little.
The key point: cached pages are cheap, uncached pages are expensive. A server that serves cached pages can handle many times more visitors than one that runs PHP for every request.
Why caching changes the answer
On a blog or brochure site, almost every visitor sees the same pages, so nearly everything can be cached. The server mostly hands out ready-made HTML, and a small VPS goes a long way.
A WooCommerce store is different. The cart, checkout and account pages are personal to each shopper, so they cannot be served from a page cache. Every add-to-cart and every checkout runs PHP and queries the database. Stores need more headroom than content sites of the same size.
Sensible starting points
These are starting points, not promises. Your theme, plugins and traffic matter more than any table, but as a rough guide:
| Site | Memory | CPU |
|---|---|---|
| One small blog or brochure site, with caching | 1 GB | 1 vCPU |
| A few small sites, or one busier site | 2 GB | 1–2 vCPU |
| A small WooCommerce store | 2–4 GB | 2 vCPU |
| A busy store, or many client sites on one server | 4–8 GB or more | 2–4 vCPU |
Two more things to keep in mind:
- Disk space: the media library and backups grow over time. Leave plenty of room, and keep backups off the server anyway.
- Disk speed: prefer NVMe or SSD storage. A slow disk makes the database slow no matter how much CPU you have.
Start smaller than you think, then watch
Most VPS providers let you resize a server in a few minutes, usually with a short reboot. That makes it safe to start small and grow when the numbers tell you to, instead of guessing high on day one.
Signs that it is time to upgrade:
- Memory stays close to full, and the server starts using swap. Swap is disk pretending to be memory, and it is far slower.
- CPU sits near 100% at busy times, not just in short spikes.
- Uncached pages get slower under load, such as the admin dashboard, search or checkout.
- The database or PHP gets killed for running out of memory. On Linux, look for “out of memory” messages in the system log.
Signs that you can stay as you are, or even go smaller:
- memory use is comfortably below half,
- CPU is mostly idle outside the odd spike,
- pages stay fast during your busiest hours.
Before you upgrade, check the cheap fixes
More hardware hides problems rather than solving them. Before you pay for a bigger server, check that:
- a page cache is set up and working for anonymous visitors,
- a persistent object cache (such as Redis or Valkey) is in place for busy and logged-in pages,
- no plugin is running heavy jobs on every page load,
- images are a sensible size, not straight from a camera,
- PHP is a current, supported version, since newer versions are usually faster.
Where Rubuz fits
Rubuz sets up WordPress on a VPS you choose, with a page cache and an object cache already tuned, so a small server goes further. You can start with one modest VPS and add servers only when you need them. See pricing for the plans.