Mexico is a year round destination and there is actually no bad time to plan your visit, however, certain times might be more appealing to some people more than others. It all depends on the places you wish to see and activities to do.
The weather in Mexico varies in different regions throughout the year, so before planning a visit, take a look at the places you wish to see. Usually at the sea-level weather is warm, which means that Mexico is a great year-round beach destination, while at higher elevations the weather can get colder in winter months. In Mexico there are two main seasons, rainy and dry season. The rainy season falls between May through September, whereas dry season lasts from October through April. Hurricane season usually lasts from June until November and can affect weather on the Caribbean coast, Gulf coast and Pacific coast, so before planning your trip check the weather and safety conditions.
Mexico City has spring-like weather meaning that it is warm or hot during the day and gets cooler overnight. Winter in Mexico City can get quite cold due to the high altitude (2,250m) of the city. The warmest months are April and May and the coldest are December and January.
Mexico’s Southern region, including Oaxaca and Chiapas, is a year-round destination. The biggest crowds usually occur between October through March. To avoid crowds the best time is to go early spring (April to May) and early fall (September to October).
Mexico’s Gulf coast is generally hot year-round and is a humid area of the country. The most rain falling is between June and October. The best time to visit this region is from late September to May.
Caribbean coast is flat and close to the sea level, therefore, the weather is quite warm the whole year. It is best visited March through May and September through November since it can get extremely hot and humid from June to September.
In general November through April are the best months to go to Mexico, however, if you want to avoid big crowds and save money on accommodation, then rainy season might be an option since it varies wildly from place to place how wet it gets.