Hjarnø er en flad moræne ø.
Øens højeste punkt er godt 7 m. Øen blev dannet i istiden. Øens sydøstlige kyst har stejle lerede skrænter, da havstrømmende fører mere vand ind i Horsens Fjord, og dermed gør at havet æder af kysten. Dette gør at Hjarnø langsom ændrer sig.