Quick Answer
Hostinger VPS ($6.49/mo) — fastest WordPress TTFB we measured, because NVMe storage (65K IOPS) turns out to matter more than CPU for WordPress. If you need flexibility to scale RAM independently of CPU, Kamatera is the only provider that lets you do that — useful for WooCommerce stores with large databases but moderate traffic.
Table of Contents
- The Spec Most People Get Wrong
- #1. Hostinger VPS — Where Disk Speed Settled the Argument
- #2. Kamatera — The One That Solved a Problem Nobody Else Could
- #3. DigitalOcean — Where I Learned, and Where I Send Beginners
- #4. Vultr — 47 Seconds From Signup to Live Site
- #5. Linode — A Phone Call at 11 PM Changed My Mind
- What Went Wrong During Testing
- Side-by-Side Numbers
- How I Tested (and Why It Matters)
- FAQ
The Spec Most People Get Wrong
When I started testing VPS for WordPress, I assumed RAM was the thing to optimize for. WordPress forums say get more RAM. Reddit says get more RAM. Every "best VPS for WordPress" article has RAM in bold.
So I set up the same WordPress site — 15 plugins, WooCommerce with 50 products, Astra theme — on two configurations. One had 4GB RAM with standard SSD. The other had 2GB RAM with NVMe storage. Same provider, same datacenter, same everything else.
The 2GB NVMe server was faster. Not marginally — 180ms TTFB versus 280ms. The admin dashboard loaded in 0.9 seconds versus 1.4. WooCommerce checkout processed in 400ms versus 700ms.
That was counterintuitive enough that I repeated the test on a different provider. Same result. WordPress is a disk-bound application disguised as a memory-bound one. Every uncached page load fires database queries, reads theme files, writes sessions. The bottleneck is how fast the disk answers those calls, not how much memory is available to buffer them.
This does not mean RAM is irrelevant. Below 2GB, you start swapping to disk during traffic spikes, and NVMe or not, swap kills performance. But once you are past the swap threshold, faster disk I/O buys you more speed than extra RAM. Here is what actually makes WordPress fast on a VPS:
- Disk I/O (most important): NVMe delivers 3-5x the random IOPS of SATA SSD. I measured a consistent 100ms TTFB gap between the two on identical WordPress installs. That shows up in every Core Web Vitals report Google runs against your site.
- RAM (above the swap line): Each PHP-FPM worker eats 30-60MB. MySQL wants a buffer pool. Redis needs its share. With 15 plugins and WooCommerce, 2GB is the floor. 4GB gives you breathing room. Below that, your checkout page becomes the slowest page on your site every time traffic spikes.
- CPU consistency, not raw speed: PHP processes each request on a single thread. Burstable CPU plans feel fast during testing but choke when 50 visitors show up at once. The burst credits run out exactly when you need them most — during traffic spikes. Dedicated vCPU cores do not have this problem.
- Caching stack: Nginx FastCGI cache plus Redis object cache together reduced database queries by 90% on my test site. Average response time dropped from 350ms to 45ms. The VPS provider does not give you this — you configure it yourself — but the VPS needs enough RAM to run the cache alongside WordPress.
Shared hosting bundles all this into a managed package. On a VPS, you control the stack — which is why a $6 VPS outperforms a $30 shared plan. The tradeoff is setup time, but WordOps can get you from bare server to optimized WordPress in under 10 minutes. If the command line is not your thing, pair any VPS on this list with RunCloud ($8/mo) or CyberPanel (free) and you get a managed-level experience. For fully managed WordPress VPS with cPanel, InMotion Hosting handles the server side entirely.
#1. Hostinger VPS — Where Disk Speed Settled the Argument
I had Hostinger pegged as a budget shared hosting company. Cheap plans, aggressive marketing, the kind of host you recommend to a friend's cousin who wants a blog but does not want to spend money. Putting WordPress on their VPS was more of a due-diligence exercise than an expectation of anything special.
The TTFB came back at 180ms. I re-ran the test. 183ms. Cleared every cache and hit it cold: 210ms. I loaded the wp-admin dashboard with 15 active plugins and it rendered in 0.9 seconds. The WooCommerce checkout page — which on shared hosting had a 1.8-second delay before the payment gateway responded — processed in 400ms.
What explains this is the NVMe storage. Hostinger's VPS uses NVMe drives that push 65,000 read IOPS. In a disk-bound application like WordPress, that raw I/O speed bleeds into everything — database queries, theme file reads, session writes. Every provider on this list uses SSD. Only Hostinger's VPS uses NVMe, and the gap is not subtle.
The KVM 1 plan at $6.49/month comes with 4GB RAM, which is more than the entry plan from every other provider here. That is enough for WordPress, WooCommerce, Redis, and a generous MySQL buffer pool without touching swap. I ran 15 plugins — Yoast, WooCommerce, Wordfence, WPForms, Rank Math, UpdraftPlus, Elementor, Contact Form 7, MonsterInsights, and others — and the server never crossed 60% memory utilization.
What I do not love
No one-click WordPress deployment. You get a bare Ubuntu server and you are on your own. If you have never configured Nginx and PHP-FPM, the AI assistant in hPanel helps, but it is not the same as Vultr's one-click app that gives you a running WordPress site in under a minute. Hostinger also only has 2 US datacenter locations, which limits your options if you need a server near specific users. And the renewal pricing increases — the $6.49 rate is introductory.
#2. Kamatera — The One That Solved a Problem Nobody Else Could
A client had a WooCommerce store with 3,000 products. The product database alone was eating 6GB of MySQL buffer pool. Traffic was moderate — maybe 200 daily visitors — so the CPU barely registered load. What this store needed was a server with 8GB RAM and 1 vCPU. What every other VPS provider sold was 8GB RAM bundled with 4 vCPU cores, at twice the price of what the workload actually required.
Kamatera was the only provider that let me configure exactly 1 vCPU + 8GB RAM + 40GB SSD. The monthly bill came to less than a preset 4GB plan on DigitalOcean, with double the memory. This is the thing about Kamatera that is hard to appreciate until you have a specific, unusual need: every other provider sells you packages. Kamatera sells you resources.
The $100 free trial credit over 30 days is worth using strategically. Here is what I did: spun up a 4 vCPU / 8GB server, migrated the client's WordPress site, ran real traffic through it for a week while monitoring load averages and memory usage, then scaled down to whatever configuration actually kept load average below 1.0. I ended up on a smaller plan than expected because the Intel Xeon CPUs handle PHP-FPM workers more efficiently than most commodity hardware.
The catch
Kamatera's interface looks like it was designed by engineers for engineers. The server configuration screen has more sliders than a mixing board. If "Choose a plan and click deploy" is your comfort level, this is not your provider. The 1GB entry plan is also too tight for WordPress with any plugins — you need to configure at least 2GB to have a usable WordPress install. And there is no one-click WordPress deployment, so budget an hour for initial server setup or pair it with a panel like RunCloud.
#3. DigitalOcean — Where I Learned, and Where I Send Beginners
My first WordPress VPS was a DigitalOcean Droplet. I remember the tutorial — "How To Install WordPress with LEMP on Ubuntu" — because it was the first time someone explained what each command actually did instead of just listing commands to copy-paste. That was four years ago. The tutorial has been updated twelve times since. I still link people to it.
This is DigitalOcean's real competitive advantage for WordPress users: the documentation is a product in itself. Their LEMP stack guide walks you from a blank server to a working WordPress install with Nginx, PHP-FPM, MariaDB, and Let's Encrypt SSL. Every step is explained, every command is contextualized. When that Nginx 502 error hits at midnight — and it will — you want DigitalOcean's community docs on your side. No other provider comes close on this.
The performance numbers are solid but not leading. TTFB came in at 220ms — faster than Vultr and Linode, slower than Hostinger. The $200 free credit over 60 days is the most generous trial on this list, enough to run a $24/mo Droplet for over two months while you learn the stack and figure out what your WordPress site actually needs.
Where it falls short
The $6/mo base plan has only 1GB RAM, which is tight for WordPress once you add WooCommerce or more than 10 plugins. The realistic minimum for most WordPress sites is the $12/mo 2GB plan, which makes DigitalOcean more expensive in practice than the sticker price suggests. Only 2 US datacenter regions (New York and San Francisco) limits your latency optimization options. And there is no phone support or live chat — ticket only — which is fine when you are learning at your own pace but frustrating when your site is down and you need help now.
The managed MySQL database add-on ($15/mo) is worth considering if your WooCommerce store generates enough revenue to justify automated database backups and failover. For most WordPress blogs and small stores, local MariaDB with regular backups is sufficient.
#4. Vultr — 47 Seconds From Signup to Live Site
I timed it. Created a Vultr account, entered payment, selected the $5 plan, picked Chicago datacenter, clicked the one-click WordPress app, and hit Deploy. Forty-seven seconds later I was looking at a fresh WordPress dashboard. Ubuntu, Nginx, PHP-FPM, MariaDB — all configured and running. No SSH session. No package installs. No troubleshooting why PHP 8.2 was not talking to MariaDB.
If you have set up WordPress on a VPS from scratch, you know the first time takes a couple of hours and involves at least three trips to Stack Overflow. Vultr's one-click app removes all of that. It is not the most optimized stack — the default Nginx config could use tuning, and you will want to add FastCGI cache and Redis yourself or layer on ServerPilot — but it works out of the box, and sometimes that is all that matters.
The 9 US datacenter locations are the real differentiator for WordPress SEO. A site served from Dallas loads 35ms faster for Texas visitors than the same site from New York. Multiply that across every page view for visitors across the country, and the cumulative impact on Core Web Vitals is measurable. I run a WordPress site on Vultr's Chicago datacenter specifically because my audience clusters in the Midwest. The built-in DDoS protection has quietly handled two bot attacks I only noticed in the logs days later.
The trade-off
One gigabyte of RAM on the $5 plan. That is the same constraint as DigitalOcean and Linode at this price, but it stings more on Vultr because the one-click app makes everything else so easy that you might not realize your site is struggling until you install a caching plugin and a security scanner and suddenly WordPress is swapping to disk. The $10/mo 2GB plan fixes this, but by then Hostinger's $6.49 for 4GB starts looking like a better deal. Vultr's edge is deployment speed and geographic coverage, not specs per dollar.
#5. Linode (Akamai) — A Phone Call at 11 PM Changed My Mind
Linode was going to be a footnote. The specs are mediocre — 1GB RAM, standard SSD, no one-click WordPress. I had mentally ranked it fifth before even testing it. Then I hit an Nginx 502 error at 11 PM on a Wednesday while migrating a client's WordPress site, and I did something I have never been able to do with any other $5/month VPS provider: I picked up the phone and called.
A human answered in under three minutes. Not a chatbot. Not a "please describe your issue" form. A person who asked me for the output of systemctl status php8.2-fpm, walked me through the pool configuration, and had the site running again while I was still on the call. That experience moved Linode from "just another $5 VPS" to "the provider I recommend for people who are not yet comfortable debugging server issues alone."
The Akamai acquisition added something genuinely useful: CDN integration. Pair Linode with Akamai edge caching and your static assets — images, CSS, JavaScript — serve from 300+ global PoPs. For a WordPress blog, that means the modest origin server specs become largely irrelevant for visitor-facing page loads. The origin server handles dynamic requests (admin, API calls, form submissions) while Akamai handles the heavy lifting. One blog I run this way serves pages in 85ms globally despite the origin server being a $5 Nanode in New Jersey.
Reality check
The 1GB RAM means you have to be deliberate about plugin choices. I run Nginx with only 4 PHP-FPM workers, OPcache enabled, and no object cache because there is not enough memory for Redis alongside everything else. Under those constraints, the server handles 50 concurrent visitors without swapping. But install WooCommerce and that ceiling drops to about 20 visitors before things get uncomfortable. The realistic WordPress minimum is the $12/mo 2GB plan. At that price, you are paying more than Hostinger's $6.49 for 4GB, so Linode's value proposition only makes sense if the phone support and Akamai CDN matter to your situation. For a lot of people, they do.
What Went Wrong During Testing
Three things I did not expect.
WordPress on 1GB RAM with WooCommerce is a time bomb. It works fine during development. It works fine when you are the only visitor. The moment a Google bot crawls 15 pages at once while a real visitor is checking out, the PHP workers exhaust available memory, MySQL gets OOM-killed, and the site goes down hard. This happened on Vultr, Linode, and DigitalOcean — all three have 1GB on their entry plan. The fix is simple (buy 2GB+), but nobody warns you that the site might run perfectly for weeks before this happens. I built a testing scenario specifically to trigger this, and it took less than 3 minutes to crash each server.
OPcache made a bigger difference than I expected. On a stock WordPress install without any page caching, enabling OPcache alone dropped TTFB by 30-40% across every provider. It is free, built into PHP, and requires one line in php.ini. Most WordPress VPS guides bury this under "advanced optimization" when it should be step one. If you do nothing else to your fresh VPS WordPress install, enable OPcache.
The Hostinger AI assistant gave me a bad Nginx config. I asked it to help configure Nginx for WordPress with WooCommerce. The generated config included a try_files directive that served cached pages for logged-in WooCommerce customers, which meant customers were seeing each other's carts. I caught it during testing, but if this had been a live store, it would have been a privacy incident. The AI assistant is useful for basic configuration, not for anything involving user sessions or dynamic content. Always test with logged-in users after any Nginx config change.
Side-by-Side Numbers
| Provider | Price/mo | RAM | Storage | Disk IOPS | WP TTFB | 1-Click WP | Free Trial |
|---|---|---|---|---|---|---|---|
| Hostinger | $6.49 | 4 GB | 50 GB NVMe | 65,000 | 180ms | ✗ | ✗ |
| Kamatera | from $4 | Custom | Custom SSD | 45,000 | 230ms | ✗ | ✓ $100 |
| DigitalOcean | $6.00 | 1 GB | 25 GB SSD | 55,000 | 220ms | ✓ | ✓ $200 |
| Vultr | $5.00 | 1 GB | 25 GB SSD | 50,000 | 240ms | ✓ | ✓ $100 |
| Linode | $5.00 | 1 GB | 25 GB SSD | 48,000 | 260ms | ✗ | ✓ $100 |
TTFB measured with warm Redis cache, WordPress 6.4 + 15 plugins, from US East location. Full methodology below.
How I Tested (and Why It Matters)
Every provider got the same WordPress install. WordPress 6.4 on Ubuntu 22.04, Nginx, PHP 8.2-FPM, MariaDB 10.11, Redis object cache, OPcache enabled. I imported the Theme Unit Test data — 100 posts, 50 pages, sample media library — and installed 15 plugins that real WordPress sites actually run: Yoast, WPForms, WooCommerce (50 products), Wordfence, Rank Math, UpdraftPlus, Elementor, Contact Form 7, WP Super Cache (disabled since Nginx handled caching), MonsterInsights, and five others common in the WordPress ecosystem.
Why 15 plugins? Because the average WordPress site runs 20-30 plugins, and the performance impact scales non-linearly. A benchmark on a clean WordPress install with zero plugins tells you nothing about how your actual site will perform. Adding WooCommerce alone increases page load complexity by 3-4x due to cart session handling, product queries, and checkout AJAX calls. My test environment reflects a real mid-complexity WordPress site, not a clean-room benchmark.
- TTFB: Measured from 3 US locations using curl — cold cache (first request after clearing Redis and OPcache) and warm cache (10th request). The cold-to-warm gap reveals how much work the caching layer does. Hostinger's gap was smallest (210ms cold → 180ms warm), meaning the NVMe speed reduces the penalty for uncached requests.
- Load test: k6 ramping from 0 to 50 concurrent users over 5 minutes. I recorded the inflection point where response times started climbing — the server's practical ceiling under WordPress load. Hostinger maintained sub-300ms through 50 users. Linode started climbing at 35.
- Admin operations: Time to save a 2,000-word post with 8 images, load WooCommerce reports, export a 500-row product CSV. These are the daily operations that make a slow server feel slow. Nobody benchmarks admin dashboard speed, but it is where you spend most of your time.
- Disk I/O under contention: fio random 4K read/write running concurrently with WordPress operation. This simulates what actually happens on a VPS — the database and filesystem competing for disk time. NVMe handles contention dramatically better than SATA SSD because the I/O queue depth is orders of magnitude larger.
The results: Hostinger won every disk-related metric. DigitalOcean took second on raw network speed and API response time. Vultr placed third but won on geographic flexibility. Linode punched above its $5 price on the 50-user load test, handling the full ramp without errors — though response times were 40% higher than Hostinger's. Kamatera's numbers depended entirely on the custom configuration, which is the point.
Frequently Asked Questions
VPS vs shared hosting for WordPress — is VPS worth it?
If your site gets more than 10,000 monthly visitors or runs WooCommerce, yes. In our tests, the same WordPress install loaded 2-3x faster on a $6 VPS than on a $10/month shared plan. The difference is dedicated resources — your PHP workers and MySQL queries are not competing with 200 other sites. The tradeoff is server management, but tools like RunCloud ($8/mo) and CyberPanel (free) reduce that to near-zero.
How much RAM does WordPress need on a VPS?
A single blog with lightweight plugins runs on 1GB. WordPress with 10+ plugins and moderate traffic needs 2GB. WooCommerce with product catalogs needs 4GB+. The math: each PHP-FPM worker uses 30-60MB, MySQL wants a buffer pool, Redis needs its share. On 1GB you get 4-6 PHP workers. On 4GB you get 15-20 workers plus a generous database cache. The moment you see swap usage during traffic spikes, you need more RAM.
What is the best control panel for WordPress on VPS?
RunCloud ($8/mo) is the best overall — automated updates, staging environments, SSL, and clean UI. CyberPanel (free) pairs with LiteSpeed for excellent WordPress caching at no cost. WordOps (free) is command-line only but produces the fastest Nginx + FastCGI cache stack I have tested. ServerPilot ($5/mo) is the simplest option for PHP apps. If budget is the priority, CyberPanel or WordOps both outperform paid alternatives.
Can I migrate my WordPress site to a VPS without downtime?
Yes. The simplest method: install All-in-One WP Migration on both old and new host, export, import. For sites over 500MB, use UpdraftPlus with Google Drive as the transfer medium. For zero-downtime migration, set up the VPS, migrate files with rsync and database with mysqldump, test everything on the VPS IP directly, then switch DNS. The old host serves traffic until DNS propagates (1-24 hours). I have done this 30+ times — the average migration takes about 45 minutes of actual work.
NVMe vs SSD — does it actually matter for WordPress?
More than most people expect. NVMe connects via PCIe instead of SATA, delivering 3-5x faster random read/write speeds. WordPress hits the disk on every uncached page load. In our testing, the same install showed a 100ms TTFB difference between NVMe and SATA SSD. The impact is strongest on dynamic pages — WooCommerce checkout, wp-admin dashboard — where every request triggers multiple database calls. If your site is mostly static blog posts with page caching, the difference shrinks. If you run WooCommerce, it is dramatic.
Is a $5 VPS enough for WordPress?
For a single blog or portfolio with under 10 plugins — yes. Linode and Vultr both offer $5 plans with 1GB RAM that handle WordPress adequately under light traffic. The ceiling is around 50 concurrent visitors before response times climb. For WooCommerce or more than 10 plugins, start at $6-7 for 2-4GB RAM. The sweet spot is Hostinger at $6.49 with 4GB — that extra $1.50 buys three times the memory of a $5 plan elsewhere.
Do I need managed WordPress VPS or unmanaged?
If SSH and Nginx config files are familiar territory, unmanaged gives you more performance per dollar. If "PHP-FPM worker count" means nothing to you, pair an unmanaged VPS with RunCloud ($8/mo) or CyberPanel (free). This middle path — a $5-7 unmanaged VPS plus a panel — gives you managed-level convenience at half the cost of a fully managed provider like Cloudways ($14/mo+). The money you save pays for itself within two months.
What I Would Actually Do
If you are setting up WordPress on a VPS for the first time: start with DigitalOcean's $200 free trial, follow their LEMP tutorial, and learn the stack. Once you understand what each piece does, move to Hostinger at $6.49/mo for the NVMe speed and 4GB RAM — it is the best performance per dollar for WordPress. If you need to deploy today and do not want to learn server management, Vultr's one-click WordPress gets you live in under a minute.