En 2017 contaba con 34 268 habitantes, que la convierten en el segundo municipio más poblado del interior de la provincia tras Antequera.