The main trekking season in Peru lasts from late April - mid October. This is the dry but 'cold' period, with the best mountain views and all passes open.
The Costa dry coastal desert region experiences mild average daily temperatures ranging from 19 °C (66 °F) in winter to 22 °C (72 °F) in summer. Rain-bearing winds from the Amazon Basin are blocked by the Andes mountain system, contributing to the west coast of South America having one of the driest climates on Earth. Despite this, coastal fogs (garúa) provide some areas of the Costa with sufficient moisture to support some vegetation. These fogs cloak the central and southern beaches from April - early December, but coastal cities can be visited all year regardless, and the northern beaches will keep sun-worshippers happy year-round.
Variance in latitude, elevation and local winds all factor into the wide range of climates experienced in the central Sierra/Andean mountain region. Average temperatures in the Sierra vary little between seasons, but there is dramatic daily variance. While the average daily temp may only vary a few °C between January and July, the diurnal (daily) temp range is often huge: you can expect daytime temperatures in the highlands to be in the range of 10-25 °C (50-77 °F), falling as low as -10 °C (14 °F) at night.
Higher elevations in the Sierra receive snow falls, with many peaks having permanent snow caps. In general, temperatures decrease as elevation increases, and rainfall decreases from north to south and from east to west. November – March brings the rainy season to the Sierra highlands, with the heaviest precipitation in the north and along the eastern flanks of the Andes, facing the Amazon Basin. Some trek routes do not operate at these times due to possible wet conditions on the passes, but the heavy rain periods do not usually arrive until late January.
The eastern Amazonia region is characterised by wet tropical conditions. High rainfall is common throughout the year, although somewhat heavier from December - March. As in the Sierra region, there is little variance in seasonal average temperature but relatively large daily temperature variation, with daily temperatures often ranging from lows of 15 °C (60s°F) to highs of mid-30s °C (mid-90s °F). Be prepared to shelter from rain pretty much all year, but be consoled by the fact that downpours rarely last more than a few hours.