Este municipio se encuentra localizado en la región oeste de la entidad, colinda al norte con el municipio de Jiménez del Teul, al noreste con Sombrerete y Fresnillo, al este con Susticacán, al sureste con Tepetongo y en la zona sur limita con el municipio de Monte Escobedo. Cuenta con una extensión territorial de 5,649 kilómetros cuadrados y una altura promedio de 1,888 metros sobre el nivel del mar.