Не существует ясности в том, сколько же на самом деле островов располагается в Санкт-Петербурге. Кроме того, в Финском заливе существует так называемый Кронштадтский архипелаг, включающий в себя остров Котлин, на котором находится город Кронштадт, а также 21 форт одноимённой крепости (из них 17 фортов лежит в административных границах Петербурга). Общая площадь островов — около 80 км² (6 % от всей площади Санкт-Петербурга в административных границах или 14 % от площади внутригородской черты).
Форты Петербурга начали создаваться несколько раньше основания города, и сразу же стали и продолжали оставаться более чем в течение двух веков надёжной защитой города от нападения с моря.
Острова Петербурга возможно разделить на две большие группы: естественные и искусственные. Первые образованы многочисленными рукавами Невы. В эту группу входят наиболее крупные острова: Васильевский, Петроградский, Крестовский и другие. Число островов, входящих во вторую группу, непостоянно: в результате засыпки отдельных протоков и прокопки каналов одни острова исчезали, другие — появлялись. Так появился остров Новая Голландия и исчез остров Жадимировского.
К моменту возникновения Петербурга островов было несколько меньше, чем мы их видим сейчас.
В XVIII веке с устройством многочисленных протоков и каналов выросло число островов. Однако многие из каналов были вскоре засыпаны: так в 1737 году исчезли прорытые ранее каналы на месте нынешних линий Васильевского острова. К началу XIX века в результате устройства многочисленных искусственных проток и каналов их стало 101. С середины XIX века начались работы по благоустройству центра города, сопровождавшиеся засыпкой некоторых водоёмов и водотоков, что привело к уменьшению числа островов.