Five Common ASP.NET SEO Mistakes

- Image by Getty Images via Daylife
One of the strengths of ASP.NET development with Visual Studio is the relative ease in which you can create a functional dynamic site. At the same time, one of it’s weaknesses is the relative ease in which you can create a functional dynamic site that is confusing, if not completely unusable, by a search engine robot.
Here’s a checklist of five common mistakes that ASP.NET and the Viewstate/Postback model of development make it far too easy for unsuspecting developers to make:
1. Overuse of Button Controls
The Button and LinkButton controls are handy for running server-side logic when a link or push button is clicked, but keep in mind that search engines can’t follow these links. These controls cause a postback via Javascript code that search engines are unable to execute. I’ve seen more than one developer who’s standard method of linking from one page to another was to drag a LinkButton control onto the page and then place a Response.Redirect in the event handler, making the entire site completely uncrawlable by search engines.
2. Duplicate Page Titles
With any dynamically generated site, it can be difficult to generate unique page titles for each and every page, but it really is important. If you have a quality site, then the search engines are working hard to drive traffic to your site. After all, that is their core business – to provide links to the best resources on whatever the searcher is looking for.
So you need to make it easy for the search engines to figure out exactly what your pages are about, and the page title is an important part of that. Not only that, but once the search engine does rank your page highly, the title is the primary text that searchers will be seeing and using to determine whether to click on your listing or not!
3. Duplicate Meta Descriptions
Much like the duplicate page title issue, the meta description tag should not be duplicated across your pages either. Like the page title, this text is used (although to a lesser extent) by the search engines to determine the content of your page and also appears underneath your title in the search engine listing. Depending on the number of pages of dynamic content on your site, it might not be practical to add multi-sentence descriptions for every single page. In this case, simply remove the meta description tag altogether. The major search engines are pretty good at improvising when the description tag is missing by displaying portions of the page body that match the user’s search keywords instead.
4. State-Dependent Pages
Search engines rely heavily on the idea that every unique page has it’s own unique URL. That means that if you are basing a page’s content on session variables or viewstate parameters, you are probably going to have problems getting that content indexed. Once a search engine finds a URL, Google will continue spidering that page, but you can bet that the search engine robot will not navigate through your site again to get there. So you need to make sure that any content you want indexed by search engines can be accessed by simply opening your browser and typing in the URL of that content. That means unique URLs for every product in your ecommerce store, ever category in your directory, etc.
5. Duplicate Content When Rewriting URLs With ASP.NET
When you rewrite a URL, the browser is displaying a keyword-rich URL, but internally the URL of the page being displayed is still the ugly URL with the querystring parameters. In technical terms, the Request.RawURL value might be something like:
- http://www.store.com/products/coffee-cup.aspx
but the Request.Url value would still be something like:
- http://www.store.com/products.aspx?productID=15
All of that is just fine, but a problem can arise if you have a Button or LinkButton control that posts back on that page. By default, the button control will post back to the Request.URL value. causing the URL to change after postback. This can be a problem if some users end up linking to your ‘ugly’ URLs, because the search engines will find that link and spider it. To the search engine the two different URLs signify two different pages and both will be indexed seperately, causing a pretty ugly duplicate content problem.
Related articles by Zemanta
- ONA conference tips on search engine optimization (reportr.net)
- Get To The Number One Position On Google (ronmedlin.com)
- Changing Permalinks and Categories Retroactively (on a WordPress site with lots of posts) (mcbuzz.wordpress.com)
- SEO For A Flash Website (mt-soft.com.ar)
- Hard facts about comment spam (googlewebmastercentral.blogspot.com)
- Trailing Slashes: Root Domain Same Page But File Names Can Be Different Pages (seroundtable.com)
- 80legs: Web Crawling Isn’t Just for Google Anymore (mashable.com)
- How To Optimize a Flash Website (johnchow.com)
- Blogging SEO 101: Get Started With SEO – Part I (bloggingot.com)
- What Are Google’s 200 Search Engine Ranking Factors? (seroundtable.com)
- Secret Exposed: How the Google Search Engine Really Works (ronmedlin.com)
- SEO Optimization Basics And Concepts (ronmedlin.com)
- The 6 Key Principles of SEO for Your Blog (socialwebschool.com)
- A Search Engine Explanation (ronmedlin.com)

