The main Baltic cruise season lasts from late April to September. July and August provide the sunniest weather, but with the downside of having the biggest crowds. As such the best option is often June or September, when the weather is still pleasant (although you’ll still need warm clothes in the evenings). Prices will also be a little cheaper then too.
June is a great time to visit St Petersburg as you’ll get to experience the city at the height of its White Nights season, when the near-Midnight Sun ensures the skies never go completely dark. The period is marked by an extensive festival programme, with the highpoint being the magical fireworks display known as the Scarlet Sails celebration, which takes place close to the summer solstice.
In December it’s also possible to book a special Christmas cruise that visits some of Europe’s best winter markets, such as Amsterdam, Oslo and Copenhagen. You won’t find any itineraries heading farther west, though, as the waters there often ice over in the winter!