SEO (Search Engine Optimization) is the practice of building or updating a website to increase the chances of the site being successfully indexed, and favorably rated, by search engines like Google and Yahoo (the two main engines). MSN will launch an engine later this year or early next year that competes against them, MSN currently uses Yahoo's engine.
*No one* knows exactly what algorithm each SE uses to rank a page but the engineers that write and manage the engine. This is often called the "Secret Sauce", and is the life blood of a SE company, a heavily guarded secret.
While we don't know exactly what is in each secret sauce, or what the proportions are, we do know a couple of ingredients.
The two main ingredients that each search engine seems to contain are "Quality Content" and "Link Popularity". If your site excels in either of these it will increase it's rankings. I'm going to address Quality Content and Link Popularity in a moment, as they are not always what they appear to be, but first and foremost I want to address "spiderability", as it is the first and most important step in SEO.
Spiderability:
Most of us know that SEs send 'bots' or 'spiders' out onto the web to index pages. These agents traverse the web in search of new or changed web content. The most critical factor to having your site rank well is whether or not a spider *can* crawl your site! Believe it or not, many sites are built in ways that keep spiders from gathering and indexing content! Content is what these spiders are looking for, and if they can't index the content on your site, you will not rank well in the SEs.
What kind of content do spiders like? TEXT CONTENT and HYPERLINKS. If your site is made up mostly of graphics, or more specifically, if your "content" is displayed as a graphic rather than 'live text' you are cheating yourself of possible higher rankings. To see what a spider sees on your site, open a page, "select all" , "copy", and then "paste" into a text editor like Notepad. What words show up in the text editor? To a spider, this is your content. Any content in Macromedia Flash is invisible to SEs. (Almost) any content in Graphics is invisible to SEs. I'm not at all saying don't use graphics or Flash, just don't put your meaningful content into them, OR make sure to duplicate the content in text on the page. There *is* a way for the content of your graphics to be indexed, make sure that you use ALT tags for all meaningful graphics. In other words... if you have a headline that says "Tarot Readings" it is better if it is text than a graphic, but a graphic is okay too IF you make sure to put the ALT tag for the graphic to say "Tarot Readings". But when it comes to paragraphs of copy, never display them as a graphic of in Flash unless you have the same content in text as well.
So for the moment lets say the text on your page is easy to index for a SE (text!), what about your links? Can a spider dig down into your site? The rule of thumb is that the simpler and more logical the structure of your site and pages, the better. What you DON'T want to happen is for a spider to come to your page and run into code that makes it retreat or to not be able to find the rest of your site. How does it find the rest of your site? Hyperlinks. Are your links easy for a spider to find? In descending order: If they are text on the page.. great. If they are graphics on a page with <A> tags, that's fine too. An "image map" is also okay. But, if you're using Javascript for "rollover" effects or "drop down menus" you may be blocking the spider from finding your other pages. Most spiders don't read Javascript! It's fine to have Javascript "rollover" effects or "drop down menus" , as long as you ALSO provide a regular text version of the options somewhere on your page (usually the bottom). Make sure that a spider can easily find the links it is looking for!
How "clean" is your code? The goal is to have your code be as clean as possible. Anything you can do to reduce the likelihood that a spider will stumble on the code for your page, the better. Keep your Javascript in an external file, not in the page code. Keep your CSS in an external file, not in the page code.
Is your site "dynamic"? Meaning, do you use PHP, ASP, JSP or some other dynamic language on your site? If so, try to reduce the amount of arguments in your URLs if possible. Again, the simpler the URL, the more likely that a spider will be able to find the pages.
If you use passwords to protect areas of your site, spiders will not be able to go there, spiders can't enter text or make choices!
USE A SITE MAP. If you have more pages than can be displayed in your navigation menu, make sure you are using a site map. Site maps are "spider food". This step alone can greatly increase the chances of your site being fully indexed. Make sure there is a clear link on every page of your site to the site map, and that the site map can lead to every page on your site.
REMEMBER: While you may think that everyone comes into your site via your homepage, chances are they are NOT. Any page on your site may be the one that comes up on a SE query, so make sure that spiders (and people too!!) can find their way around your site from any page.
"Internal links" matter. Make sure that each page links to the "main" pages of your site, you want a spider to be able to jump around and find all of the pages on your site.
To summarize, the first step in SEO is to make sure that spiders can easily find and index your content. Make sure that all relevant content is displayed as "live text" so that it can be indexed and make sure that all pages are easy for a spider to jump to. Keep your code as clean as possible to keep a spider from "choking" on anything. Some people say to make sure that your "content" is high up in the code, the idea being to ensure that a spider gets it first in case there is something in the code that causes it to bail. Likewise, try to keep the 'size' of your pages small. If you have all of your content on one page a spider may not make it through all of your content, this is an extreme case, but a general rule of thumb is to break your content up into reasonable size pages . Content in Flash and Graphics will generally be ignored. Spiders have difficulty with javascript, do not make choices, nor enter info into dialog boxes. If you use Javascript of rollovers or for drop down menus, make sure you offer a second, text based form of link navigation. Forms can be problematic also, so the same rule applies. Make sure you use a site map if your site is large. Make sure that all pages link to the main areas of your site.
So, now that spiders can come and index all the content on all of your pages, let's make sure that the SEs like what it is indexing!
More to come.
robert