Der Heimathafen (früher auch: Registerhafen[2]; englisch home port oder port of registry) eines Schiffes ist der Ort, an dem das Schiff in einem dort geführten Schiffsregister registriert ist.[3] Bei Binnenschiffen spricht man in Deutschland von Heimatort.[4]
Ein Schiff muss diesen Hafen nicht zwingend irgendwann anlaufen. Schiffe, die die Flagge eines Binnenlandes führen, sind dazu oftmals überhaupt nicht in der Lage. Auch durch Ausflaggung gibt es Schiffe, die in ihrem Heimathafen noch nie gesehen wurden. Fischereifahrzeuge müssen jedoch in den Fischereikennzeichen einen Hinweis auf den Heimathafen tragen.
Der Staat, dessen Flagge ein Schiff führt, ist weitgehend für das an Bord des Schiffes geltende Recht verantwortlich. So kann er Ausrüstungs- und Arbeitssicherheitsvorschriften erlassen und das für die Mannschaft gültige Arbeitsrecht bestimmen.