Its distribution is highly disjunct, with population associated with the Atlantic Forest in south-eastern Brazil, eastern Paraguay and north-eastern Argentina, the Andes from Bolivia in south to Venezuela in north, the Perijá and Santa Marta Mountains, the Venezuelan Coastal Range, and the Tepuis. All populations are associated with humid forest, but locally it also occurs in nearby gardens and parks (especially in the Atlantic Forest region). Most populations are found in subtropical highlands, but it occurs down to near sea level in the Atlantic Forest region.