Header graphics: Explain that stuff
Custom Search
Sponsored links

You are here: Home page > A-Z index > Web hosting buyer's guide

Screenshot of websites

Web hosting: a buyer's guide

Last updated: July 12, 2009.

You're getting ready to build a website and you've chosen your domain name. You're all set and now you need to buy yourself some hosting. But with literally thousands of different companies offering hosting deals, how do you choose a really good one? Why shouldn't you just pick the cheapest? What exactly do you need to know before you press ahead and commit to a deal? If you've read our basic how to set up a website article, you'll have a pretty good idea what you need to do before you can get your own site up and running. This article, based on about 15 years' experience building and hosting websites, is designed to explain the pitfalls of web hosting in a bit more detail.

Photo: Websites are more complex than they look. Choose a decent hosting company if you want your pages to load quickly and reliably—without breaking your bank.

What is web hosting?

The web pages you look at on your computer's web browser come from servers—different computers all over the world that do nothing all day but send HTML text pages, images, sound files and all the rest on demand. Most of the time you don't need to worry about the behind-the-scences, technical details: when you type search queries into Google.com, you don't care whether it's serving you search results from computers in California, Frankfurt, Dublin, or Mumbai. But when you're running your own site, understanding how websites actually work, behind the scenes, is a bit more important.

When you set up a website, you're going to need a server: a computer designed to hold web pages and send them out to people on demand. But a server is generally a huge, powerful, and expensive machine and, unless you're running a big corporation or a massive e-commerce operation like Amazon.com, you probably won't need a whole server all to yourself. You can get by with what we call a virtual server: effectively, a directory (folder) of your own on a server shared with other people. When you order a hosting package, you're buying the ability to locate some of your files on an ISP's (Internet Service Provider's) server. They'll give you an address where you can find your files, along the lines www.123456.my-internet-service-provider.com. All you need to do then is buy yourself a domain name (like www.example.com) and point it at your hosting address so anyone typing www.example.com into their browser will see the files located at www.123456.my-internet-service-provider.com without knowing that's where they're coming from. Sounds easy enough, so how do you go about it in practice?

Domain names and web hosting are separate things—but you can buy them together

The first thing you need to know is that your hosting package and your domain name are two entirely separate things. You can buy yourself a domain from one company, buy yourself some hosting from another company, and simply link the two things together. If you buy domain name and hosting from the same company, you can generally do it in one of two ways. With some companies, you put in two separate orders (one for the domain name and one for the hosting) and let the company link the two things together for you. With other firms, you order a single, simple hosting package that includes a domain name in the basic charge. The company then sorts out the connection between the domain name and the hosting without your having to worry about it.

How are domain names linked to web hosting packages?

If you've read our article on how the Internet works, you'll know that, behind the scenes, all the computers online at any given time communicate with one another through IP (Internet protocol) addresses (such as 12.34.56.78). When you send an email, it's routed from your computer to its destination using these numbers, just as telephone calls are routed using telephone numbers. Similarly, when you type an address like www.google.com into your browser, your ISP uses IP addresses to connect your machine to Google.com. Being essentially number-processing machines, computers can obviously handle the system of IP addresses very well. But it's hard for humans to remember sequences of eight-digit numbers. So we generally use more memorable names for websites (www.example.com and www.google.com) and email addresses (fred@example.com or whatever) and let our computers figure out which IP addresses they match up to.

The system that matches friendly domain names to numeric IP addresses is called DNS (domain name system). It's effectively a database, but it doesn't live in one place: it's "distributed" across the Internet in a very clever fashion and regularly updates itself so all the Web's computers know where to route traffic destined for example.com, google.com, and every other active domain. When you buy yourself a domain name and a web hosting package, your ISP will add entries to DNS called A records that link the two together. If you ever decide to move your hosting to another company, you'll need to have these DNS entries changed to route your web traffic to the new location. You don't need to know exactly how DNS works, but you do need to be aware of its existence—for reasons we'll come on to later.

What are registrars?

