Миллион лет назад, в конце третичного периода, на территории, ныне занимаемой Санкт-Петербургом и его окрестностями, находились лиственные леса, протекали многоводные реки. Но в периоды похолодания климата этот район неоднократно покрывался материковыми льдами, которые сползали со Скандинавского полуострова. Толщина ледяного покрова на месте, где сейчас стоит город, превышала 1000 метров. Эпоха великого оледенения продолжалась несколько десятков тысяч лет.
Последнее отступление ледника началось 20-25 тысяч лет тому назад. Окончательно же он покинул эти места около 12 тысяч лет назад, оставив после себя морену из крупных валунов, гальки, песка и глины.
После отступления ледника образовалось приледниковое озеро. В дальнейшем из-за геологических и климатических изменений этот район неоднократно заполняли водные бассейны. Около 10000-7500 лет назад на месте части нынешнего Балтийского моря находился пресноводный замкнутый бассейн - Анциловое озеро (свои названия многие водоемы получили от распространенных в те эпохи моллюсков, остатки которых были найдены в осадочных породах морей). Восточный берег Анцилового озера проходил в районе острова Котлин.
Невы в ту пору еще не было. На ее месте несли свои воды две реки (нынешние Мга и Тосна), между которыми на месте будущих Ивановских порогов находился водораздел. Мга, поворачивая от него, уходила на северо-восток и впадала в Ладожское озеро, а Тосна от водораздела направлялась на северо-запад и вливалась в Анциловое озеро за островом Котлин. Ладожское озеро в ту пору имело выход в Анциловое озеро на севере Карельского перешейка.
Примерно 7500 лет назад в резултате новых геологических изменений воды Северного моря хлынули в Анциловое озеро и превратили его в море, получившее наименование Литоринового. Оно вдавалось в сушу узким проливом. Но с поднятием земной коры Литориновое море стало отступать и сокращаться в размерах. Это привело около 4000 лет назад к образованию Древне-Балтийского моря.
С поднятием суши Карельского перешейка исчезла протока, по которой Ладога сбрасывала часть своих вод в море. Это привело к подъему уровня воды в озере. Выйдя из берегов и затопив долину Мги, воды Ладоги подошли к реке Тосне и, прорвав водораздел, устремились по готовому руслу реки Тосны к Финскому заливу. Так, около 4000-4500 лет назад, человек стал свидетелем рождения Невы. Следовательно, река, на которой возник город, в геологическом отоношении сравнительно молодая. Нева с дельтой в очертаниях, близких к современным, сложилась около 2500 лет назад.
О происхождении названия реки, на которой основан Санкт- Петербург, нет единого мнения.
Многие исследователи считают, что река Нева получила свое имя от древнего финского названия Ладожского озера - Нево (морской залив, море). В "Повести временных лет" наименование "Нево" имело отношение и к Ладожскому озеру, и к реке. Известно также, что Неву, некогда представлявшую собой широкий пролив, называли еще устьем озера Нево (Ладожского озера). Так, в русской летописи говорится: "...и того озера Нево иде устье в море Варяжское".
Некоторые историки ссылаются на шведские источники VII-VIII веков, где река встречается под названием "Ну" (или "Нью"), что на русском языке означает "Новая". Название "Ну" находим и в договорах Новгорода с немецкими городами, датированных 1269 годом.