Best Time to Visit India
Weather by month for 61 destinations in India. Pick a city for its full month-by-month guide.
When to visit India
Winter is the easy season
For most of India, November to February is the sweet spot. Days are warm and dry, and the evenings are cool. Delhi, Agra, Jaipur, Udaipur and Varanasi are all at their best then, so it's the time for forts, palaces and the Taj Mahal. Mornings in Delhi and Varanasi can be foggy, which sometimes delays trains and flights. Leave some slack in your plans.
Winter is also high season. Expect full hotels and higher prices around Christmas and New Year, especially in Panaji (Goa), where the beaches fill up. Diwali, the festival of lights, falls in October or November, and the date moves each year. Trains sell out fast around it.
Where the calendar shifts
The south and the coast follow their own rhythm. Chennai is best in January, because November is its wettest month, when the northeast monsoon arrives. Kochi and Bengaluru are nicest in December and January. Surat starts a little earlier, from October. Hyderabad is best in November and December.
Holi, the colour festival, lands in March and is a joy in cities like Jaipur and Varanasi. It's messy and loud, so wear clothes you can ruin.
Heat and monsoon
From March to June, it gets properly hot. May reaches 41°C in Jaipur and 44°C in Ahmedabad, the hottest on our list. Sightseeing becomes a dawn and evening job. If you hate crowds, though, hot months are quiet and cheaper.
The monsoon runs roughly June to September, with July the wettest month almost everywhere. The exception is Bengaluru, which peaks in September. Mumbai gets 988 mm in July and Panaji 783 mm, so beach shacks in Goa mostly close. Rain does bring green hills and low prices, and Kochi's backwaters look lovely. Just expect delays and flooded streets in Mumbai.
Travelling with kids? Aim for winter school holidays, but book early.
Cells show the average daily high in °C, coloured by our weather rating.