January is one of the wettest months in the highlands of Peru and the Inca Trail tends to close for cleaning and maintenance at the end of the month and into February.
A few other national parks in Peru also close in February however, the beaches are always open and this is the best time of year for heat on the coast with Lima always quite pleasant.
March and April are still wet within the highlands however, not half as bad as the beginning of the year and you’ll find few other travelers on the trails. This is probably the best time of year to visit Arequipa, in the southwest, as temperatures are pleasant and rainfall is low.
Amazon areas, such as Puerto Maldonado, are hot and humid all year round although there will be a little less rain from May through to September.
Heading along the coast south of Lima in June will introduce you to the drizzle and thick fog caused by the dry garúa winds and if you’re searching for sunshine then head north to Trujillo for conditions more akin to spring.
July and August are peak times to visit Machu Picchu (you will need to book at least 6 months in advance) and it’s certainly a good idea to visit after the crowds have dispersed with September and October the best months to get on the Inca trail.
November and December find the rains returning to the highlands and Cuzco, as well as Amazon areas in and around Puerto Maldonado, with a mini high season towards the end of the year pushing prices up as travelers head to the beach over the vacations.
In a nutshell: Peru is wet from November to March and dry for the rest of the year. The coast - especially in the south - tends to be drier, but the Amazon is always hot and wet. It is the world's largest rainforest, after all...