We took a train from the station in the town we were docked at (Rosyth) into Edinburgh for the day. Only 5 pounds return. Were lucky enough to be there on Armed Services Day, with parades and bands (pipers). A beautiful city and more easily managed than London. We walked everywhere. Prices didn't seem too bad.
Took the Hop on Hop off bus from town and did two of the three routes. Broke the routes up with a walk through the Old Town (the only way to see it). Amazing. Just like being back in the 13th century! The Hop off Hop on even dropped us fairly near the ship at the end of the route.
We took a tour with Alla tours, two days for $300. plus tips. We didn't get a Russian Visa before leaving home and so had to find a company who could provide us a tour and take care of the visa. Many companies provide this service. At $275-400 for two days in a group of not more than 16, it was a good buy compared to what the same attractions on a ships tour would have cost. A good tour and good guide. Covered almost every major attraction and timed things very well. My major complaint was that on the second day we were shuttled to a gift shop (owned by Alla) to pay for the tour. There were only 2 cashiers to take those payments and lines around the corner. But there were dozens of cashiers to take money for OVERPRICED souvenirs. It wasted an hour and a half of the second day's sightseeing.
There was a special price for 4 Baltic Pearls (Tallinn, Helsinki, Berlin and 2 days in St. Petersburg for only $400 through SPB-tours.com, but the group had to be at least 8 people and I could only get 4. Started planning too late. If you can put together a group of 8 or more and it is offered, it is a steal.