If your WordPress site is too slow, forget about caching plugins. Get a new host instead. And probably pay less than you were before.
Note 1 (Full disclosure): I make money when you buy hosting through these links. However, this is not the primary reason I am sharing this information. I am a WordPress training professional. I want you to be informed.
Note 2: the table below (in section #3) summarizes the advantages and disadvantages of shared hosts versus VPS hosts. If you are in a hurry, skip the detailed analysis and go directly to the conclusions.
#1 – Understand the strengths and limitations of shared-server (cPanel-based) hosting
For many years I ran a hosting business based on so-called “shared-server hosting” under the cPanel management system. “Shared hosting” is either a dedicated machine, or else a reseller plan running cPanel. It is quite cheap to buy shared-server, cPanel based reseller hosting plans, however the quality is.. well, read on.
In terms of my hosting company, when it worked, it worked great. My customers loved it, mostly because I ran dedicated servers and kept the server density low (limited number of customers per server) compared to the big-name shared-hosts that pack several thousand accounts on one server (@ $10/mth per customer on average — do the math. Hosting is very profitable).
When it didn’t work, however, it was a nightmare. Periodically (every few years, typically) the servers would get sluggish and would need to be migrated, meaning all the accounts would have to be moved to a different server. Migrations were never easy for me and sometimes sites were down for days during the migration. At times like this, I wondered whether I had any business running a hosting company. Your job as a web host, is to keep your sites up all the time, right? Unfortunately, what I am describing is quite common, even among big-name shared hosts. A web designer friend of mine recently had all of his Bluehost reseller sites go down for 5 days. No kidding.
In addition, sites would frequently get infected with malware and would start sending spam under the main server IP, resulting in undeliverable emails for all my customers, hassles for me in cleaning the sites, and a continuous battle with the server blacklisting sites to get my server IP unblocked.
And finally, shared servers are inherently unstable because they try to be “all things to all people”, and in the process of doing that, something often breaks. On a shared server, all the applications share the same O/S, software, and RAM, which makes the system fragile, and also slow (depending on the server density, like I say). If your application doesn’t get much traffic, it will get swapped-out of RAM and into disk, which means your next visitor will get 7-10 second page load times. And since you are sharing resources with the other accounts, your site will be slow at high-utilization times. And so forth. Shared hosting CAN work if properly managed, but usually it isn’t.
I am going to summarize the main point of this article in the table below. But let me cut to the chase: Shared hosting is no longer the technology of choice for web hosting, except in certain specific situations as told below. New technologies are faster and more secure, and often no more expensive.
This applies as well, for the most part, to the high-end managed WordPress hosts such as WP Engine. What you are buying from the high-end hosts, essentially, is peace of mind. A good cheap VPS will equal or outperform most any high-end host. Note that a high-end host may still be a good investment depending on your need for application support and stability. I have no judgment, I just want you to be aware of the facts here.
#2 Understanding VPS Hosting (Not-managed, Managed, and Shared)
The difference between shared-server hosting and VPS hosting, is a process called “virtualization”. A VPS server is like slicing up the resources of a large server (meaning, CPU cores and RAM) in a way that the purchased resources are used by you (along with your anonymous web visitors), and you alone. Every VPS instance has its own operating system, virtual “boot disk”, etc. Theoretically, this gives you full control of your server; but practically speaking, you will not be messing with the system files.
How is this advantageous?
- First and obviously, VPS hosting is more stable because it doesn’t share resources, boot-disks or software with the other 1000+ accounts on the server. It’s also typically more efficient as the web server and O/S software is optimized for your specific application. For instance: shared hosts typically run Apache web server, while VPS servers run Nginx which is many times faster
- Speed increases usually by a factor of 2-3 times. (One of my clients was running 12 second page load on Bluehost, and we got her down to 1 second, although this did require some cleaning up of unnecessary plugins).
- Cost is the same or less. The cheapest Not-Managed VPS (1 core, 1GB RAM) is only $5/mth at Digital Ocean or Linode (both reputable providers, and honest in terms of the service they advertise). You will probably, however, want a Managed VPS that starts at $10/mth for the same configuration (more on this below). Furthermore, pricing is per minute, not-confusing (almost all shared hosts provide deep discounts for the first payment term, then hit you hard when you renew), and with no contracts.
- Even the cheapest managed VPS with Nginx ($10/mth) — that would be 1 core, 1GB RAM — can still handle roughly 50k monthly sessions, maybe more. This is more capacity than 99% of small business websites need. You will get the same performance as WP Engine’s Starter plan for 1/3 of the price. And you will grow it (if necessary) at 10-20% of the price of WP Engine.
- Unlike a shared host, a VPS host can very easily be scaled up. Furthermore, a VPS host will never shut down your account for spam or for over-usage (this happened to me once, Hostgator shut down my account right in the middle of a major affiliate promotion. I lost thousands of dollars in potential sales. In comparison, the worst that will happen with a VPS is that your visitors will get a “service unavailable”, or else the site will be very slow)
- Since VPS instances have unique IP’s, the problem of blacklisted IP’s goes away. For domain-specific emails (i.e. [email protected]) You WILL need to buy an external email service (ZohoMail is just $1/mth, Google GSuite is $6/mth), but this is probably something you would want to do anyway as shared-server email is really not great, specifically in terms of spam filtering. Outgoing email service from your website (i.e. order confirmation or password-reset emails) are typically NOT activated by default, however on my managed VPS platform of choice, which is Cloudways, this is very easy and cheap to setup using a service called ElasticMail
So when would you WANT to host on a traditional shared host?
- The cPanel system is quite powerful. It can handle email, subdomains, web statistics, multiple app installation through Softaculous, cron jobs, backups, etc Plus, almost any kind of software is already installed (or can be installed) — for instance I still use a shared host for the WHMCS hosting management system I use as my VPS lacks the ionCube loader (and I don’t want to mess with the O/S on my VPS, even though I theoretically could).
- Most VPS’s don’t provide any application support (i.e. support for your WordPress installation). You will need a minimum level of experience and skill with WordPress.
This is generally not a big problem as, in a worst-case scenario it is very easy to restore from a backup. This could be a problem, however, if your site gets hacked, starts behaving strangely, and you don’t have an old enough back-up (typically backups get overwritten every 7 days). Another situation that can arise, is with an active ecommerce site where restoring from an old backup is not an option as it would destroy customer order history.
Note: any active WordPress site needs a frequent off-site backup strategy. I like UpdraftPlus with Amazon S3, which works great and is (almost) free. - Some VPS’s (including Amazon EC2) don’t support multiple applications (i.e. multiple websites), at least not easily. This is not a problem at all with Cloudways, multiple-application support is built-in and works great.
Difference between Not-Managed, Managed VPS, and “Shared VPS” hosting
Here is another important distinction: you will need a good Managed VPS hosting provider, NOT an unmanaged one (like Digital Ocean or Amazon EC2). The reason: not-managed providers are only responsible for the hardware (not the O/S or the application). Managed providers will make sure your server is ticking, fix any intrusions, and keep the software updated and security-patched to the latest versions. They may also, in some cases, provide limited application support.
Finally, there is the third option which I am calling “Shared VPS“. This is when you share a single VPS instance with a limited number of other customers. It is the cheapest high-performance hosting available, and available exclusively from WP Academy.
#3 – Shared hosting vs. VPS vs. “Shared VPS” — which is best? Conclusions
The table below will help you choose between a reputable cPanel-based Shared Host, a Managed VPS, and a WP Academy Shared VPS.
cPanel Shared Hosting vs. VPS - Which is best?
cPanel Shared Hosting | Managed VPS Hosting | WP Academy "Shared VPS" Hosting | |
---|---|---|---|
Maximum Sites | 1 site on starter plan(s) | Unlimited | 1 site |
WordPress Support | Depending on the host. For most inexpensive shared hosts, application support is limited to getting your site back up if it goes down altogether. Site optimization or bug-fixing is not included. | VPS hosts officially do not provide application support, although some will help you if your application goes down. You can also easily restore site from backup | "Shared VPS" means that you share a single VPS instance with a small number of other customers. Limited application support is provided by WP Academy. However, we can, for a modest per-incident fee, diagnose or optimize your site to give you < 1 second page loads. No other inexpensive host provides this service |
Server Support | |||
Performance | Typically 1-3 second page load times (but could be much more) | Typically 0.5 to 1 second page load times | The performance is practically the same as regular VPS (0.5 to 1 second page loads) |
Stability & Security | Depending on the host. All big-name shared hosts have been known to go down for days at a time, and support quality is very variable. GreenGeeks appears to be a notch above, however. | See above. VPS servers tend to be rock-stable and fairly secure | Same as a private VPS |
Cost | $10/mth Green Geeks (One site on starter plan. Deep discounts on first-term, bringing the price down to $120 for the first 3 years, but renewing at $360) Alternative recommended cPanel host: Siteground | $10/mth - Cloudways (Unlimited sites) | $42/yr - WP Academy(first site) $20/yr - WP Academy (additional sites) Includes site transfer and site optimization, which is a manual process. Limited to ~ 25,000 monthly sessions. If you exceed your capacity, however, we will move you to a private VPS and you still only pay $10/mth. |
Conclusion
There is no “best answer” to all hosting needs. However, if you are reasonably competent in WordPress and own a mission-critical website (a site that you would hate to go down, or one where performance is very important), you would be foolish not to consider either VPS Hosting or Shared VPS Hosting.
Caution: not all VPS servers are created equal. Some use borderline-deceptive advertising, including offering “vCPU’s” (or Virtual CPU’s) that are 1/2 of a full core. Read this article for a sobering perspective on the VPS hosting business, by a pro in the field.