和歌山県の北東部、伊都郡の西部に位置し、北に和泉山脈、南に紀伊山地を仰ぎ、町の中心部を紀の川が東西に流れています。 道路交通状況は、奈良県に通じる国道24号、大阪府に通じる国道480号、県内を結ぶ国道370号が町内を縦横し、またJR和歌山線が紀の川と平行して走っています。 隣接する市町村は、東に橋本市、九度山町、高野町、奈良県野迫川村、北に大阪府河内長野市、和泉市、岸和田市、西に紀の川市、南に紀美野町、有田川町があり、まちの境界は一部府県界、郡界にもなっています。