There are 7 ways to get from Saint Petersburg to Petrozavodsk by train, bus, rideshare, car, or taxi
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Ladozhsky Railway Terminal
best- Take the train from Ladozhsky Railway Terminal to Petrozavodsk Passtrain 806Ч / ...
6h 12m₽1,260–3,486Rideshare
cheapest- Take the rideshare from Saint Petersburg to Petrozavodsk424.4 km
6h 20m₽700Bus
- Take the bus from Saint Petersburg Bus Terminal to Petrozavodsk Bus stationbus
7h 20m₽1,200–2,000Bus via Pryazha
- Take the bus from Saint Petersburg Bus Terminal to Pryazhabus 1098
- Take the bus from Pryazha to Petrozavodsk Bus stationbus 1098
8h 40m₽2,090–3,300Train
- Take the train from Finlyandsky Railway Terminal to Petrozavodsk Passtrain 160B
11h 50m₽1,305–4,100Drive 420.1 km
- Drive from Saint Petersburg to Petrozavodskcar 420.1 km
6h 9m₽2,847–4,113Taxi
- Take the taxi from Saint Petersburg to Petrozavodsktaxi 420.1 km
6h 9m₽7,500–9,500
Questions & Answers
The cheapest way to get from Saint Petersburg to Petrozavodsk is to rideshare which costs RUB 700 and takes 6h 20m.
The fastest way to get from Saint Petersburg to Petrozavodsk is to drive which takes 6h 9m and costs RUB 2800 - RUB 4200.
Yes, there is a direct bus departing from Saint Petersburg Bus Terminal and arriving at Petrozavodsk Bus station station. Services depart four times a day, and operate every day. The journey takes approximately 7h 20m.
Yes, there is a direct train departing from Finlyandsky Railway Terminal and arriving at Petrozavodsk Pass. Services depart once daily, and operate every day. The journey takes approximately 11h 50m.
The distance between Saint Petersburg and Petrozavodsk is 396 km. The road distance is 420.1 km.
The best way to get from Saint Petersburg to Petrozavodsk without a car is to train via Ladozhsky Railway Terminal which takes 6h 12m and costs RUB 1200 - RUB 3500.
It takes approximately 6h 12m to get from Saint Petersburg to Petrozavodsk, including transfers.
Saint Petersburg to Petrozavodsk bus services, operated by Karelavtotrans, depart from Saint Petersburg Bus Terminal station.
Saint Petersburg to Petrozavodsk train services, operated by Russian Railways (Lastochka Trains), depart from Ladozhsky Railway Terminal station.
The best way to get from Saint Petersburg to Petrozavodsk is to train via Ladozhsky Railway Terminal which takes 6h 12m and costs RUB 1200 - RUB 3500. Alternatively, you can bus, which costs RUB 1200 - RUB 2000 and takes 7h 20m.
What companies run services between Saint Petersburg, Russia and Petrozavodsk, Russia?
Russian Railways (Lastochka Trains) operates a train from Ladozhsky Railway Terminal to Petrozavodsk Pass twice daily. Tickets cost ₽1,200–2,000 and the journey takes 4h 59m. Russian Railways (РЖД) also services this route twice daily. Alternatively, Karelavtotrans operates a bus from Saint Petersburg Bus Terminal to Petrozavodsk Bus station twice daily. Tickets cost ₽1,200 and the journey takes 7h 20m. Two other operators also service this route.
- Phone
- 8 (800) 775-00-00
- Website
- Russian Railways
Train from Ladozhsky Railway Terminal to Petrozavodsk Pass
- Ave. Duration
- 4h 59m
- Frequency
- Twice daily
- Estimated price
- ₽1,200–2,000
- Website
- Russian Railways
- Lastochka Train
- ₽1,200–1,800
- Commuter Electric Train
- ₽1,300–2,000
- Phone
- 8 (800) 775-00-00
- Website
- Russian Railways
Train from Ladozhsky Railway Terminal to Petrozavodsk Pass
- Ave. Duration
- 5h 54m
- Frequency
- Twice daily
- Estimated price
- ₽1,400–3,400
- Website
- Russian Railways
- 1nd Class (SW)
- ₽8,000–12,000
- 3rd Class (Platzcart)
- ₽1,400–1,900
- 2nd Class (Kupé)
- ₽2,400–3,400
Train from Finlyandsky Railway Terminal to Petrozavodsk Pass
- Ave. Duration
- 11h 50m
- Frequency
- Once daily
- Estimated price
- ₽1,305–4,100
- Website
- Russian Railways
- 1nd Class (SW)
- ₽9,500–13,000
- 3rd Class (Platzcart)
- ₽1,800–2,400
- 2nd Class (Kupé)
- ₽2,900–4,100
- Phone
- +7 (8142) 72-20-12
- [email protected]
- Website
- Karelavtotrans
Bus from Saint Petersburg Bus Terminal to Petrozavodsk Bus station
- Ave. Duration
- 7h 20m
- Frequency
- Twice daily
- Estimated price
- ₽1,200
- Website
- Karelavtotrans
- Schedules at
- Karelavtotrans
- Phone
- +7 812 386 79 79
- [email protected]
- Website
- ecolines.ru
Bus from Saint Petersburg Bus Terminal to Petrozavodsk Bus station
- Ave. Duration
- 7h 40m
- Frequency
- Once daily
- Estimated price
- ₽1,200–2,000
- Schedules at
- ecolines.ru
Bus from Saint Petersburg Bus Terminal to Pryazha
- Ave. Duration
- 6h 45m
- Frequency
- Once daily
- Estimated price
- ₽1,100–2,000
- Schedules at
- ecolines.ru
Bus from Pryazha to Petrozavodsk Bus station
- Ave. Duration
- 55 min
- Frequency
- Once daily
- Estimated price
- ₽900–1,300
- Schedules at
- ecolines.ru
- Phone
- +7-812-612-82-30
- [email protected]
- Website
- bus.sovavto.ru
Bus from Saint Petersburg Bus Terminal to Petrozavodsk Bus station
- Ave. Duration
- 8h 30m
- Frequency
- Once daily
- Estimated price
- ₽1,490
- Schedules at
- bus.sovavto.ru
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar
Rideshare from Saint Petersburg to Petrozavodsk
- Ave. Duration
- 6h 20m
- Frequency
- Every 4 hours
- Estimated price
- ₽700
- Schedules at
- BlaBlaCar
- Ave. Duration
- 6h 9m
- Estimated price
- ₽7,500–9,500
Citymobil
- Phone
- +7 812 404-44-44
- Website
- city-mobil.ru
Maxim
- Phone
- +7 812 455-55-55
- Website
- taximaxim.ru
Yandex Taxi
- Phone
- +7 812 366-66-66
- Website
- taxi.yandex.ru
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including The London Underground: Essential tips to navigate the Tube, How to get from Florence to Rome, and How do I buy a London Underground ticket? - to help you get the most out of your next trip.
More Questions & Answers
Saint Petersburg to Petrozavodsk bus services, operated by Karelavtotrans, arrive at Petrozavodsk Bus station.
Saint Petersburg to Petrozavodsk train services, operated by Russian Railways (Lastochka Trains), arrive at Petrozavodsk Pass station.
Yes, the driving distance between Saint Petersburg to Petrozavodsk is 420 km. It takes approximately 6h 9m to drive from Saint Petersburg to Petrozavodsk.
Check out Blablacar's carpooling service for rideshare options between Saint Petersburg and Petrozavodsk. A great option if you don't have a driver's licence or want to avoid public transport.






