El municipio se localiza al norte del territorio hidalguense entre los paralelos 20° 54’ y 21° 12’ de latitud norte; los meridianos 98° 30’ y 98° 45’ de longitud oeste; con una altitud entre 200 y 1900 msnm.