Puck liegt in der historischen Region Pommerellen an der flachen Pucka-Bucht, einem Teil der Danziger Bucht, etwa 45 Kilometer nordwestlich von Danzig. Die Stadt mit ihrem kleinen Hafen ist umgeben von der Weite der Ostsee und zählt zu den Zentren der kaschubischen Kultur.
Erstmals erwähnt wurde der Ort im 12. Jahrhundert unter dem Namen Bugustin, als ein pommerellischer Fürst hier eine Siedlung anlegte. Später stand Puck unter der Herrschaft des Deutschen Ordens, der ihr 1348 Stadtrechte verlieh. Die Stadt wechselte mehrfach die Landesherrschaft, gehörte zu Preußen Königlichen Anteils und später zu Polen, bevor sie nach den Teilungen Polens preußisch wurde. Ein besonderer Moment war 1920, als hier die symbolische „Vermählung Polens mit dem Meer“ stattfand, die noch heute jährlich gefeiert wird.
Die Stadt prägt ein ungewöhnliches Wappen mit einem goldenen Löwen, der an einem silbernen Lachs nagt, das auf eine schwedische Legende zurückgeht. Historisch bedeutsam ist die ehemalige Ordensburg, die vom Deutschen Orden errichtet und später von polnischen Landräten genutzt wurde. Heute zieht Puck mit seinem Yachthafen, dem Rathaus und der Pfarrkirche Besucher an. Die Umgebung mit ihren Sandstränden und dem Meer macht die Stadt zu einem beliebten Ausflugsziel an der Ostsee.