Distante cerca de 120 km de São Paulo, encontra-se em um vale em uma área de topografia montanhosa, o que define o seu traçado bastante irregular.
O clima que predomina é o tropical de altitude.
O Rio Camanducaia percorre a cidade, sendo que em determinadas épocas tende a causar enchentes, principalmente no Distrito de Areias e no Bairro Divinéia.