Limita al norte con las comunas de San Nicolás y San Carlos; al sur con la comuna de Chillán Viejo y San Ignacio; al oriente con las comunas de Pinto y Coihueco; y al poniente con las comunas de Quillón, Portezuelo y Ránquil.