Localizado en la región centro norte del estado de Zacatecas, cuenta con una extensión territorial de ,446 kilómetros cuadrados y una altura promedio de 2,950 metros sobre el nivel del mar. Presenta colindancia al norte con el municipio de Río Grande, al sur y al oriente por Fresnillo y al poniente por el municipio de Sombrerete.