Skip Navigation LinksHome > Categories > Code from a Category

Optimize ASP.NET pages by reducing the size of the VIEWSTATE to rank higher on search engines

User Name: codelecturer
Name: Mike Chauhan
Contact Me:
Home Page:
6 years of total IT experience including programming, application development, System Maintenance . 3 years of Experienced and expertise in .Net Framework VB, Visual Basic.Net, ASP.Net 2.0, 3.5 and AD... [More]
Viewed Times: 2221
Add Date: 12/22/2011
One way to optimize the pages you develop with ASP.NET is to keep a check on the view state of the page and the controls that are added to the page.
Any seasoned developer of ASP.NET will remember the VIEWSTATE which is added to every page in a hidden field _VIEWSTATE and contains base64 encoded data which could be any where from 800 to tens of thousands of characters long depending on your usage of this property on your page.

There are many issues with view state in ASP.NET 1.x. It is on by default, and unless you know to look for it and disable it when it is not needed, it can significantly increase the amount of data rendered by your page. This becomes particularly painful when you use data-bound controls, all of which use view state to save their state across post backs.

You need to ensure that you only use the VIEWSTATE property for the page and controls where necessary so that the size of the value for the hidden field of _VIEWSTATE is minimum. This will ensure that your page loads fast and that the search engines can retrieve the actual content of your page

. Some search engines only read a certain set of characters from the top (that's why you have most SEO specialists mentioning that you should have your keywords on the top of the page) and the bottom of the page. If the value of the hidden field of _VIEWSTATE is long on your page then these search engines would not be able to get to the actual content of your page as a result it would never map the keywords (keywords density) and you would have a low ranking on these search engines.

How to decrease the size of the view state?

a. As mentioned before the VIEWSTATE for any page is set to TRUE by default. If you do not require the controls or the page to hold the VIEWSTATE you can disable the VIEWSTATE for the page completely by adding the directive to the page. (Usually if you have a page that does not post back to itself you can disable the VIEWSTATE on these pages.)

b. You can selectively disable the VIEWSTATE of the controls, datagrids etc that you use on the page if these controls do not post back to the same page.

You will see a considerable difference in the page size and the loading time of the page once you disable the VIEWSTATE of the controls or the page. This will also be evident from the size of the base64-encoded string in the value field of the hidden field of _VIEWSTATE. By disabling the VIEWSTATE for a couple of datagrid controls on one of the pages of our clients website, we were able to reduce the VIEWSTATE of the page from 10,000 characters to 1000 characters and the page size also reduced by a few kilobytes (KB).

Post a Comment

Name: (Optional)
Email: (Optional, you can get an email if somebody replys your comments)*
Email me if somebody respons my comment below:
Enter Text
as Below:
(case insensitive, if hard to read, click the "get a new one" button)
* Your email address will not be shared with any third parties for any reason.
** Maximum 1000 charactors.