Just to make life a bit more complex, there are two different kinds of company dealing in domain names. The big, important domains (such as .com, .net, .org and so on) are called top-level domains (TLDs) and are managed by a few dozen accredited companies known as registrars (accredited by ICANN, Internet Corporation for Assigned Names and Numbers, the nonprofit, US-based company that manages the Internet-naming system worldwide). Some of the best-known registrars include GoDaddy, Melbourne IT, Network Solutions, Tucows, and VeriSign—though there's a whole list of accredited registrars and many of them operate worldwide. Other companies can sell top-level domain names to you, but they will have to buy the name from a registrar on your behalf. The registrars charge a fee for the registration service that will keep your domain name active for (typically) one year, two years, five years, or ten years, after which you'll have to pay the fee again to renew. Unless you're buying your domain name direct from one of these companies, you generally won't have anything much to do with the registrar—the registration process will be handled entirely by the domain-name company you're using. Typically, the domain-name company will notify you when your domain name is about to expire and check that you wish to renew your domain. If you agree, they pay the registration fee to the registrar and your domain name is renewed.

What is WHOIS?

You own your domain name, not your hosting company or your registrar: they are simply agents working on your behalf. Details of who owns which domains are stored on a huge database called WHOIS. You can check the ownership details for any domain by going to one of the registrar's websites, clicking on WHOIS, and searching for the domain that interests you. (Note that some people choose to withhold their registration details from public view using an option called "domain privacy." This is a simple safeguard against spamming, identity theft, and similarly irritating problems caused by making your details public.) Generally you or your agent (perhaps a web designer working for you) will be listed as the administrative contact for your domain, while your hosting company will be listed as the technical contact. Make sure these details are correct: it's a requirement of the hosting contract with a registrar, but it also means you will be correctly notified if your domain is about to expire or if there are registration problems of other kinds. (Having incorrect email addresses listed can also cause problems when you try to transfer domains.)

Managed hosting or shared hosting?

Web hosting generally falls into two categories called managed web hosting and shared web hosting. Managed hosting means a company manages your entire web-hosting needs on your behalf, sometimes on your own server. Typically, managed hosting is used by large companies and people who need very high website availability. It's expensive (typically the monthly cost is 10-100 times more than shared hosting) and it usually comes with a service-level agreement (SLA) guaranteeing a minimum percentage of availability, maximum amount of downtime, maximum server response time, or whatever other factors you mutually agree to be important.

If you're an individual, a family, or a small company, you're more likely to want shared hosting. Lots of different people all use the same server, so shared hosting is much less expensive. The downside is that if you're sharing the server with other bandwidth-hungry websites, they can affect site's performance. Also, it's unlikely your server will be monitored as closely as a maintained server or have faults corrected as quickly.

If you're not a web-savvy sort of person, you might be buying a complete website package from a web design company. For an all-in-one fee, they'll design your site, manage updates for you, order the domain name, and organize the hosting. In effect, they'll do everything for you—a bit like a managed hosting company—but chances are they will still use a low-cost, shared hosting package to host your site. So you may think you have managed hosting, but your website may actually be on a shared system.

One final complication: some companies offer what they call managed-shared hosting, which is essentially shared hosting with a little bit more technical support for which you pay a proportionally higher fee.

Windows or Linux hosting?

In the simple world of desktop PCs, most people still use Windows-based computers, though machines running the free, open-source Linux system are increasingly common. In the world of Web servers, things are the other way around. Roughly half of all sites are hosted with open-source web-server software called Apache on machines running Linux (or a similar operating system); less than a third of sites run on the proprietary Microsoft IIS (Internet Information Services) server software. When you're buying web hosting, you will need to decide which of these options to choose. Many web hosting companies offer exclusively Linux or Windows hosting, but some do give you a choice. Does it matter? Generally, you can do similar things with both systems, though using different software packages. For example, with an Apache-based system, you can build web pages "on the fly" from databases using a program called PHP; with Microsoft IIS, you use a rival program called ASP. Many people consider Linux and Apache a less expensive and more secure system, but consider and weigh up the arguments for yourself. You'll find volumes written about the pros and cons of Apache and IIS if you Google something like "apache iis comparison".

How to choose a hosting company?

