Search Engine Optimization – The ‘Essential’ Tips

Most of the companies I’ve worked for have had someone in charge of ‘Search Engine Optimization’. The idea is to optimize your sites for search engines to help improve rankings for specific terms. But can it be done? And more importantly, how should it be done?

SEO – What is it?

Wikipedia has a rather interesting entry on search engine optimization. It tries to define SEO as this:

Search engine optimization (SEO) is the process of improving the volume or quality of traffic to a web site from search engines via “natural” (“organic” or “algorithmic”) search results. Typically, the earlier a site appears in the search results list, the more visitors it will receive from the search engine. SEO may target different kinds of search, including image search, local search, and industry-specific vertical search engines.

As an Internet marketing strategy, SEO considers how search engines work and what people search for. Optimizing a website primarily involves editing its content and HTML coding to both increase its relevance to specific keywords and to remove barriers to the indexing activities of search engines.

The only problem with this definition, is that it operates on the premise that you can some how do things to your site to make it rank better in search engines. Whilst this may be true, as I’ll explain later, there’s a great deal more to SEO than changing your site.

Simple things to improve search engine rankings

There are a few simple facts that will always go towards improving your search engine rankings. The first of these is probably the most important.

Backlinks – The democracy of SEO

A backlink is a link to your website from a different website. A few years ago, people discovered that Google paid particular interest to ‘backlinks’ in its search rankings, particularly, the text that people use in backlinks.
Here’s an example. If I write Evil as the text for my backlink, to a particular website, and a few other people did, the website would start gaining weight for the search term ‘evil’. If everyone in the world did it, the website may end up ranking at number one for that particular phrase.

This effect is also called ‘Google-Bombing’, which happened a few years ago to George W. Bush. Web developers from around the world teamed up together and wrote backlinks with the text ‘miserable failure’, and linked it to George W. Bush’ official profile. The result was that his page was the number 1 result for that particular phrase, despite the phrase not appearing once on the page (obviously).

Backlinks are responsible for ‘pagerank’ – A factor google uses to determine how ‘important’ a particular page is. So, try to make your pages easy to link to with clean urls, good content, and helpful tools to share the link, but don’t go overboard with this (wait to see the ‘bad’ and ‘ugly’ sections of this post).

400px-pageranks-examplesvg

Pagerank works on a ‘weighted’ system – so sites with lots of pagerank give more pagerank to other sites it links to. So the generally accepted rule is that getting links from high pagerank sites is good. Note the example of how pagerank ‘might’ work in this image.

Pagerank isn’t just transfered between different websites, it’s passed through pages on the same website. So if your homepage has a much higher pagerank than the other pages in your site, consider carefully which pages to link to from your homepage. These will receive the benefits of the pagerank filtering down from your homepage.

Markup – Describing your content accurately

Although backlinks may be one of the best ways to improve your search engine rankings, good markup can help you too.

Consider what your page is actually ‘about’, and what the content on the page represents, and use your tags accordingly. h1, h2, h3, h4 tags should be used to break up your content into sections with a heading for each, with the number of tags related to the ‘weight’ they bring.

So, don’t put all of your content in h2 tags because you think that search engines will think that content is more ‘important’, search engines are clever, and they know if you’re flooding your markup with elements for the sake of improving your ranking.

Clean markup doesn’t just help search engines either! It’s good for improved accessibility and degradation on mobile devices, so all-round, it’s a good idea to practice clean, accurate markup.

Robots – give them some ‘geeky’ stuff to munch on

Search engines use ‘robots’ to crawl through the internet tubes and work out what content is on what websites. Don’t worry, they’re not the robots that ‘kill all humans‘, these are nice robots.

robots
Picture: dancoulter (creative commons)

Whilst robots do a pretty good job of crawling round your websites, you can always give them a hand by providing easy-to-read maps of your site, and telling them where they’re allowed and not allowed to crawl.

The first thing you should include is a ‘robots.txt’ file in the root of your site.
This allows you to disallow certain parts of your site, or certain types of content from showing up in search engines.

A robots.txt file is simple, and looks a bit like this:

User-agent: *
Disallow:

Sitemap: http://www.haughin.com/sitemap.xml.gz

You can find out more about robots.txt here.

This robots.txt file comes from my site, as you can tell, and includes a ‘sitemap’ location. A sitemap is an XML file describing the pages in your site and their importance. There’s lots of ways to create these, but if you’re using wordpress, check out the ‘sitemap plugin‘.

You can find out more about sitemaps here.

Use a single subdomain (or none)

Because of the way DNS (the domain name system) works, search engines treat the following urls as completely different sites:

haughin.com/
www.haughin.com/
lovecheese.haughin.com/

One of the most common mistakes people use is allowing the same content to exist on both haughin.com/ and www.haughin.com/ – This is a really bad idea, since people may start linking to either of these sites, and you could be splitting valuable pagerank across these two domains.

You can fix this easily with a .htaccess rewrite rule:

RewriteCond %{HTTP_HOST} !^www.haughin\.com [NC]
RewriteRule ^(.*) http://www.haughin.com/$1 [R=301,L]

This will force the use of www.haughin.com – with a 301 redirect, so links pointing to haughin.com will be permanently redirect to their pages on www. instead.

Alternatively, you can force the stripping of subdomains:

RewriteCond %{HTTP_HOST} !^haughin\.com [NC]
RewriteRule ^(.*) http://haughin.com/$1 [R=301,L]

Write your content for humans, not search engines

A huge mistake I’ve seen people make, is writing their content specifically for search engines. This usually makes the content unreadable, and visitors get fed up with reading it half way through.
Consider this instead: Well written content is more likely to get backlinks, which are more important than a few text tweaks on your page for robots.