大阪府の北東部にあり、木津川・宇治川・桂川が合流する淀川右岸に位置し、全体の約7割を山岳丘陵地が占め、丹波山地先端の天王山南側の平坦地に市街地を構成しています。
東は淀川を隔て、枚方市、京都府八幡市と相対し、南および西は高槻市、北は京都市および京都府長岡京市、大山崎町に隣接。狭い平坦地には、国道171号、東海道新幹線、阪急京都線、JR東海道本線、名神高速道路の主要幹線が通っています。
また、大阪・京都の中間で交通の便もよく、豊かな緑や水という良好な生活環境から、衛星都市のベッドタウンとして発展を遂げています。