How to Choose a Web Host
Download How to Choose a Web Host as a PDF
There is little point in purchasing and modifying a web template or producing a web site if no one is going to see it. To make a site available on the web you need to publish it on a web server where people can access it. A web server is a computer with specific software that allows it to 'serve' web pages to browsers. It may be that you want to use your new web site for a corporate Intranet, in which case you will need to set up your own web server, which is not covered in this tutorial. If you intend to place your site on the web though, you will need a server connected to the Internet. You could create and run your own, but this can be expensive and unless carefully managed can be insecure or simply not up to the task, leaving your visitors with error messages; not good for creating a professional image. There are lots of companies out there who specialise in web hosting and offer a variety of packages and prices to choose from and it is on these I will be focusing as they provide the easiest and most cost affective method of hosting your site.
It is fairly easy to set yourself up as a web host, which means that there are thou-sands of hosting com-panies out there. This makes it difficult to tell a good one from a bad one. You do get what you pay for, but there are plenty of quality hosts out there who offer excellent prices. Take a look at the hosts listed on the hosting page for some suggestions.
You can get dedicated hosting, managed servers, unmanaged servers, reseller accounts and a multitude of other hosting solutions besides. Unless you have your own technicians or are expecting millions of hits a day, the best way forward is shared hosting. Shared hosting is where you rent resources on a host's server along with other account holders. Every account is completely separate and there can be any number of accounts on each server. This method is cost effective and works perfectly well if your host doesn't overload the server with too many accounts. Shared hosting is the mainstay of web hosts and I've never seen one that doesn't offer it (though it's not always called shared hosting, for the majority of hosts their main accounts are shared hosting accounts, whether they say so or not).
Assessing a host is not an exact science. Just because they have a nice web site doesn't mean they're any good. And the speed at which their sales department responds is usually exponentially faster than the support team will the moment you have a problem. Aside from personal recommendations, the best way to confirm if the host is any good is by asking their customers. Ignore the testimonials on the host's site, but if they have a forum, search it for comments and questions, check responses to support queries.If they don't have a forum, visit your favourite search engine and search for 'company name host review' and variations there of until you find something. Visit Web Hosting Chat (www.webhostingchat.com) and Web Hosting Talk (www.webhostingtalk.com) and search their forums for comments about the host. If you still can't find any comments on them, try posting to the Web Hosting Chat or Web Hosting Talk forums asking for feedback.
Obviously people's comments should be taken with a pinch of salt. They could be hosts using other names to talk up their own service, complaints could be from people who were making unreasonable requests, but if you see numerous views from people and the majority are saying the same thing (you can't please everyone) then they're probably right.
If you're getting no joy with reviews and nobody's heard of them, email them and ask if they have contact details for some of their customers (especially the ones who gave testimonials), get in touch with these people and ask about service, support and uptime1. Remember that if the host refuses to give them to you, they may simply be protecting their customer's privacy, or they could be new to the market, so don't assume they're dodgy just because they refuse to give you them. Lastly, you could either: contact them and ask if you can have a free 30 day trial (make sure you can get out when the free trial is up though) or look to see if they have a money back guarantee and take the plunge in the assurance you can get out later.
Looking at whether they offer packages that are right for you, and whether they are offering competitive prices, can help narrow the field of potential hosts.
Pricing is constantly changing, so I won't quote numbers at you, but look around and you'll get a feel for the range out there. If the price is far above that range for a similar package, then the host may be charging over the odds, but you may also be paying for reliability. In the main, you get what you pay for and more expensive hosts are likely to offer guarantees on uptime, and have better servers and facilities. You can only really tell this by looking at their site information, especially if they mention what servers they use and how they house and connect them.
No host should guarantee 100% uptime as they need to take the server down to patch and upgrade software. If they do quote 100% uptime, ask them if they include maintenance time in that and how they achieve it. Most good hosts have uptime in the region of 99% and will be eager to tell you so, contact them if they're site doesn't say.
If the price is significantly below the range you've found, I'd recommend caution. They could be doing a special deal, or trying to beat off competition, or on a sign-up drive, but usually they'll advertise it as a special offer. If their prices aren't a special offer, and are still significantly lower, this usually means that they're a very small outfit, with low/no overheads and could mean poor support and services, as they save money that way. Unless you're fairly confident about how to manage your account, set things up, and are prepared to wait for a few days should something happen to your account, avoid these companies, it's simply not worth the saving.
Having taken care of what to look for in a host, another decision that needs to be made is what features you require in terms of the package you choose. Broadly, hosting packages can be divided into two types: Windows hosting and Linux/Unix hosting. The most popular tends to be Linux/Unix as this offers better value, more features as standard and better security. The only real reason for picking Windows hosting is if you want features like ASP2, ODBC3 and FrontPage server extensions, all of which can be made available under Linux/Unix accounts, though you may need to contact your prospective host to confirm they offer them. Unless you have a good reason, stick with Linux/Unix hosting.
Now we come to the specific features of a package. There are, literally, hundreds of different features available, most of which make little difference unless you are specifically looking for them, and many are offered across the board, just in varying quantities.
This can be known by various guises (server space, storage, disk space, etc) but basically comes down to how much space you'll be allocated on the server's disk drive(s). It's usually measured in megabytes (MB)4 though some will quote gigabytes (GB)5. Due to low disk drive prices, drive space is cheap, so hosts tend to offer large quantities. Unless you're planning on an Amazon-sized venture (in which case you'll have enough money to buy in an expert rather than just this guide) or plan on having large video, audio, images or other files, or vast amounts of email, you won't really need more than 50 MB. The reason for this is simple: most web-related files are very small.
An HTML file consists purely of text, and is rarely over 100 Kilobytes (KB)6, images are supposed to be kept small, but even a large file in JPG format will rarely exceed 300 KB. The web isn't an ideal medium for delivering large files, certainly not until Broadband or DSL services are the norm. As such, files over 1 MB in size should not really be put on a web site, certainly not without warning people about the size of file they will be downloading. You can get an idea for how big your web site is by looking at how much room it takes up on your hard disk. If you're using a web site template, be aware the Photoshop (PSD) files will be far larger than the finished JPGs, so that needs to be allowed for, but if all the HTML files add up to 1 Mb I'll be surprised, unless you've created hundreds of pages or have additional files such as Adobe Acrobat PDFs.
So then, discount any packages with less than 50 Mb web space, but you'll probably find most packages will offer you 100, 250, even 500 MB of web space - as I said, it's cheap.
This is also known by other terms (web transfer, transfer allowance, etc) but boils down to how much can be downloaded from your site by your visitors. Every person who visits your web site downloads a copy of the HTML file and all the images, for every page. Images are usually cached, or stored, on a visitor's machine, so if your pages have the same images on, these won't be downloaded repeatedly. These all take part of your bandwidth allowance.
In fact, anything downloaded from your site takes up part of this allowance and is added to a running total. Bandwidth is measured in either Megabytes (MB) or Gigabytes (GB).
Unless your site is very small, or you are not expecting many visitors, I would not recommend less than 1 GB (1000 MB) of monthly allowance. The reason for this is simple: if your quota runs out, your site will not be available until you buy more or the month changes and the quota is reset. There are exceptions to this, see sidebar warning.
Personally I like to decide if I want to extend my limit, but as long as you check how much it will cost you per Megabyte (MB) or Gigabyte (GB) and you're not going to struggle to meet the possible excess, then you could just let it ride. Most hosts will want to contact you regardless, just to confirm what you want to do when you hit the limit.
They like to confirm this is a legitimate extension caused by demand you're aware of (and you haven't been hacked and are unwittingly hosting illegal downloads or whatever).
Every host will have a range of packages offering various amounts of everything, as they will for bandwidth. The decision really does come down to you. If you're planning on advertising your site often, have a large (in terms of MB) site or just don't want to have to worry, plump for a package with plenty of bandwidth. I would say 1 GB was minimum, 3 GB above average and 5 GB generous. It's always cheaper to have the bandwidth in your account and not regularly go over that limit as you pay a premium. If you are exceeding that limit regularly, you can always upgrade to a bigger account. To give you some idea, only a rough idea mind, if you're home page totalled 300 KB with images (and that's a big example) then you could get roughly 3333 unique visitors to the site each month without overstepping your 1 GB bandwidth limit. Unless you run a national ad campaign, or have a very high demand service, it's unlikely you'll exceed that, but as I said, you can always start small and add more if necessary.
Those are really the main two factors you need to consider, but there are obviously plenty of other features touted on the packages. I will briefly run through those extras that may matter, any terms you don't understand should be explained in the glossary at the back. If you come across a term that I don't explain, simply contact the prospective host and they should be happy to explain.
One thing you absolutely must check with your host, is what they do when you reach your bandwidth limit. There are two scenarios: good hosts will inform you when you get near the limit and ask you want you what to do, if you do not respond, they stop the site at the limit and your visitors will receive a page saying: "This site has exceeded it's bandwidth limit for this month" or words to that effect. Some hosts have been known to let the bandwidth run and run, and then send you a bill after the month has gone for the extra bandwidth. Not bad if the site charges a reasonable sum for additional bandwidth, but some sites charge extortionate amounts when this happens and some people have been hit with demands for Â£1000s for even tiny oversteps, and this has been done by big, reputable companies as well.
Common Gateway Interface was one of the earliest programming concepts that enabled interaction and a number of other features on web pages. It can interface with databases, collect and send feedback forms and do a whole host of other things. It's not a programming language, rather a way of working. CGI scripts are all over the web and some accounts will offer you your own CGI bin to allow you run custom scripts and/or will allow you to install scripts of their own. Useful for feedback forms, but there are now more flexible and easier to use server-side scripting languages out there such as PHP and ASP.
PHP stands for PHP Hypertext Preprocessor (it's a recursive acronym). What that means is that PHP is a server-side scripting language (i.e. it runs on the server, not the visitors computer). This allows you to do all sorts of advanced things similarly to CGI, but is easier to use (in my experience). It allows you to interact with databases, send email, create secure login areas and too much more to list. You code it into an HTML page, rename the page with a .php extension and when the server requests it, the file is parsed (i.e. the PHP code is turned into working instructions) and the finished page presented to the server as standard HTML. PHP is an open standard, and is constantly evolving. See www.php.net for more details.
Active Server Pages are a Microsoft technology that is comparable to PHP, but it's course and development are controlled by Microsoft. It provides many of the same features as PHP and is often preferred on Windows servers, though it can be run on Linux/Unix servers with few limitations.
MySQL/PostgresSQL/MS SQL server
These are all forms of SQL database. MS, or Microsoft, SQL server is usually restricted to Windows servers and is the big brother of Microsoft Access, providing faster functioning, greater flexibility, higher number of simultaneous users, greater security and scalability. Postgres and MySQL are both open source SQL databases, and are completely free to use, they offer the same benefits as MS SQL server (there are arguments over which is better) but they are essentially interchangeable. To access these databases from a web page you need to use a scripting language such as PHP. Usually companies stick these products together, so you usually find PHP and MySQL together and ASP and MSSQL together.
Email related features usually include mailboxes, web mail, email forwarders, auto-replies and lists. The number of these you need is dependent on your relative needs. For example, a company with 10 employees probably won't need 500 mailboxes, while a company with 300 employees may only need one or two to allow feedback from the site. You may access your email through a client such as Outlook, in which case you probably wouldn't use the ability to view mail through a web page that web mail provides. Email forwarders may not be necessary if you're using the POP mailboxes, and you may want to personalise your mail to customers and so not use auto-replies. Don't forget that you will need an Internet connection to access these mail facilities from your business.
Most accounts offer some way to monitor who and how many people are visiting your site, in a general sort of way. Most come with some sort of inbuilt analysing software that will present it in a nice graphical format, or you may wish to download the raw access logs and run some specialist software on them.
These can come in many forms, automatically installed or just a library for you to customise. They can come in different languages like CGI or PHP. The most popular ones include free software for processing form data and emailing it to an address, creating bulletin boards, making a guestbook for your site or adding a visible counter to a page. The range is different for each host and is constantly changing.
Other functions include sub-domains, redirection, multi-domain hosting, backups and more. Backups are a useful feature if the host can tell you how often they're done, so you know how regularly your data will be saved. In the case of a static HTML/Flash site, these backups shouldn't be too much of a bother as most people will keep a local copy on their machine, make changes to their local copy and then upload, so you always have a copy stored off the web server anyway. If you lose this copy, you can then use an FTP client to copy all of the files from the server to your local machine, you may wish to make a habit of this, storing it somewhere else (and maybe writing it to disk or CD). Then you should be completely assured in the case of any accident, and you're not reliant on the host performing his backups. In the case of online databases, it is certainly recommended the host makes backups, but again, most database servers allow you to create your own backup copies through the control panel on your account. Work out how long it could take to re-input all the data and how much it would cost, paying extra for backups may actually be a saving.
Deciding on a host isn't a particularly difficult task, but it helps to know what to look for. Try not to be baffled by all the jargon and the often overwhelming list of features, many of which you don't need and won't use. If you follow the advice above, you should be able to find a reliable host at a very reasonable price and not have to worry about whether your site is experiencing problems, or end up constantly trying to get through to customer support. It is, like many industries, a minefield out there, but by taking the steps I suggest, you should be able to avoid most of the pitfalls and be confident about at least one aspect of your web venture.
- Uptime is the % figure of the time a web server or site is available (i.e. visible to the web surfing public). You should look for around 99% uptime.
- ASP stands for Active Server Pages and is a server-side scripting language specific to Microsoft.
- ODBC stands for Open DataBase Connectivity and is a method for connecting to Microsoft databases such as Access and MS SQL.
- A Megabyte (MB) is a disk space measurement consisting of 1024 Kilobytes or one million bytes.
- A Gigabyte (GB) is a disk space measurement consisting of 1024 Megabytes.
- A Kilobyte (KB) is a disk space measurement consisting of 1024 bytes.
Download How to Choose a Web Host as a PDF