La ciudad se ubica a 24 kilómetros al sur de la capital regional, Talca, y a 31 km al norte de la capital provincial Linares, a 10 km de Villa Alegre, en la ribera sur del río Maule.