Your definitive map and guide to India’s climate and highlights
Overview: Best time to visit India
The best time to visit India is from October to March. India is large with diverse weather patterns. The Himalayas stop cold winds from reaching most of India so winters remain warm and summers can get very hot. The majority of India is tropical and is affected by three main seasons; summer, winter and monsoon.
Here is your guide on what to expect, where and when.
The alpine Himalayan foothills including Darjeeling and Shimla have distinct seasons but travel is possible year-round. December and January are the coldest months, when temperatures in Darjeeling drop to nearly freezing at night, and days peak at around 10°C (50°F). In June and July temperatures range from around 13°C (55°F) to 19°C (66°F). Shimla is a few degrees warmer year-round. Both areas have a monsoon season. Darjeeling experiences heavy rain from June to September, while Shimla has a shorter wet season from July to August.
As you reach higher into the Himalaya the temperature drops by about 6.5°C every 1,000 meters (3.5°F for every 1000 feet) you climb. The heaviest snow is from December to February at elevations over 1,500m (5,000 feet) making travel difficult or impossible in some areas. Above 5,000m (16,400 feet) freezing temperatures mean that only snow falls, and never rain.
The best time to go to Delhi is during winter, from October to March, as it is relatively dry and temperatures are more moderate. Nights can be chilly from November to February with temperatures dropping to around 8°C (46°F), and highs in the low 20s (70s), while October and March are warmer with peaks around 30°C (86°F). May and June are very hot with lows around 26°C (79°F) and highs reaching an average of 40°C (104°F). Hot, dry winds are common and occasionally dust storms occur. July through September is the monsoon season, with rising humidity and heavy rains in July and August.
The best time of day to visit the Taj Mahal in Agra will vary according to the season you visit. If you are traveling from November to February, fog can sometimes obscure your view in the early morning, so it is best to go later in the morning or the afternoon. For the rest of the year the best time to go is around sunrise, when there are fewer tourists and the midday heat is yet to set in.
This part of India is a tropical desert, and temperatures within the state of Rajasthan are similar to nearby Delhi and Agra. Around Udaipur temperatures in summer can be a welcome few degrees cooler, while the “arid west” has maximums averaging 45°C (113°F).
To the west of the Aravalli Hills including Jaisalmer, there is very little humidity and rainfall, while to the east the climate is sub-tropical. The driest areas such as Jaisalmer get only 10cm (4 inches) of rain a year, while other parts of the state receive up to 100cm (40 inches). Almost all of the rain in Rajasthan occurs in July and August. Further east, in central India, temperatures are similar but July and August see more significant rainfall.
Kolkata is a tropical destination with fairly warm weather year round, marked by a distinct wet and dry season. In winter, December and January, temperatures dip to around 9°C (48°F) at night but daytime temperatures reach highs of 27°C (78°F). It is dry with relatively low humidity and little rain.
It starts to heat up February through April, with June marking the height of the hot season with an average minimum of 26°C (79°F) and maximum of 35°C (95°F). Humidity rises as the wet season approaches and heavy rainfall can be expected from June to September. Rain can be heavy for a few days at a time, followed by clear sunny days.
Mumbai is a monsoonal destination and the best time to go is from October to May, when there is almost no rain. It is wet from June to September, especially July and August when there are few days without at least some rain. July alone sees an average of 868mm (34 inches) of rain. Temperatures are fairly stable throughout the year. Lows vary from 16°C (61°F) in January to 26°C (79°F) in May, while the peak temperatures vary by only a few degrees from 29°C (84°F) in winter to 33°C (91°F) in summer.
If you plan to visit India for its beaches, Goa enjoys pleasant temperatures year-round with low temperatures around 24°C (75°F) most of the year, dropping a few degrees from December to February and rising a few in April and May. High temperatures are around 32°C (90°F), except during the monsoon when they drop a few degrees. The monsoon season from June to September brings a huge amount of rain, peaking at 994mm (39 inches) in July with an average of 27 days of rain that month. The rain eases in September, and from October to April there is very little rain at all.
The south of India is the closest to the equator so temperatures are hot year-round. It rarely drops below 22°C (72°F) and temperatures peak between 28°C (82°F) and 31°C (88°F), except in the hottest months of May and June when they reach 34°C (93°F). Two thirds of the rain falls from June to August, with heavy rains prevalent throughout the day. The rest falls from September to December, when torrential downpours in the afternoon leave the rest of the day warm and pleasant for touring.
See our full collection of small group tours to India.