The big problem with choosing hosting is that you don't know how well a given company is going to perform until you try them out. How much downtime are you going to have to suffer? How fast will your pages load? If the system goes down, how quickly will it come back up again? How good are the technical support people at helping with your problems?

Do whatever research you can before you commit yourself. Look out for hosting companies that consistently win awards or garner good recommendations on review sites, but read the posts critically to be sure you're not falling for guff posted by a company's PR department in the name of some dummy customer—and remember the handful of moaning minnies always outnumber the happy customers by thousands to one. Companies that publish full details of their system status and uptime/downtime on their website are generally a much better bet than ones who don't. If you've got a whole series of sites to host, you could always try a small website on a new hosting company and see how they perform. Generally speaking, hosting contracts run for either one month or one year; there's nothing to stop you relocating your hosting to another company by transferring your domain and hosting to another provider (we'll come on to that next), but you may have to pay for the rest of your contract if you leave before the minimum term has expired.

Why should you go for one hosting company rather than another? Ideally, these are the factors you need to know and compare—though not all of them will be easy to discover. I've marked with an asterisk the ones that matter most to me; your needs may be different, though:

* Cost of the package?

Remember that cost is not an absolute but a price you're paying for a certain amount of bandwidth, taking into account availability, and so on.

* How good is availability (uptime/downtime)?

Remember that an impressive-sounding "99% availability" translates to about 7-8 hours of downtime a month, which could be a whole day of downtime. If you opt for a cheap hosting package with relatively poor availability, a whole day's loss of e-commerce orders or advertising revenue can work out very expensive indeed—far more than what you think you're saving on your hosting costs! If you're running a company where people are critically dependent on their email systems, a day's email downtime can be a massive nuisance. How much does it cost you if you have ten people locked out of their email for a day or if you lose a deal because one email can't be sent or received on time?

* How good is performance (server load/page speed)?

This is very difficult to gauge before you commit yourself to hosting and see your site in operation. If the shared servers hosting your site are very heavily loaded, your pages will load slowly—and that can quickly drive customers, advertisers, or readers away. Free and cheap web hosting often suffers from this problem. Ideally, you want hosting that gives you pages loading instantly, every single time. If you can determine which sites are hosted by companies whose hosting you're thinking about ordering you can, in theory, get some idea of their server performance—assuming all their sites are served at the same speed! Google around and see if you can find any existing customers by searching for things like "This site is hosted by blahblahhosting.com." Don't forget that you can always ask the prospective hosting company to name some satisfied customers.

* How much bandwidth do you get?

This is the amount of web traffic (in gigabytes) that your provider will serve up for you each month. This is much more important than disk space and usually determines which level of hosting package you'll need to order with a particular hosting company. Generally, hosting packages start off at 1GB per month and go upward from there to hundreds of gigabytes per month. Some companies will turn off your hosting if you exceed your bandwidth, but most either contact you to make you buy a more expensive hosting package or charge you for the extra bandwidth you use. The latter system is often best, since your bandwidth requirements (though generally always increasing) may vary quite considerably at different times of the year. It's a good idea to know your maximum bandwidth before you order a new hosting package. If you're setting up a new site, always order the minimum package for starters and expand as you need to.

* How good is the technical support?

Depending on how complex your site is, and how technically clued-up you are, this may or may not be important to you. If your sites are a few simple HTML pages and sit quietly on their servers needing little or no human intervention, technical support won't usually be a big issue. If you want to do unusual things with Apache .htaccess files and DNS entries, you may well need tech support people to help you (or advise you) from time to time. Do they know their stuff? Remember there's nothing to stop you checking the quality of tech support by asking them some techie questions before you give them your hosting business. Find out the tech-support phone number from the company's website and ring up with a couple of your favorite tricky questions. How fast do they answer the phone? Do they sound like they know the answers? Are they relatively unqualified junior people who seem to read answers from scripts and "escalate" your problem to unseen people in the background? Do you get the impression your website—and potentially a big part of your livelihood—is going to be in good hands?

* Do you get statistics?

Decent web hosting packages will give you full statistical analysis of your visitors using packages such as AWStats or Webalizer, which is very handy for helping you to grow a site. It's not the end of the world if you don't get statistics, because you can always use javascript counters on your pages and services such as Google Analytics or Statcounter.

