10 SEO Mistakes Developers Often Make

by on April 13, 2010

This is a post taken from a talk I gave recently to the Hull Digital Developer’s Meet-Up.

At Woof we regularly audit existing websites. We often find that web developers (unintentionally) make mistakes that can lead to problems with search engines indexing and ranking their client’s websites.

This post explains what those mistakes are, why they’re made, how to fix them and how to avoid making them in the first place.

Is SEO important anyway?

Or as a good friend of mine recently claimed:

“SEO is a load of bollocks.”

Heh.

My view is that our clients commission us to build websites for them to meet clear business objectives, for themselves and for their customers. Surely anything we can do to help to drive as much traffic as possible to their website (targeted traffic—people that are definitely interested in what the business has to offer) has got to be a good thing.

At the very least, we certainly don’t want to be actively blocking all that potential traffic do we? I think we can all agree on that.

Agreed? Alright! Here are the top 10 mistakes we often see developers making:

1. Poor <title> element

Search engines use the contents of the <title> element to figure out what the page is about.

Some common problems are:

  • No <title> element at all.
  • Same <title> on every page (usually due to the workings of a CMS).
  • Trying to squeeze in every conceivable keyword (ideally, optimise one page for one keyword).
  • <title>s that are way too long (about 64 characters is good, any longer and they lose relevance, plus the rest won’t be shown in search results).
  • Not compelling enough. (This of course is a copywriting issue, but we know many developers who have to wear many hats. Will your <title> make people want to click it in a search engine result?)

2. Poor <h1> element

Our research shows that Google especially places far less importance on the <h1> element these days. However, it’s another important part of the page search engines use to determine what the page is about so it pays to make life as easy for the search engines as you can.

Some common issues are:

  • No <h1> element at all.
  • Same <h1> on every page (usually due to the workings of a CMS, often containing just the site name).
  • Trying to squeeze in every conceivable keyword (ideally, optimise one page for one keyword).

We’ve seen a few large websites that only have 1 page indexed because the Google bots have stopped indexing, thinking each page was the same. Make each one unique and you won’t go far wrong.

3. Incorrect use of other headings

Other HTML headings (such as <h2> and <h3>) are another important element on the page. They give the search engines a clear page structure to follow, plus the text content gives further clues to topic of the page.

We far too often see these either omitted completely or used incorrectly.

Think of headings as like a nested folder structure on your computer. Think that if you’re in the <h1> ‘folder’ (which is the main heading), you’ll want to ‘open’ an <h2> to create different sections on the page. You’ll only really want to open an <h3> if you’re creating a ‘sub-folder’ (or sub-section) of an <h2>.

4. Incorrect use of <meta name="description">

Meta tags don’t carry as much weight for SEO as they once did, but if you’re going to use them it’s important to do it right.

The meta description tag is still an important element that the search engines use to decide what your page is about. Plus the contents are often displayed in search engine results pages.

Some common problems are:

  • No meta description element at all.
  • Same meta description on every page (so search engines think every page is about the same thing).
  • Trying to squeeze every possible keyword in (very bad idea, you dilute the relevance of that page for every one of those keywords)
  • Over-long (a sentence or two is fine)
  • Does not include the main keyword that the page is about.
  • Is not compelling enough to click on when displayed in search results.

5. Incorrect use of <meta name="keywords">

Google have made it clear that they do not use the keywords meta tag in web ranking.

However, it does no harm to use it, and it could be argued that loading it with keywords not included on the page itself could still have your page flagged as a bit spammy.

Our rule of thumb: include a couple of keywords only and make sure that those keywords appear on the actual page too.

6. Duplicate content on your own website

There’s an awful lot of talk about duplicate content in the SEO community, dire warnings of penalties and such-like if Google finds out.

Bleh! Relax. Unless you’re seriously pulling some dodgy techniques to pull the wool over the search engine’s eyes you’ve nothing to worry about. Nobody’s getting penalised for anything on my watch!

However, duplicate content can cause problems with the search engines indexing and ranking your site so it pays to nip duplicate content issues in the bud.

Google have a great page explaining about duplicate content in more detail. For our purposes, you can often unintentionally find yourself with pages on your site that have multiple URLs pointing to it, e.g.

  • http://example.com/about
  • http://example.com/about/about-us
  • http://example.com/about/index.htm

In the above example, all 3 links might take you to the same page of content.

What can you do to avoid this (especially if it’s a quirk of your CMS that leads to this happening)?

  • Be watchful and ensure your CMS doesn’t output different links to the same page. It’s outside the scope of this article to discuss how you might do that in detail.
  • Use the new(ish) rel=canonical ‘hint’ in the <head> of each page (an example here)
  • Re-direct the page in question in an .htaccess file. This must be a ’301′ re-direct (signalling a permanent re-direction).

Here’s an example of the contents of such an .htaccess file:

Redirect 301  /about/about-us  http://www.example.com/about

7. www vs. non-www

www is simply a sub-domain of a website’s main domain. It was used many years ago as a catchy way of showing that the domain name was part of this new-fangled ‘world wide web’ that everyone was talking about.

Unfortunately, it stuck (yes, I do believe unfortunately, but don’t get me started…) Now, many web hosts or domain registrars automatically point the www and non-www version of a domain to the same website.

Problem is, a search engine sees both these versions as 2 different websites and will most likely make a judgement call as to which one to drop from its index. Ouch.

So what to do? Pretty straightforward actually:

  • Be consistent when gaining external links, or internally linking within the site. If you decide to go with www then always use the www version. Or vice versa.
  • Use an .htaccess file on the server to re-direct any www traffic to the non-www version (or vice versa).

Here’s an example which re-directs www to non-www:

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

8. Alternative domains

