Se localiza al este del Estado, en las coordenadas 19º40" de latitud norte y en los 100º25" de longitud oeste, a una altura de 2,280 metros sobre el nivel del mar. Limita al norte con Senguio, al este con Angangueo, al sur con Ocampo y Tuxpan y al oeste con Irimbo. Su distancia a la capital del Estado es de 120 km.
Su superficie es de 54.91 km2 y representa un 0.09 por ciento del total del Estado.
Su relieve lo constituyen la Sierra de Angangueo, los cerros de Don Felix, Chino, Colorado, Prieto y Seco, pertenecientes al sistema volcánico transversal.
Su hidrografía la conforman los ríos el Zarco y el Grande y manantiales de agua fría como el San Luis y el Ojo de Agua de Martinillos.
Su clima es frío con lluvias en verano. tiene una precipitación pluvial anual de 1,068.8 milímetros y temperatura que oscilan de 7.8 a 23.4 grados centígrados.
La vegetación dominante son los bosques de coníferas, con oyamel, pino y junípero, mixto, con encino, pino y cedro. Su fauna se conforma principalmente de cacomixtle, conejo, comadreja, ardilla, coyote y aves como la tórtola y el pato.
La superficie forestal maderable es ocupada por pino, y en el caso de la no maderable, por arbustos de distintas especies.
Los suelos del municipio datan de los períodos cenozoico, terciario, cuaternario y plioceno, corresponden principalmente a los tipos podzólico. Su uso primordialmente forestal y en menos proporción agrícola y ganadero.