Wednesday, September 22, 2010

What is SEO?

Search Engine Optimisation (or Search Engine Optimization in American English) is a term used to describe the science involved in increasing the quantity and quality of visitors to a web site from search engines through natural or un-paid listing.

Get top ranking in natural search engine listings

The purpose of this website is to deliver a complete set of ethical (white hat), best practice advice for SEO and search engine marketing, with a view to attaining a long term high ranking in the major search engine listings (Google, Yahoo, Bing, et al). With information on everything from technical architecture and content, to link strategy and leveraging social networking, including practical examples and frequently updated articles, this is an SEO one-stop-shop.

Make no mistake, there’s no quick fix that will send your website to the top of all the natural search listings in your chosen field and keep it there. SEO is a process that takes careful planning, thought & maintenance, but the time you invest can reap great rewards. SEO can be a very cost effective marketing technique to complement or even replace paid online advertising (ppc, blind network banner campaigns) and offline advertising.

Key SEO factors

The key constituents involved in SEO are broken down into the following key areas across this website. Follow these principles and your natural search ranking will improve.


An important consideration before building a website is the technical architecture. Search engines don’t care whether you’re using ASP.Net, PHP or Java, or using CMS or blogging software like Sitecore, Umbraco or WordPress. However, they do care about the mark-up and client side code (that is to say HTML/XHTML, css and javascript) that’s produced, so it’s going to make your life a whole lot easier choosing a platform that lends itself to producing SEO friendly web pages. If all of these acronyms make little sense, don’t worry – you don’t need to be a programmer to understand search engine optimisation, but having a little technical knowledge about the web definitely helps and reading through this section (or at least pointing your web developer in this direction) will stand you in good stead.


It can make your life much easier if you use a web publishing platform, such as a Content Management System (CMS) or blogging software to author the pages of your website, but you should be aware of the HTML that it generates. As discussed in the HTML for SEO article on this website, the HTML you use can make a profound difference to the way search engines interpret your website and therefore your ranking.

Most publishing platforms can be configured to produce valid HTML and help you to create better content for SEO, but some systems are a lot better equipped out of the box and a little research can save you a lot of pain further down the line. There are a lot of factors that you will need to consider when choosing a publishing platform, including cost of the software, ease of use, scalability, ease of development, support, hosting, integration with existing systems, built in accessibility and of course, search engine optimisation. No doubt some of these factors will be more important to you than others. If you’re a blogger looking to implement a new solution to get more of an audience for your rants, cost will most likely be a major factor, whilst if you’re a large corporation migrating to a new CMS, ease of use, support and scalability may be overriding factors. Whatever your situation, it would be a mistake to leave SEO out of the equation.

Once you have considered your hosting options, this article will help steer you in the right direction for your circumstances, exploring the features to look out for and recommending some specific solutions, with SEO in mind. Bear in mind your choice of publishing platform may influence your hosting or vice versa depending on your situation, so consider the whole picture before committing.

SEO features to look out for in a CMS

Valid HTML

As described in the HTML section of this website, it’s important for SEO that your website HTML is valid. There are 3 elements to consider here.

The HTML produced by your templates

Any CMS worth its salt should allow you to create 1 or more templates containing the layout for different sections of your website. If you have complete control over the HTML output, you can ensure this is valid and accessible. CMS’s with an automatically generated template that you can’t easily alter should be avoided.

A typical CMS WYSIWYG editorThe HTML output from the text editor

All CMS’s have a text editor of some sort – usually a WYSIWYG editor allowing non-technical users to apply formatting easily. This formatting is of course applied using HTML/CSS, so it can be interpreted by browsers. Some editors are better than others at using valid HTML. In some cases the editor can be selected from a few choices or supplemented with a plug-in. Make sure your CMS either has a good editor out of the box or allows some flexibility. The better editors will have HTML or XHTML validators built in. ‘Paste from Word’ functionality can be quite useful for stripping out Microsoft’s odd looking formatting. Not strictly HTML related, but a spell check is a handy feature for SEO too.

The HTML produced by the framework itself

There’s nothing worse than having your template HTML beautifully crafted, your editor validating user input and then finding that your CMS adds in seemingly random invalid javascript or hidden form inputs.

Content Creation

The more support and suggestions a CMS can give to help you meet HTML and taxonomy SEO best practices on your website, the better. The following are suggestions on some SEO features to look for in a CMS. For more information on how to optimise content in Page Titles and Meta Tags, check out the Page Titles and Meta Tags for SEO article on this website.


When you create a page in a CMS, the content will generally be stored in a database and the page will be rendered dynamically using a server side page based on a template. This means several pages can share the same physical file and an identifier is used so the database can select the content to display. Most modern CMS’s use some form of URL rewriting to ensure the URL is human and search engine friendly, so pages are named something like ‘/seo-cms.html’ rather than ‘/template1.aspx?pageid=123′. In the case of articles, a CMS should use the hierarchy to construct the URL (e.g. ‘/technical-architecture/seo-cms.html’) or in the case of a blog entry, using categories is useful (e.g. ‘/seo/how-to-choose-a-cms-for-seo.html’). This helps search engines organise your site structure and in some cases (Google for example) offer users a handy breadcrumb trail where it displays your page in the listings. You should also have the ability to override the auto-generated URL.

