Nainital has a subtropical highland type of climate. The weather is mild and pleasant.
Summer (April - July): Nainital’s summers are temperate with temperatures averaging at 21 °C during the day and 16 °C at night.
Winter (December - February): Maximum temperature is around 10 °C and minimum at 2 °C. Nainital receives snowfall during this time.
Spring (March): Maximum temperatures are around 15 °C while the minimum reaches 5 °C.
Autumn(July - September): This is the monsoon season when the city receives more than 300 mm of rain. Temperatures cool down and average out at highs of 19 °C and lows of 12 °C.
The best time to visit Nainital is during the summer when the rest of Northern India is battling with oppressive heat. If you want to avoid the crowds, plan your trip during the winter when the snow makes for a pretty sight.