Linux or Windows hosting?

Generally, this would be of most concern if you were going to run database applications or if you were worried about Microsoft security issues. But some of us just prefer Linux or Windows because that's what we're used to.

How much disk space?

Buying hosting means buying a certain amount of disk space on a server, so you'll be able to upload so many gigabytes of files. Generally speaking, disk quotas are generous and difficult to exceed so, unless you have unusual requirements (say, you're a photographic library with lots of big hi-res photos to store), this isn't usually an important factor in choosing one hosting provider over another.

Can you host multiple domains?

If you're a web developer and you're running multiple sites, it's much more cost effective to buy one big hosting package and point numerous different domain names at different directories within it than to buy lots of little combined domain-and-hosting packages. Each hosting package will have a bandwidth limit, so you could easily find yourself paying for a huge amount of unused bandwidth. Bear this in mind if you have lost of sites to host. If you anticipate setting up more sites in future, check if you can add extra domains to your hosting package later.

How long is the contract?

Generally either one month or one year.

Any charge for transferring domains away?

In my view, no decent hosting company charges you to transfer a domain away from them, so don't switch your business to any that do. You may regret it if their hosting turns out to be erratic and unreliable.

What else is included?

If you're using PHP or ASP, you'll need database support. Is that included in the price? Can you set up subdomains (http://mysubdomain.example.com) without an extra fee? Can you set up and fiddle about with your own .htaccess file? Can you set up and run whatever CGI scripts you please or are there restrictions?

Another thing worth checking is whether any free software packages come with your hosting package. For example, Linux web hosting provided through a hosting admin interface called cPanel often comes up with a range of easy-to-install add-in packages bundled together into something called Fantastico. If your hosting provider gives you Fantastico for free, you're probably getting web content management software, bulletin boards, shopping carts, and other software as part of your basic hosting deal. But since most of these packages are open-source anyway, that may not be the benefit it appears. And if your Fantastico system contains out-of-date packages without the latest bug fixes and security updates (as some of them do), it's positively a disbenefit.

What about email?

Apart from hosting a website, a domain name gives you the ability to receive emails addressed to users at that domain. Exactly how you set up the email for a domain depends on your hosting company, but typically they will set up extra DNS entries for your domain known as MX (Mail Exchange) records to do one of three things. They can arrange for emails addressed to your domain to redirect automatically to some other email address or domain. Or they can route emails for your domain into their own POP (Post-Office-Protocol) mail server, allowing you to read the emails by using an ordinary email program (like Thunderbird or Outlook Express) and maybe a web-based email system as well. Or they'll store your emails on the same server as your web space, again, allowing you to read them using an ordinary email program. Generally, shared web hosting packages allow you a fixed number of (typically 10-100) email accounts (with separate inboxes that can store mails till you read them) and an unlimited number of email aliases (where emails for users at your domain are simply forwarded on to existing web addresses at other domains).

Growing your domain

Most hosting providers offer a range of different shared hosting packages providing an increasing amount of bandwidth, disk space, and other benefits for a range of monthly fees. As your website becomes more popular, simply ask to move to a bigger package. But be warned: some companies price their basic packages very cheaply to "hook you in" and charge you proportionally more for bigger packages later on. Keep an eye on what other hosting companies are charging, and if you're not happy you're getting a good deal think about transfering your domain and hosting elsewhere.

How to transfer a domain

Even if you find a good hosting company, your needs may change in time as your website becomes more popular or your business grows. Eventually, you may decide you want to move your site to another hosting provider. Generally speaking, you'll transfer both the domain name and the hosting package to another company at the same time, though it may be possible just to transfer the hosting part if you prefer. Transferring a domain can be a bureaucratic process, but you should be able to switch over completely from one provider to another in less a couple of weeks. If both companies are cooperative and everything goes to plan, you should be able to make a totally seamless switchover—so you lose no traffic and your users are completely unaware that anything has changed.

Here's how to transfer a domain:

  1. Make sure the WHOIS information for your domain is up-to-date before you initiate a transfer. In particular, make sure you (or your trusted agent) are listed correctly as the administrative contact with the correct email address.
  2. You can transfer a domain at any time, but DO NOT wait until the last few days before a domain is about to expire with your current provider before starting the transfer. For a seamless switchover, you need to have both your old and new web hosting packages working simultaneously for a period of about a week (for reasons that will become clear in a moment). So start the transfer process maybe 2-3 weeks before your domain expires. If you wait till the last moment, your old hosting contract may expire before you can fully switch all your traffic over and, if that happens, you're losing traffic and possibly orders or advertising revenue. Some of your users may see a "Website not found" or "Domain parked" message for several days. There's a very real risk people will delete links to your site (if they think it's become inactive) and you could disappear from search engines or lose some of your page ranking.
  3. If you're transferring a top-level domain, find out the name of the registrar your new company will use. If it's a different registrar than your current company is using, you will need to go through a process of changing the registrars, which typically takes up to a week. First, you contact your current hosting provider, ask for the domain to be unlocked, and request what is called an authorization code (or "auth code"). Next you put in an order for the domain with your new provider, specify that you already own the domain, and supply the auth code. The exact process varies according to the registrars involved but, usually, the current registrar will email the domain's administrative contact (usually you) requesting permission to transfer the domain. If permission is granted, the transfer proceeds from one registrar to the other, but usually not for 3-5 days. If your new and current hosting companies use the same registrar, you don't need an "auth code." Instead, you will need to request a registry key from your current company and supply it to your new company.
  4. If you've not already done so, order your web hosting package from the new company. Upload all your files and make sure everything is in place. At this point, you have two copies of your website being hosted—one on the old hosting provider (and still being pointed to by your domain's DNS settings) and one on the new hosting system (not being pointed to by anything, but probably accessible through a placeholder URL such as www.123456.my-internet-service-provider.com. If you know the placeholder URL, zip through your website and make sure everything's working OK. Have you uploaded all files correctly? Is everything as it should be?
  5. The new registrar should copy across the current DNS and WHOIS settings for your domain so, even though your new files are in place on the new system, your site is still being "served up" from your old hosting provider. Contact the tech-support people who manage DNS for your new company and ask them to switch the DNS settings over to point your domain to the files on their system (that is, point your domain to www.123456.my-internet-service-provider.com).
  6. Because of the decentralized way DNS works, changes to DNS settings take time to come into effect across the entire Internet. Typically, it will take about 2-3 days (sometimes longer) for the entire Internet to be using new DNS settings after they've been changed. During this time, you must keep both your hosting packages active (your old one and your new one) if you want the transfer to appear seamless. You can find out far how the DNS changes have "propagated" using whatsmydns and a variety of other, web-based DNS tools. Remember that what you see in your browser is not necessarily what other people are seeing elsewhere: your site may be serving up from the old provider for you, but happily serving from the new site for other people—and vice-versa. Just because you can see the files from your new host, doesn't mean everyone else can. So be patient, try not to fret, and leave both the old and new hosting packages in place.
  7. After a week or so, it should be safe to cancel your old hosting package. You can either delete your files or leave them in place to catch any strangling traffic that may still be routing to your old address.

If you have difficulties moving hosting company, there are usually ways of initiating a transfer direct through a registrar at an extra cost. Generally speaking, approach your hosting company first and, if that proves problematic, contact your registrar afterward. Look at the registrar's website under "dispute resolution" (or similar wording) for details of what to do next.

Sponsored links

Text copyright © Chris Woodford 2009. All rights reserved.

All unattributed images (those created by Explainthatstuff.com) are licensed under a Creative Commons License.
Please kindly take a look at our copyright notes before using material from this website.
Product photos are included for illustrative purposes only.
They do not represent any endorsement by us of the products shown
or any endorsement by the product manufacturers of this website or anything we say in the text.

Please help our chosen good cause! WaterAid brings clean water and sanitation to people in 17 developing countries Water Aid logo

Share this page

Help other people find this page by bookmarking it with:

Delicious  Digg  reddit   Facebook   StumbleUpon   Google   Twitter   Email it to a friend

Link to this page

If you'd like to link to this page, thank you! Here's some code you can cut and paste:

Can't find what you want? Search the Web here!

Custom Search