Záhorovice is located about 23 kilometres (14 mi) east of Uherské Hradiště and 24 km (15 mi) south of Zlín. It lies on the border between the Vizovice Highlands and White Carpathians. The highest point is the hill Valy at 470 m (1,540 ft) above sea level. The Olšava River flows through the municipality.