Watch Out For
St. Petersburg is a challenging place to visit. First and foremost, if you're not on a shore excursion and want to go it on your own, you need a Russian visa, and you have to apply for it in advance of your trip.
There is one exception and it's big one. Some local tour operators such as Red October and Denrus with special certification have earned the right to carry passengers without a visa -- though you will have to register and show your ship a copy of your confirmed tour receipt before you can debark.
Also, don't drink the tap water; stick to bottled varieties and go easy on ice in your drinks as well. The water is not up to Western standards, and may cause "traveler's tummy" (stomach upset).
Follow this link to DenRus Tour Information