Title Tags

Most CMS’s will automatically create a title tag based on the page title (used for filename/URL), but since search engines (and humans) are most interested in the first 60-70 chars of the title, it’s helpful if your CMS is aware of this and alerts you if you attempt to generate longer titles, allowing you to edit independently of the page title if necessary. Another handy feature is for your CMS to inform you of any duplicate titles, since duplicate page titles will at best split traffic and at worst have search engines penalise you.

Meta Description Tags

Description tags won’t in themselves help search engines find you – they just suggest text for search engines to show as a summary of the page when listed. If not present, the search engine will select some (hopefully) relevant text from the page. For this reason, there’s no particular benefit for this to be generated automatically by a CMS, but you should have the option to enter a tag manually when authoring a page, so you can write a suitable short description.

Meta Keywords Tags

Again, there’s no particular benefit in a CMS selecting random keywords from what’s already in your page content, but it’s handy to have the option to create the necessary list of comma separated keywords through your CMS interface on a per page basis.


Most CMS’s allow you to create internal and external links with a title tag within a WYSIWYG editor. Another handy feature for link building within your site is the facility to auto generate internal links based on content. As ever, there’s no substitute for hand crafting these tactically though.


Since your CMS will hold all of your page names, URLs and structure, it’s well placed to automatically generate an HTML site map for humans and an XML sitemap for search engines.


Media should be stored by the CMS in a single suitably named physical folder (e.g. /images/seo.gif). Since alt attributes are essential for SEO, CMS’s should allow for or even insist that an alt description is entered when images are incorporated into a page.

Automatic Redirects

If a non-existent page is requested (404), it’s good practice to redirect to a sitemap – this should be configurable within the CMS. You should also be able to create a custom error page (500) displaying a friendly error message, mainly for the benefit of users. It doesn’t look very professional if search engines spider error pages, so if your CMS can inform you by email when errors happen so you can attempt to fix before this happens, all the better.

Choosing a platform

The following recommendations (and warnings) may save you some research and development time.


If you’re considering investing in one of the larger CMS’s listed here, the likelihood is, carrying out a couple of weeks of development work to improve SEO will be a drop in the ocean, so these are just listed for information and examples of their class.

Alfresco: Open Source Java based Enterprise CMS platform.
Day: Commercial Java based Enterprise CMS platform.
Autonomy/Interwoven: Commercial Java based Enterprise CMS platform.
Documentum: Commercial Enterprise CMS platform.
Open Text/Vignette: Commercial Java/Oracle based Enterprise CMS platform.



Open Source PHP/MySQL based CMS platform hosted on Linux or Windows. Good for SEO, with friendly, customisable URLs, meta tags. Basic implementation out of the box, but great community support with plugins for internal links, decent text editor & blogging functionality.


Commercial ASP.Net/SQL Server based Enterprise Portal & CMS hosted on Windows. Average for SEO. Not great support out of the box for SEO friendly URLs & internal linking, but EPiSEO module improves this and adds some decent features.

MOSS 2007

Commercial ASP.Net/SQL Server based Enterprise Portal & CMS hosted on Windows. Awful for SEO. Sharepoint creates horribly invalid and inaccessible table based HTML out of the box. CSS Friendly Adapters and Telerik’s Rad Editor plugin can be implemented to resolve these issues, but (from very painful personal experience) be warned it can take a lot of effort to make this work as you would expect it to. SEO friendly URLs are also less than ideal, with MOSS adding ‘/Pages/’ to the front of all pages by default and offering no simple option to remove this.


Open Source Zope/Python based CMS platform hosted on Linux or Windows. Good for SEO. Friendly customisable URLs, auto-generated internal links.Plone SEO, Plone Google Sitemaps and Redirection Tool plugins make this a good CMS for SEO.


Commercial ASP.Net/SQL Server based Enterprise Portal & CMS hosted on Windows. Great for SEO. Powerful SEO module includes Page Information Overview, Text Only View, Keywords, Search Engines, Headings, Images, Links and Meta Tags. Uses Telerik Editor with built in XHTML validation. Decent blog module included.


Open Source PHP/MySQL based CMS platform hosted on Linux or Windows. Good for SEO. Fairly easily customisable Titles, Meta Tags, Image alt attributes, Internal Links, Information Architecture, Textual and XML sitemaps


Open Source PHP/MySQL based CMS platform hosted on Linux or Windows.Good for SEO. Massive community with a few SEO plugins and dedicated Joomla SEO site with plenty of useful tools.

Telerik (Sitefinity)

Commercial ASP.Net/SQL Server based Enterprise Portal & CMS hosted on Windows. Good for SEO. Uses Telerik’s own XHTML validating RAD editor, SEO friendly URLs, easy to implement blogging & community elements.


Open Source ASP.Net/SQL Server based Enterprise Portal & CMS hosted on Windows. Average for SEO. Tiny MCE editor produces mostly valid HTML output, meta tags & image alt tags are encouraged. Easy to customise and tailor HTML manually, but not much in the way of community based SEO plugins.


