Search Engine Optimization (SEO) Tips

I often get asked about Search Engine Optimization (SEO) because I run a search engine.  The following is currently my best advice with regards to SEO.  Just to be clear, I'm talking about Google here (and by extension Yahoo, Live, etc.) and not Duck Duck Go (my search engine), which has different optimization parameters.

I assume you already know the basics, e.g. don't have duplicate content, have good looking URLs and page titles, etc.  If you don't know the basics, read Google's SEO Starter Guide first.

  1. External link (anchor) text is the most important factor.  Google often repeats that they use more than 200 ranking factors.  I'm not disputing that :).  I think they repeat this, however, so that people won't concentrate on the few factors that really matter more than all the others.  In my experience, external link text matters way more than anything else.  That is, the actual words in the links back to your sites and pages.  

  2. If you get link text right, link back sites' pagerank matter way less.  Usual SEO advice is to contentrate on link backs from high pagerank sources.  If you want to improve your overall rankings I think this is good general advice because pageank is logarithmic, such that a link from a higher pagerank site will have more of an effect than one from a lower pagerank site than you might otherwise think.  

    However, higher pagerank links are much harder to get than lower pagerank links.  And what is often missed is that if you can get even a few lower pageank sites to link back to you using the key phrases you want to rank for, you can rank highly on those search terms even with little or no high pagerank link backs.  

  3. Widgets are great strategies.  As a result of the above, widgets are great strategies because they help you get link-acks from a variety of sites, often on their front pages and often on multiple pages within the sites.  That is, it doesn't matter if they are all low pagerank sites because you can control the link text.  But be careful.  Google is all over so-called "widget bait."  

    If you do a widget, don't forget you need that static link in it.  That is, it can't all be JavaScript.

  4. Don't guess search term volume.  Use Google's Keyword & Trends tools.  

  5. Select terms that convert.  Ideally, don't guess here either.  Use Adwords or another PPC service to test out which terms convert best, and then try to get rankings for them.

  6. Don't bother if you can't get in the top 10.  People usually revise their search terms instead of clicking to page 2.  So if you don't think you can get in the top 10, try something else, ideally something more specific that would convert better anyway.  A good thing to do is to add one more word to the general term, so if you end up ranking well for the specific term you are helping your rankings for the more general one as well.  Then if it turns out the specific one was easy (you quickly become #1), you've already gone part way on the general one.

  7. Don't pay any for any general SEO service.  Not only do you not need to (because it isn't that hard) but you don't really know what you're getting and as a result you will risk getting blacklisted.  The worst is signing up for paid link services.  Note I'm not saying don't pay anyone for SEO, because if you need basic help, a consult from someone in the know might be helpful to, for example, tell you how to re-layout your site and to explain this post to you :).

  8. Beware of nofollow links.  Nofollow links are links with a special attribute that tell search engines to ignore them.  To check a link, view the source of that page in your Web browser and look for rel=nofollow in it.  You don't want to waste time getting links on sites that use this attribute.  The canonical examples are popular blogs and Wikipedia.  Don't waste your time submitting comments and editing Wikipedia articles with your links because it won't help you.

  9. Don't waste your time with Google Sitemaps.  Google encourages you to submit sitemaps of your sites.  In theory this seems great because you can specify site priority and refresh time.  In practice, I've done this repeatedly and seen no change in rankings.

  10. Don't ignore the long-tail. People often concentrate on getting rankings for specific keywords.  But I've been just as successful building lots of pages with unique content that end up ranking high on the most random things.  Often such pages will be the only things that come up.  

    How do you do this? First, make sure you have a static site.  Sometimes startups don't.  Second, look at all the content you can produce or have produced.  Can you combine it in interesting ways that people would find useful?  For example, at Duck Duck Go we have category pages

  11. Make as flat a site hierarchy as possible.  Pagerank seems to flow logarithmicly from a homepage to its internal pages.  So if you have pages you want ranked highly, either you need links back to them directly or have them linked directly from your homepage.  And if you take my long-tail advice and make a lot of pages, make a directory of them as flat as possible.  For example, if you have 10,000 pages, make 100 pages with 100 links and link to those 100 right off your homepage.  Ideally those 100 links would make sense, e.g. categories or alphabetical or something (and not just random).

  12. Use directories instead of subdomains.  For example, domain/blog instead of blog.domain.

  13. Less is more.  Ranking is distributed across your site, so less pages, less links on them, and less text on them will concentrate your ranking potential on what is left.

  14. Don't do anything black hat.  You will get caught, you will not pass go, etc.

Update: additional comments can be found here.

Update2: also see my talk on SEO from the following year here.


If you have comments, hit me up on Twitter.
I'm the Founder & CEO of DuckDuckGo, the search engine that doesn't track you. I'm also the co-author of Traction, the book that helps you get customer growth. More about me.