Colinda al norte con los municipios de Jiménez y Abasolo, al sur con Llera y Aldama, al este con Padilla, Gümez, Victoria y nuevamente con Llera, se encuentra a una altitud variable y alcanza alturas hasta 150 metros sobre el nivel del mar y está constituido por una superficie territorial de 2,874.33 kilómetros cuadrados.