There are 5 ways to get from Batam to Semarang by plane, ferry, bus, 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
best- Fly from Hang Nadim International Airport (BTH) to Ahmad Yani (SRG)BTH - SRG
2h 28mRp 1,635,561–2,161,663Ferry, bus via Cibubur
cheapest- Take the ferry from Batu Ampar to Port of Tanjung Priok
- Take the bus from Tanjung Priok to Kampung Rambutan10D
- Take the bus from Jakarta Kampung Rambutan Bus Station to Semarang
2d 2hRp 584,261–871,401Ferry, bus
- Take the ferry from Batu Ampar to Port of Tanjung PriokKM Kelud
- Take the bus from DAMRI Bus Station Jakarta to SemarangJakarta - Semarang
43h 57mRp 585,760–1,032,900Ferry, train via Jakarta
- Take the ferry from Batu Ampar to Port of Tanjung PriokKM Kelud
- Take the train from Jakarta Gambir to Semarang TawangArgo Bromo Anggrek / ...
44h 17mRp 660,261–837,401Ferry, train
- Take the ferry from Batu Ampar to Port of Tanjung PriokKM Kelud
- Take the train from Pasar Senen to Semarang PoncolTawang Jaya / ...
45h 35mRp 654,261–821,401
Hang Nadim International Airport (BTH) to Ahmad Yani (SRG) flights
Questions & Answers
The cheapest way to get from Batam to Semarang is to ferry and train which costs Rp650000 - Rp850000 and takes 45h 35m.
The fastest way to get from Batam to Semarang is to fly which takes 2h 28m and costs Rp1600000 - Rp2200000.
The distance between Batam and Semarang is 1162 km.
The best way to get from Batam to Semarang without a car is to ferry and bus which takes 43h 57m and costs Rp550000 - Rp1100000.
It takes approximately 2h 28m to get from Batam to Semarang, including transfers.
There are 433+ hotels available in Semarang.
What companies run services between Batam, Indonesia and Semarang, Indonesia?
Super Air Jet, Batik Air, and two other airlines fly from Hang Nadim International Airport (BTH) to Ahmad Yani (SRG) 5 times a day.
- Website
- garuda-indonesia.com
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h 32m
- When
- Monday, Tuesday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- Rp 1,600,000–6,000,000
- Website
- superairjet.com
Flights from Hang Nadim International Airport to Ahmad Yani
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- Rp 1,500,000–1,900,000
- Website
- batikair.com
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- Rp 1,500,000–4,000,000
- Website
- citilink.co.id
Flights from Hang Nadim International Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- Rp 1,200,000–2,800,000
Train from Jakarta Gambir to Semarang Tawang
- Ave. Duration
- 4h 49m
- Frequency
- Every 4 hours
- Estimated price
- Rp 260,000–350,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 260,000–350,000
- Business
- Rp 430,000–550,000
- Executive
- Rp 490,000–700,000
Train from Pasar Senen to Semarang Poncol
- Ave. Duration
- 5h 58m
- Frequency
- Every 4 hours
- Estimated price
- Rp 260,000–350,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 260,000–350,000
- Business
- Rp 420,000–550,000
- Executive
- Rp 480,000–700,000
- Phone
- (021) 1500 825
- humas@damri.co.id
- Website
- damri.co.id
Bus from DAMRI Bus Station Jakarta to Semarang
- Ave. Duration
- 6h
- Frequency
- Once daily
- Estimated price
- Rp 130,000–480,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- 1500102
- naektije@transjakarta.co.id
- Website
- transjakarta.co.id
Bus from Tanjung Priok to Kampung Rambutan
- Ave. Duration
- 2h 13m
- Frequency
- Hourly
- Estimated price
- Rp 3,501
- Schedules at
- transjakarta.co.id
- Phone
- +62291440019
- cs@nu3tara.com
- Website
- nu3tara.com
Bus from Jakarta Kampung Rambutan Bus Station to Semarang
- Ave. Duration
- 9h 11m
- Frequency
- Twice daily
- Estimated price
- Rp 190,000–400,000
- Book at
- https://12go.asia/en/operator/nusantara
- Phone
- +62 811-1621-162
- infopelni162@pelni.co.id
- Website
- facebook.com
Ferry from Batu Ampar to Port of Tanjung Priok
- Ave. Duration
- 36h 45m
- Frequency
- Once daily
- Estimated price
- Rp 390,000–470,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 390,000–470,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 Why you should take the train in the US, How to plan an amazing trip around Scandinavia, and Italy Travel Guides - to help you get the most out of your next trip.















