Colinda al norte y al este con el municipio de Salinas Victoria, al sur con el municipio de General Escobedo, y al oeste con el municipio de Abasolo y con el municipio de Hidalgo. Posee una extensión territorial de 131.40 kilómetros cuadrados y una altura promedio de 498 metros sobre el nivel del mar.