Prague has four proper seasons and a visitor load that varies more than the weather does.
The seasons
Spring, April to June. The best months. Blossom on Petřín, gardens open, long light evenings, and the city not yet at its fullest. May is the peak of both the weather and the cultural calendar.
Summer, July and August. Hot — the low thirties is normal and the heat sits in the river valley — and the busiest. Air conditioning is not universal. The beer gardens are the compensation and they are a substantial one.
Autumn, September and October. Warm days, cool evenings, the parks turning, and the crowds easing after the first week of September. Arguably the best month of the year is late September.
Winter, November to March. Cold, often below freezing, with fog sitting in the valley — and this is when Prague looks most like itself. Fewer people, cheaper rooms, and the Old Town in snow is the photograph everyone wants and few get.
The peaks
Christmas markets from late November to early January, on the Old Town Square, Wenceslas Square and Náměstí Míru. Genuinely good, and the city is full.
Easter markets, smaller and pleasant.
May, for the weather and the Prague Spring international music festival, which opens on 12 May with Smetana’s Má vlast.
New Year, which is chaotic and loud.
Summer weekends throughout.
The cheapest
January, February and November. Rooms are at their lowest, the museums are empty, and the pubs are at their best. If you do not need long daylight, this is the value window.
Daylight
June: light from about 4:45am until well after 9pm. December: light from about 8am to 4pm.
A December trip is a short-daylight trip — museums and galleries in the afternoon, and the city lit by five.
Events worth planning around
Prague Spring, May to early June.
The Signal Festival of light installations in October, which fills the centre for four evenings.
Bohemian Carnevale before Lent.
The Prague Marathon in May, which closes the centre for a morning.
Czech public holidays, when museums close and transport runs to a Sunday timetable — 1 January, Easter Monday, 1 and 8 May, 5 and 6 July, 28 September, 28 October, 17 November, and 24 to 26 December.

