Since creating Worth1000, (a terrible example of SEO), I have learned a lot about what works best in getting search engines to crawl and understand what your page is about. I have since created Plime, which is a great example of an optimized page. In this post, I’ll outline the theory I used in laying out my site to improve it’s readability by search engines.
This article is not about ranking higher in search enginges. That’s the next step. It’s about structuring your content in such a way that search engines will understand it and index it better.
Before I begin let me just explain the logic here. Think of a search engine as a stupid computer program, and understand that the program is programmed to read the data on your website in the form of a semantic hierarchy. The html on your site is really designed for people to read, so the trick is to also design it so that search engines can read it as well, in a way that doesn’t interfere with what people see. A well designed SEO page will not effect your page design AT ALL.
By semantic hierarchy I mean the program is looking for the following items, in this order to determine a page’s content:
- Domain name
- Page’s Title
- Page’s URL structure (excluding domain)
- Page’s Headline
- Page’s Subheadline
- Page’s Sub-subheadline
- Page’s content
- Bolded and italicized words within the content
- Links within your page, linking to internal pages (breadcrumb trails,left navigation and right article list)
- Links within your page, linking to external websites
I’ll go through each section with some tips on how to improve it and explain the logic for search engines and people, where the change will effect what people see.
If someone owns “plime-trees-are-delicious.com” and you start an article called “plime trees are delicious” they might get higher in search engine results for “plime trees are delicious” if anyone links to them, because domain names are the most important element in most search engines (since they are not editable, unlike html).
Always include your site’s name (like Worth1000.com) and the actual headline for the page you are at. (Worth1000.com | Out of Bounds Contest) in your title tags. Search engines give this a lot of emphasis.
Page’s URL structure
If all of your pages have dynamic extentions (like .asp or .php) and use querystrings to point you to different dynamic articles you’re making a mistake.
An example of a bad URL would be: http://www.worth1000.com/contest.asp?contest_id=1163
This is bad for two easons:
- PageRank effects articles at the document level, which means querystrings are excluded (so you won’t develop separate pageranks for different articles… all will share the same rank).
- Some search engines and stat logs cut off the querystring whenindexing your content. Having a link in someone’s stat logs or in a non-Google engine that point to “http://www.worth1000.com/contests.asp” is useless and is a wasted opportunity to get more visitors and pagerank.
Structure your URLS like this instead:
All that’s important in there is the number 1163, but you’re already getting some important extra keywords in there that will help with SEO.
I don’t even need to change my code. I can simply use a program called modrewrite which will redirect that URL to my actual page: http://www.worth1000.com/contests.asp?contest_id=1163 (the rest of the stuff is ignored by modrewrite, so I can use anything there). Search
engines will see it as a static page, even though it\’s exactly the same as it is now.
This also has the added bonus of users who link to this URL in forums that automatically parse URLS will now have some keywords as a part of the URL itself. This kind of clean url will definitely not annoy users either.
Page’s Heading and Subheadings
Don’t use fonts and CSS to make a headline appear big. Wrap it in <H1> tags instead.
A note to SEO folks: This tag is not as deprecated as you might think. <h1> is still semantically telling the search engine “this is the most important headline on this page” <h2> are less important for subheadlines, but if you have subheadlines n an article, using them can only help the spider understand how your content is structured and that is a good thing.
So long as you style the <h1> in the CSS the same way you have been making larger headlines in the past, users won’t visually see a difference at all.
Best of all about this tip is that very few sites make use of it.
This is your keyword text. Just make sure you have alt and title tags for all images, so search engines can read them. I’d
use <h3> for all captions under the images, since images (and the captions that explain them are usually important to the article. Search engines place minor emphasis on words that are put in between bold and italic tags in your content. Very minor emphasis, but just worth noting that if an article is about a certain celebrity for instance, and there name appears multiple times, bold each appearance of the same and it will help the spider think that celebrity is the focus of
the page. Don’t keyword stock though. Search engines will notice if the same words are appearing too often (called keyword density) and it will annoy your users in any case, so don’t try to stuff your page with redundant keywords. Always write your articles for your users.
Links within your page
You need to nake your navigation load before the page’s content so that spiders can access the rest of your site. You can use CSS to make this not effect your positioning of the navigation. This will help your links get indexed better. When a spider visits your site it sees the page as one huge block of html code, no matter how it’s laid out, so where in this block certain elements are placed is very important. Remember that using CSS you can have an element display visually to users first on the page, even if it’s the last thing to load in the html text block for spiders. If those links are all at the bottom of the text it interprets it as not important, and in some cases may not even download enough of the page to see them (some search engines only download the first 50,000 bytes of html).
Link to your sitemap prominently on your homepage if you have one. If you don’t then make one. This is really for the search engines more than the people, but it should even be helpful for those people who do see
All links in your page should include title tags. <a href=”http://www.mysite.com/blog/” title=”blog”>blog</a>.
Links outside of your page
When linking to any content that isn’t related to your site (let’s say ou’re plugging a blog article about tech you enjoyed, but your site is about catfood), always add “rel=nofollow” to the hyperlink or else Google follows it and gives some of your outgoing page rank to them and also may assume that your sites are similar (since the logic is that sites only link to other
sites that will be interesting to their visitors).
Here is what I mean: <a href=”http://www.blog.com/whatever/” target=”_blank” rel=”nofollow” title=”great read”>great read </a>.
If the site is something you think is related or your want to pass pagerank leave rel=nofollow out.