Die Stadt liegt etwa 100 km nördlich von Berlin und 50 km westlich von Stettin (Polen). In Prenzlau verlässt der Fluss Ucker den Unteruckersee (größter der zahlreichen Uckermärkischen Seen) auf dem Weg nach Norden Richtung Ostsee in das Stettiner Haff. Das Stadtgebiet grenzt im Südwesten an den Naturpark „Uckermärkische Seen“, und im Süden schließen sich die beiden größten Seen der Uckermark an die Stadt Prenzlau an: der Unteruckersee und der im Biosphärenreservat Schorfheide-Chorin liegende Oberuckersee.