Санкт-Петербург расположен на побережье Финского залива Балтийского моря в устье реки Невы и на островах ее дельты. На прилегающей к Неве низменности и ее продолжении вдоль залива находятся ближайшие пригороды. Несмотря на общую равнинность рельеф окрестностей разнообразен. К юго-западу от города выделяется Ижорская возвышенность, к северу - возвышенности Карельского перешейка, Приморско-Вуоксинский озерный район. Эти места живописны в любое время года, привлекают туристов и отдыхающих.
На берегах Невы восхитительны белые ночи. Они наступают 25-26 мая и заканчиваются 16-17 июля, продолжаясь более 50 дней. Наибольшая продолжительность дня приходится на 21-22 июня (18453 мин), когда солнце лишь незначительно заходит за горизонт и на "ночном" небе неразличимы даже самые яркие звезды.
Город расположен на 60 град.с.ш., т.е. на той широте, которая проходит через южную часть Аляски, Чукотку, Гренландию. Из крупных городов примерно на той же широте находятся Стокгольм, Осло, Хельсинки, в каждом из них сказывается влияние теплого течения в Атлантике - Гольфстрим. В Западном полушарии крупных городов на этой и близких к ней широтах городов нет. Пулковский меридиан (31 град.в.д.) пересекает Санкт-Петербург, а также (примерно) Киев, Стамбул, Каир, но ни один из последних городов не является аналогом в природном отношении городу на неве