Open Source PHP/MySQL based Blogging/CMS platform hosted on Linux or Windows. Great for SEO. Plenty of good features out of the box, with customisable URLs, hybrid title, description & keyword meta tags, 100% valid built in HTML templates & very good text editor output. This really comes into its own with community based support and a barrage of SEO helper plugins for everything from auto-generating internal links to social bookmarking.

Domain names

Whether you’re an established offline brand wanting to build a web presence, a start up web-based company, or about to start a new online marketing campaign, there are some common tips for choosing a domain name that will stand you in good stead with the search engines.

Are domain names important for SEO?

In itself, your website domain name is not as important in terms of pure SEO as content, backward linking strategy or HTML considerations. However, it can help or hinder you in terms of the importance search engines attribute to links to your website and of course if you’re considering a new venture with a brand or company name tying in with a domain, it’s a key decision.

Ultimately, your aim should be to strike a balance between a keyword rich relevant name that search engines will like and a (new or existing) memorable brand with positive connatations.

How to pick a suitable domain name

Related to your business – balancing brand and keywords for SEO

A common aim for both SEO and brand is that your company name and domain name should be related to your business. Both humans and search engines will find your domain name more relevant if it contains a reference to your business.

Not enough relevant keywords

For example, if an imaginary car dealer: Bob Stokes decides to start a new business with a supporting website named, it’s not immediately obvious to a human or search engine that it’s about cars. As far as search engines are concerned, it could be about liquorice.

Bear in mind other websites will be linking to yours in most cases using either your company name or the domain itself as the anchor text. It’s this text that search engines will use to attribute relevance to your website, so if it’s apparently unrelated to your website subject matter and area of business, the links to your website will have less value.

Too many keywords

On the other hand, if you’re too descriptive, it can have a negative effect on brand – for example: doesn’t trip off the tongue and sounds rather cheap.

Just right

Try to get a balance, including a brand element and a keyword related to your business. If you’re happy to build your company brand around your name, in this example could be a good choice.

However, if Bob had already started an offline brand built around his company name (Sweet Wheels), then the brand already has value. Unless your brand has global notoriety though, it may be worth adding a relevant keyword so people and search engines that are unfamiliar with it can understand the context. For example,

Keep it short & snappy

At some point it’s very likely you will want to market your domain offline by word of mouth, outdoor advertising, on television, etc. If your website (or business) has a long name, potential customers are less likely to remember it. Keep it as short as you can without losing the meaning or keywords. If you can capture meaning in one or two words (Twitter, Facebook), you’ll give yourself an advantage.

Make it memorable – try to avoid acronyms

Keep in mind an acronym (especially one that can’t be easily pronounced phonetically), even if it’s short may not be memorable. It will also be hard to brand and search. Of course an exception is if you already have a well known brand – like HSBC.

Hyphenated domain names

Hyphens can help humans and search engines separate the keywords in your domain name, so potentially is potentially more helpful than Bear in mind offline advertising though – avoid more than one hyphen or hyphens in unexpected places, as they’ll make a domain name harder to remember.

Importance of TLD (Top Level Domain)

Does it matter if you go for a .com, .net, or a It depends on what your target market is. On the whole, the expense and hassle of purchasing and configuring multiple domains has to be weighed up against the SEO benefits, but the following tips (listed in descending order of importance) may give you a slight boost.

Country specific

If you’re trying to target a particular country, search engines will consider your content more relevant for a user from that country if you have a TLD for that country. So if two sites had the identical content, but someone was searching in the UK, the site with a TLD would be seen as more relevant than a .com or a .net. It’s also likely to be seen by the searcher as more relevant.


If you’re targeting a global audience, you’re marginally better off with a generic TLD like .com or .net. Some studies have shown a slight bias towards a .org TLD, with .com and .net following shortly thereafter, but this is not entirely proven. Since .org is supposed to be for non-profit organisations, if you’re a commercial organisation, there is a chance you could be penalised for being dishonest about your intentions.

Device specific

If you have a mobile specific website, it’s logical to assume that search engines may attribute a better ranking to a .mobi domain name for visitors searching from mobile devices. Since this is a relatively new area, results are somewhat unproven, but it seems like a natural way to help search engines know that your website is better suited for the searcher (in the same way as country specific sites), so it’s worthwhile.

Genre specific

By the same token, if you have a website about television programmes or film, a .tv TLD will most likely give you a slight advantage.

Multiple domains – not multiple sites

It may be useful to have a few variations of your domain in case visitors mistype or don’t quite remember the domain (,, If you do this, advertise a single domain and use permanent (301) redirect from the other domains pointing to the main domain. This will ensure traffic is not split between many domains, allowing you to focus SEO on your main domain. Never create multiple copies of your site on different domains with the same content, but different branding – this is not a good SEO technique and you may be penalised by search engines.

Having multiple domains is actually becoming less important as search engines become more prevalent, because visitors are now more likely to enter what they remember of a business name into a search engine, rather than trying to remember a domain verbatim and typing it directly into the web browser address bar.


No comments: