As ASP.NET is stateless, it doesn't maintain the state of timer as well. :(
So you need to implement State Management technique.
The following is the example of state management using ViewState:
protected void Page_Load(object sender, EventArgs e)
{
if(ViewState["counter"] != null)
timer1.Interval = (int)ViewState["counter"];
else
{
timer1.Interval = 30000;
ViewState["countet"]=30000;
}
}
Please feel free to ask any doubt if you have. :)