Often your clients will have a whole heap of domain names (or at least, a .co.uk and a .com version) that all point to their website. You can probably guess that this is bad news too (check Mr. Party Pooper here!)

It’s vital that your clients choose one of these domains to be the main one, and then correctly re-direct (301 permanent) the rest of them to this main one.

What we do is create a new folder on the server—call it anything you like—and arrange for requests for all the other domains to go to that folder.

(You might need to change nameservers on each domain to point to the main one, or change the A record on the domains—this is a bit beyond the scope of this post.)

Then simply pop an .htaccess file in the new folder, containing this rule:

RewriteEngine On
Redirect 301 / http://www.example.co.uk/

This will then correctly re-direct all traffic from the other domains to the main one, in a way that preserves your site’s ranking and authority.

9. Moving or changing URLs

It’s often necessary to change established URLs. It might be as a result of a re-design, or change of CMS, for example.

Problem is, you often find yourself going back to square one in the search engine’s eyes, especially if those pages had external links pointing to them.

Fortunately, the solution is pretty simple:

  1. Use Yahoo Site Explorer to find which pages have external links pointing to them.
  2. Use our old friend .htaccess to re-direct each old URL to its corresponding new location.

Ah yes—an example:

RewriteEngine On
Redirect 301 /main/resources http://www.example.com/articles

10. Host in target country

Especially important if your client’s target market is country-specific, it’s vital to host your client’s website in the same country as its target audience.

Why? Because the search engines use the physical location of the server hosting a website as a huge indicator of who will be interested in the site.

If someone in the UK is searching for a particular product, and Google has a choice of returning a result from a website seemingly based in the UK, it’s far more likely that it will return that result more highly than a similar site that appears to be based in the US.

In our testing, we’ve found that if you host in the US but have a .co.uk domain name, then Google will often use its common sense. However, you’ll still be at a disadvantage to your UK-hosted competitor.

You can set a ‘target country’ in Google Webmaster Tools which Google claim will rectify the situation a little. In our experience, it makes very little difference.

To be 100% sure, make sure you host in the same country as your client’s target audience.

And there we have it.

We’ve covered what we believe are the 10 mistakes web developers often make that can hinder search engine indexing and ranking. Any questions or comments? Let me know below!

{ 8 comments… read them below or add one }

Professional Copywriter April 14, 2010 at 11:45 am

First!

I wish all developers read this before putting a site live!

recommended by @jghull

Ben April 14, 2010 at 11:46 am

I’m not sure how much weight can be given to your opinion when I don’t seem to be able to make your site show up in google even if I tailor my search query to match the keywords your trying to push?

Perhaps its just me.

Dave Foy April 14, 2010 at 11:58 am

@Professional Copywriter – cheers!

@Ben – ‘keywords your trying to push’? I don’t follow. We’re not trying to push any keywords. What makes you think the objective of this site is to be search engine optimised at all? Perhaps it’s just me.

Ben April 14, 2010 at 12:56 pm

@Dave – Sorry, perhaps it was a foolish assumption on my part to think that a company offering “commitment-free search engine marketing that you control” would actually deploy there own techniques on the company website. Obviously, any company offering such services, wouldn’t want there site to be found – why would they?

I applied your advice to determining which keywords to use in the searches, using the contents of your title tags, meta description and from the copy its self. The only time I had your site performing well enough to appear on the front page of googles results was for the search “woof SEO Hull”, and even that put the blog above the main company website.

I’m just saying you should practice what you preach, and if you are, and this is the result, you should look more carefully at what your preaching.

physical therapist April 14, 2010 at 1:13 pm

Pretty nice post. I just stumbled upon your blog and wanted to say that I have really enjoyed browsing your blog posts. In any case I’ll be subscribing to your feed and I hope you write again soon!

Dave Foy April 14, 2010 at 2:18 pm

@Ben – ah I see! Yes, I do understand what you’re saying, apologies.

However, your assumption is incorrect. We truly aren’t interested in our site being found in the search engines for any of the usual ‘SEO’ related keywords, locally focused or otherwise. It’s just not our business model. The main core of our business is spent running successful internal niche marketing campaigns, we just bring those techniques and skills to a select group of clients too.

The competition for all those ‘SEO’ keywords is hugely fierce. I know exactly the amount of work we’d have to undertake in order to appear on the first page for any of them and it’s simply not worth the effort (for OUR business model). Of course our site doesn’t appear: we’ve done precisely no back-linking work whatsoever!

If you look carefully, we only mention the word ‘SEO’ twice on the entire main page and certainly not in any of the important places. That’s a careful and intentional choice – we focus on end benefits, not the process involved. Just because we have no intention of competing with the huge competition for those phrases, it doesn’t mean we don’t know what we’re talking about!

Hope that makes sense, sorry again if I sounded flippant. Thanks for the comment.

Ben April 14, 2010 at 2:55 pm

@Dave – Thanks for taking the time to reply. I appreciate that such things come down do the individual strategy / business modal. It just seemed like a natural way to test your “credentials” as it were, if someone is talking about SEO techniques, it seemed reasonable to check if they were performing on there own site. I could tell from the code that you “know what your doing”, which was why I was a tad surprised to not see the site appear, but it makes sense now, I guess it also highlights the importance of link building and other techniques, as well as having well written keyword focused copy and clean semantic code.

Its certainly an interesting approach to take, I suppose your success is based around on-going successful relationships with a smaller client base, rather than trying to pull new ones in though the search engines themselves. I’m guessing you weighed up the effort vs reward of trying to compete on such phrases and decided it wasn’t worth the hassle.

Dave Foy April 14, 2010 at 4:01 pm

@Ben – a far more eloquent way of putting what I was trying to say! Thanks again for your comment, appreciated.

Leave a Comment

{ 2 trackbacks }

Previous post:

Next post: