Hirschhorn liegt an einer Doppelschleife des Neckars ungefähr 19 km östlich von Heidelberg. Der Neckar hat sich hier in die bewaldeten Höhen des Odenwaldes eingegraben. Bis auf den Stadtteil Ersheim erstreckt sich Hirschhorn auf der rechten Neckarseite, somit nördlich des Flusses.