There are 7 ways to get from Shanghai to Surabaya by plane or train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Shanghai Hongqiao International Airport to Juanda International Airport
best- Fly from Shanghai Hongqiao International Airport (SHA) to Juanda International Airport (SUB)plane SHA - SUB
12h 51mRp 2,420,718–8,081,218Fly Shanghai Pudong International Airport to Juanda International Airport
- Fly from Shanghai Pudong International Airport (PVG) to Juanda International Airport (SUB)plane PVG - SUB
13h 53mRp 2,854,480–9,714,983Fly Shanghai Pudong International Airport to Abdul Rachman Saleh Airport, train
- Fly from Shanghai Pudong International Airport (PVG) to Abdul Rachman Saleh Airport (MLG)plane PVG - MLG
- Take the train from Lawang to Gubengtrain
17hRp 4,979,980–13,574,983Train to Sunan Shuofang International Airport, fly to Juanda International Airport
- Take the train from Shanghai station to Wuxitrain
- Fly from Sunan Shuofang International Airport (WUX) to Juanda International Airport (SUB)plane WUX - SUB
15h 59mRp 3,584,270–10,371,456Train to Hangzhou Xiaoshan International Airport, fly to Juanda International Airport
- Take the train from Shanghai Hongqiao to Hangzhou Easttrain
- Fly from Hangzhou Xiaoshan International Airport (HGH) to Juanda International Airport (SUB)plane HGH - SUB
15h 41mRp 3,016,407–8,956,907Train to Ningbo Lishe International Airport, fly to Juanda International Airport
- Take the train from Shanghai Hongqiao to Ningbotrain
- Fly from Ningbo Lishe International Airport (NGB) to Juanda International Airport (SUB)plane NGB - SUB
16h 48mRp 4,032,407–9,245,907Fly Shanghai Pudong International Airport to Adisumarmo International Airport, train
- Fly from Shanghai Pudong International Airport (PVG) to Adisumarmo International Airport (SOC)plane PVG - SOC
- Take the train from Solo Balapan to Surabaya Gubengtrain
16h 56mRp 4,301,980–11,471,983
Shanghai Hongqiao International Airport (SHA) to Juanda International Airport (SUB) flights
Comparing Your Travel Options
The cheapest way to get from Shanghai to Surabaya is to fly which costs Rp2400000 - Rp8500000 and takes 12h 51m.
The fastest way to get from Shanghai to Surabaya is to fly which takes 12h 51m and costs Rp2400000 - Rp8500000.
The distance between Shanghai and Surabaya is 4419 km.
It takes approximately 12h 51m to get from Shanghai to Surabaya, including transfers.
Surabaya is 1h behind Shanghai. It is currently 6:22 PM in Shanghai and 5:22 PM in Surabaya.
There are 953+ hotels available in Surabaya.
What companies run services between Shanghai, China and Surabaya, Indonesia?
China Southern Airlines, China Eastern Airlines, and five other airlines fly from Shanghai Hongqiao International Airport (SHA) to Juanda International Airport (SUB) 4 times a day.
- Website
- csair.com
Flights from Shanghai Hongqiao International Airport to Juanda International Airport via Guangzhou Baiyun
- Ave. Duration
- 8h 45m
- When
- Every day
- Estimated price
- Rp 2,800,000–9,500,000
Flights from Shanghai Pudong International Airport to Juanda International Airport via Guangzhou Baiyun
- Ave. Duration
- 16h 5m
- When
- Every day
- Estimated price
- Rp 2,700,000–9,000,000
Flights from Sunan Shuofang International Airport to Juanda International Airport via Guangzhou Baiyun
- Ave. Duration
- 10h 38m
- When
- Every day
- Estimated price
- Rp 3,200,000–11,000,000
Flights from Hangzhou Xiaoshan International Airport to Juanda International Airport via Guangzhou Baiyun
- Ave. Duration
- 8h 32m
- When
- Every day
- Estimated price
- Rp 3,000,000–10,000,000
Flights from Ningbo Lishe International Airport to Juanda International Airport via Guangzhou Baiyun
- Ave. Duration
- 10h 15m
- When
- Every day
- Estimated price
- Rp 2,700,000–9,000,000
- Phone
- 021-121
- [email protected]
- Website
- kai.id
Train from Lawang to Gubeng
- Ave. Duration
- 1h 26m
- Frequency
- Once daily
- Estimated price
- Rp 45,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 45,000–320,000
- Business
- Rp 300,000–550,000
- Executive
- Rp 80,000–650,000
Train from Solo Balapan to Surabaya Gubeng
- Ave. Duration
- 3h 12m
- Frequency
- Every 3 hours
- Estimated price
- Rp 150,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 150,000–320,000
- Business
- Rp 360,000–550,000
- Executive
- Rp 280,000–700,000
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 How to get from Gatwick Airport into central London, Travelling by boat in Italy, and How to get from Stansted Airport into central London - to help you get the most out of your next trip.






