Click here to Skip to main content
15,126,317 members
Articles / Web Development / HTML
Posted 9 Oct 2007

Tagged as


80 bookmarked

10 SEO tips for your ASP.NET website

Rate me:
Please Sign up or sign in to vote.
4.71/5 (19 votes)
9 Oct 2007CPOL7 min read
10 tips for search engine optimization (SEO) for your ASP.NET website.


Here are 10 tips on SEO for your ASP.NET website. I'm sorry that some of the screenshots contain German language text, but I hope you'll get my point despite that :)

1. Avoid duplicate content

A mistake made very (very) often: when you register a URL and point it to your web server, you're using the "www"-subdomain in most cases. "www" is nothing else than a subdomain. Follow these instructions to get rid of duplicate content:

Imagine you're the owner of the domain "" and you're configuring your web server using the IIS MMC and creating a new website:

Screenshot - 01_seo.jpg

The first info we need is the description:

Screenshot - 02_seo.jpg

Then we need the host header information:

Screenshot - 03_seo.jpg

In the screenshot above, you can see a very important thing: the host header for the configured website is "".

After you've finished the configuration, you can type "" in your browser and everything runs fine. Now, type "" and ... the web server answers as well.

For search engines, this is a major problem - which URL is the main URL? When content gets published, which URL is the one where the information was published first? For Google and other search engines, "" and "" are two different URLs.

Avoid that by configuring a permanent redirect.

Create a second website on your web server:

Screenshot - 04_seo.jpg

Use "" - your URL name without "www" - as the host header.

Screenshot - 07_seo.jpg

and configure it as a permanent redirect:

Screenshot - 06_seo.jpg

This way, "" redirects to "".

Well, now some of you will think that a JavaScript redirect or a Flash redirect will do the same, or even something like:


But, this is not true. The web server will answer to the above shown redirects with a "HTTP/1.x 301 Moved Permanently" response. So the search engine get's the info that this resource has permanently been moved. This way, all ranking-power, link-power, etc., moves to "", which is a major factor affecting the ranking of your website.

2. Avoid duplicate content , part II

Well, when requesting "", your web server will deliver a certain page - by default, it's the "Default.aspx". Many websites, as well, redirect and link (internally) in a wrong way: open a browser and type "" - you'll get redirected to "" - "index.asp" seems to be the default-site for the domain - but redirecting to it from "" or linking to it within any page of is just a big mistake.

No matter how big the influence in your site's ranking is, google's PageRank is still a ranking factor. So while has a PR of 7, has a PR of 5 - while these two pages deliver the same content. This is bad, and has a very bad influence in CodeProject's ranking, because the two URLs deliver the same content. Google doesn't know that "index.asp" is the root-site of CodeProject, so Google tries to evaluate (through algorithms) which site is the more important one. But the major problem here is that all the link-power, ranking-power, etc., get's divided - CodeProject could rank a lot better without having "index.asp" in the search engine's index.

To make sure that your site's ranking reaches the maximum, you should concentrate on one URL - make sure, even in internal link building (links to the "Home" page of your website), that you link to your domain name:, instead of

3. Choose individual, good <title>s

This is very easy to achieve, and has a big influence on your site's ranking: don't use static titles. The <title> tag is one of the best ways to optimize a site for a special topic or keyword. Don't use a dozen keywords in the title tag, because you're "paying in" for each and every keyword - "paying in" means, that the weight of your site gets divided for all the keywords mentioned in the title tag. Choose one or two keywords, or a keyword-combination, to achieve relevance and a good ranking.

While working with Master pages, there is an easy way to do so:

//assuming, that your <head runat="server" id="myHead"> 
if (Request.CurrentExecutionFilePath.Contains("example.aspx"))
    HtmlTitle title = new HtmlTitle();
    title.Text = "Example";

So if you have three sites, the Homepage, the AboutMe page, and the Contact page, you should give these three pages individual, useful titles. The less keywords you use, the better the influence for these keywords will be. Same applies for <meta name="keywords" and <meta name="description", but the title tag has the biggest influence nowadays.

4. Clean up your source code

Something hard to believe but still true: clean up your source code and try to minimize the code as much as possible. Follow these rules:

  • don't use inline CSS, use external stylesheets whenever possible
  • don't use inline JavaScript, use external .js files instead
  • don't leave HTML-comments
  • don't use massive line-breaking (twenty lines with only a linebreak or something similar)
  • don't use viewstate when not necessary
  • don't use a <form runat="server> when not necessary (comes with hidden fields)

The better the relation between the content (==text) and the (HTML/CSS/JavaScript) code, the better your ranking will be. The smaller the source code, the better this relation will be.

