If you’ve just built or are about to build a new website for your business, you’ve got a wealth of hosting options to choose from. I wrote this guide so that I could bring my experience in this domain (nearly ten years of professional web application development) to bear on the common and important question of “what web hosting option should I choose?”
What Is Hosting?
If you’re a moderately technical person and already know the answer to the question above, then you may wish to skip to the section below. For all others, I’ll offer a simple and explicit definition of hosting.
All of these documents and media are delivered to your web browser from a program running on a computer that’s been built to operate 24/7/365. Confusingly, both the program that handles the delivery of the site’s pages and the computer on which this program is running are called “servers”. Though you absolutely could take an old computer from your closet and install web server software on it to deliver your website to your users, your internet service provider probably wouldn’t appreciate it (nor does your plan likely have the upload bandwidth to do it at scale) and you probably don’t want the burden when there are practical alternatives.
The term “web hosting” refers to somebody letting you put the documents, images, scripts and, in many cases, database that comprise your website on their machines for some monthly cost. If you’re building a website for your business, you will require hosting. I’ll outline the categories of hosting that you are likely to encounter below, and the characteristic needs that each satisfies, with the goal of helping you make the correct hosting decision.
Web Hosting Breakdown
$6 – $20/mo
A “shared hosting” plan is an arrangement where you receive access to a single folder on a server out of which you are typically allowed to run any number of sites you wish, but with some critical constraints. The most important thing to understand about shared hosting is that your site will likely be occupying the same machine as thousands of other account holders with your hosting company (each with access to their own folder, like yours, out of which they can stage a number of sites). As a consequence, shared hosting offers essentially no guarantees about load on the machine that is serving your website. If somebody else on your shared server just had a blog post hit the homepage of reddit and is getting thousands of hits a second, your site will become slow and possibly inaccessible. On the other hand, it is distinctly possible (perhaps even likely) that you’ll end up on a machine where the overwhelming majority of other sites get negligible traffic.
Even with its downsides, shared hosting is a good place to start with your business’ site, especially if you’re expecting traffic not to exceed a few tens of thousands of visits a day. Many businesses start with shared hosting and never outgrow it. Some do. Given how minimal the expense of shared hosting is, if you’re not sure yet what sort of traffic you’ll be seeing, it’s likely worth giving a try, but I’d recommend you go month-to-month rather than pre-paying for a year (or several). I’ve tried a few shared hosting providers and the one I’ve settled on (for the apps that I keep on shared hosting) is Dreamhost. Other popular shared hosting providers include Bluehost and HostGator. If you’d like to further research providers, the Web Hosting Talk forums are an excellent resource.
Virtual Private Server (VPS)
$20 – $80/mo
Virtual private server (VPS) hosting is an arrangement where, as with shared hosting, you share a physical server with several other of your hosting company’s account holders, but where, unlike with shared hosting, you are given full control of a virtual machine and guaranteed certain computing resources. VPS hosting is well suited to sites getting daily traffic in the hundreds of thousands. One important caveat about using virtual hosting is that it is really meant for people with a strong technical background. In order to get anywhere with it, you’ll need to be decent at working with Linux from the command line or Windows Server, or you’ll need to have ready access to someone who is. I have personally not leveraged VPS hosting for my own projects, but, anecdotally, Linode is one of the most established and trusted companies in this space.
$20 – hundreds of dollars/mo
The term “cloud hosting” is used to refer to the VPS and dedicated offerings of certain providers like Amazon and Rackspace. Cloud hosting can be thought of as a special case of VPS and dedicated hosting where, rather than paying a fixed monthly fee, your resources are metered as you use them and it is relatively easy to set up and shut down VPSes or dedicated servers as you need them. You usually pay a premium for this flexibility. In the case of Amazon’s lower-rung offerings, the premium is minimal. For larger instances types, the price premium that you pay for the flexibility of the cloud relative to a comparable dedicated solution is quite substantial. Cloud hosting really shows its utility when leveraged to build complex web applications with unclear scaling needs. I have found it is generally a poor fit for small business websites compared to other options.
$80 – $500+ / mo
Dedicated hosting is an arrangement where you have access to an entire server with your hosting company. It’s a great fit for very high traffic sites and blogs, but unless you are assured that your business’ site is going to be getting very heavy traffic (in the millions daily) it is not a reasonably place to start. Also, as with VPS hosting, a rather high level of technical proficiency is required to set up and maintain a site on a dedicated server (unless you go with a managed dedicated hosting arrangement — see below).
$29 – $350+ / mo
Managed hosting refers to a VPS or dedicated hosting arrangement where your hosting provider is responsible for keeping your machine up to date and is available to assist you in further degree than the support staff of a comparable unmanaged VPS or dedicated provider. Some managed hosting providers are highly specialized and knowledgable in a particular domain. For instance, the hosting company WP Engine specializes in hosting for WordPress sites. Their server configurations are optimized for this use case, and their support staff is extremely knowledgable and helpful when it comes to troubleshooting and maintaining WordPress installs. Though you’ll pay a high premium for a managed offering, it’s likely a good fit for your business if you’ve outgrown shared hosting but are not comfortable or sufficiently technical to set up and maintain your site on an unmanaged VPS or dedicated server.