5. Make your site crawlable


  • don't use Flash/Silverlight to show information
  • don't use Flash/Silverlight for menus
  • don't use JavaScript-based menus
  • don't use button-based menus
  • don't use intro-pages


  • do use a sitemap (CP-article: Simple Sitemaps in ASP.NET)
  • do use simple <a href> tags whenever possible
  • do use the "title" property for <a href>
  • do use the "alt" property for images
  • do use RSS (syndicate all your content, when possible)
  • do use pings for search engines (use

6. Use <strong>, <h1>, <h2>, <h3>

Use the HTML markups <strong>, <h1>...<h6> regulary - use them to structure the site's content. These markups are made for weighing some words more than others - so it is for search engines. Use these markups whenever it's useful to do so.

7. Validate your source code

Use the wonderful HTML-validator at to validate your site. If it's valid, there will be no punishment for a "bad technical solution" - use the validator to find problems, get rid of them, and find a better ranking instead.

8. Get to know your users

I don't know about you, but I'm building websites for users in the first place. So my intention is to get to know how I can achieve more interests for my site. The first thing is to find my audience - the better my ranking is, the more visitors I will have. So I'm using keyword-tools to find good keywords and keyword-combinations to find the keywords I need to optimize for (because that's what the keywords' potential visitors will use):

Find the good keywords, look at your competitors, and start optimizing.

9. Keyword density

Keyword density is very important for a site's ranking for a special keyword. Imagine you have a site about "free source code" - well, you should defiantly try to mention this keyword combination as often as you can - as long as it makes sense, of course. Try to reach a keyword density bigger than 3.5 - so mention "free source code" 3.5 times per 100 words.

10. Get linked!

Links to your site have the biggest influence to your sites' ranking. Try to get linked from as many other websites as possible. Use social bookmarking and other social services like to get more links and more visitors. Example: of this article: Digg!

11. Use "speaking" URLs

Use for speaking URLs. The more keywords you'll get in your URLs, the better the ranking could be.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Germany Germany
No Biography provided

Comments and Discussions

Praisevery nice article... Pin
gajender198017-Sep-16 7:47
Membergajender198017-Sep-16 7:47 
PraiseThanks lovely article Pin
Member 1255152828-May-16 2:07
MemberMember 1255152828-May-16 2:07 
GeneralVery Nice. Thanks Pin
Member 1115501230-Oct-14 1:23
MemberMember 1115501230-Oct-14 1:23 
QuestionClose, but slight difference in meaning Pin
B. Clay Shannon20-Sep-13 14:12
professionalB. Clay Shannon20-Sep-13 14:12 
GeneralMy vote of 4 Pin
mrdreamlife2-Jul-13 0:23
Membermrdreamlife2-Jul-13 0:23 
GeneralMy vote of 5 Pin
Thanks787219-Nov-12 22:58
professionalThanks787219-Nov-12 22:58 
GeneralVery Nice Pin
gherbas200027-Apr-10 3:40
Membergherbas200027-Apr-10 3:40 
QuestionC# Code example for links to del.ic.ious Pin
thetallguy26-May-08 17:53
Memberthetallguy26-May-08 17:53 
GeneralRedirection and query-strings Pin
Richard Deeming22-Oct-07 5:56
mveRichard Deeming22-Oct-07 5:56 
Generalnice guide Pin
Brent Lamborn9-Oct-07 17:57
MemberBrent Lamborn9-Oct-07 17:57 
GeneralThanks. Here are some of my thoughts [modified] Pin
Michael Sync9-Oct-07 17:52
MemberMichael Sync9-Oct-07 17:52 
GeneralRe: Thanks. Here are some of my thoughts Pin
hartertobak10-Oct-07 0:29
Memberhartertobak10-Oct-07 0:29 
GeneralRe: Thanks. Here are some of my thoughts Pin
Michael Sync10-Oct-07 0:49
MemberMichael Sync10-Oct-07 0:49 
GeneralRe: Thanks. Here are some of my thoughts Pin
hartertobak10-Oct-07 2:41
Memberhartertobak10-Oct-07 2:41 
GeneralRe: Thanks. Here are some of my thoughts Pin
hartertobak10-Oct-07 2:44
Memberhartertobak10-Oct-07 2:44 
GeneralRe: Thanks. Here are some of my thoughts Pin
SEOgroup17-Apr-10 10:28
MemberSEOgroup17-Apr-10 10:28 
GeneralThanks for this excellent article Pin
tonyvuolo9-Oct-07 7:02
Membertonyvuolo9-Oct-07 7:02 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.