There are 4 ways to get from Semarang to Batam by plane, ferry, train, car ferry or bus

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Fly to Batam  •  2 h 21 min

  1. Fly from Semarang (SRG) to Batam (BTH) SRG - BTH

$62 - $199

3 alternative options

Fly to Singapore Changi, ferry  •  4 h 8 min

  1. Fly from Semarang (SRG) to Singapore Changi (SIN) SRG - SIN
  2. Take the ferry from Harbourfront Centre to Batam Centre

$78 - $473

Train, car ferry, ferry  •  3 days 4 h

  1. Take the train from Semarang Tawang to Jatinegara
  2. Take the car ferry from Tanjung Priok to Kijang
  3. Take the ferry from Tanjung Pinang to Tanah Merah
  4. Take the ferry from Tanah Merah to Batam Centre

$79 - $124

Bus, car ferry, ferry  •  3 days 11 h

  1. Take the bus from Weleri to Jakarta Tanjung Priok Bus Station
  2. Take the car ferry from Tanjung Priok to Kijang
  3. Take the ferry from Tanjung Pinang to Tanah Merah
  4. Take the ferry from Tanah Merah to Batam Centre

$81 - $121

Questions & Answers

The distance between Semarang and Batam is 1150 km.

It takes approximately 2 h 21 min to get from Semarang to Batam, including transfers.

More details

The quickest flight from Semarang Airport to Batam Airport is the direct flight which takes 1 h 55 min.

Search flights

Citilink Indonesia, Lion Mentari Airlines and Garuda Indonesia offer flights from Semarang Airport to Batam Airport.

Search flights

There are 388+ hotels available in Batam. Prices start at $20 USD per night.

More details

The best way to get from Semarang to Semarang Airport is to taxi which takes 5 min and costs .

More details

Map of how to get from Semarang to Batam.
Launch map view
  • Distance: 719 miles
  • Duration: 2 h 21 min

What companies run services between Semarang, Indonesia and Batam, Indonesia?

Lion Mentari Airlines, Garuda Indonesia and Citilink Indonesia fly from Semarang to Batam every 4 hours.

Airlines
Garuda Indonesia
Website
garuda-indonesia.com
Flights from Semarang to Batam via Soekarno–Hatta
Ave. Duration
4 h 6 min
When
Every day
Estimated price
$110 - $400
Flights from Semarang to Singapore Changi
Ave. Duration
2 h
When
Monday, Wednesday, Friday and Sunday
Estimated price
$130 - $300
Flights from Semarang to Singapore Changi via Soekarno–Hatta
Ave. Duration
4 h 23 min
When
Every day
Estimated price
$150 - $440
Flights from Semarang to Singapore Changi via Surabaya
Ave. Duration
4 h 50 min
When
Every day
Estimated price
$130 - $300
Lion Mentari Airlines
Website
lionair.co.id
Flights from Semarang to Batam
Ave. Duration
1 h 55 min
When
Every day
Estimated price
$55 - $190
Flights from Semarang to Batam via Soekarno–Hatta
Ave. Duration
3 h 55 min
When
Every day
Estimated price
$60 - $200
SilkAir
Website
silkair.com
Flights from Semarang to Singapore Changi
Ave. Duration
2 h
When
Monday, Wednesday, Friday and Sunday
Estimated price
$130 - $300
Citilink Indonesia
Website
Flights from Semarang to Batam via Soekarno–Hatta
Ave. Duration
4 h 25 min
When
Every day
Estimated price
$65 - $240
Indonesia AirAsia
Website
airasia.com
Flights from Semarang to Singapore Changi
Ave. Duration
2 h 5 min
When
Monday, Wednesday, Friday and Sunday
Estimated price
$60 - $360
Batik Air
Website
batikair.com
Flights from Semarang to Singapore Changi via Soekarno–Hatta
Ave. Duration
3 h 40 min
When
Tuesday, Thursday and Saturday
Estimated price
$65 - $240
Train operators
Bus operators
Kramat Djati
Website
kramatdjati.co.id
Bus from Weleri to Jakarta Tanjung Priok Bus Station
Ave. Duration
12 h
Frequency
Once daily
Estimated price
$7 - $10
Schedules at
kramatdjati.co.id
Book at
easybook.com
Ferry operators
Batam Fast Ferries
Website
batamfast.com
Ferry from Harbourfront Centre to Batam Centre
Ave. Duration
1 h
Frequency
Hourly
Estimated price
$19
Schedules at
batamfast.com
Horizon ferry
Website
horizonfastferry.com
Ferry from Harbour Front to Batam Centre
Ave. Duration
1 h
Frequency
Hourly
Estimated price
$24
Schedules at
horizonfastferry.com
Majestic Fast Ferry
Website
majesticfastferry.com.sg
Ferry from Harbour Front to Batam Centre
Ave. Duration
1 h
Frequency
Hourly
Estimated price
$19
Schedules at
majesticfastferry.com.sg
Ferry from Tanah Merah to Batam Centre
Ave. Duration
45 min
Frequency
4 times a day
Estimated price
$19
Schedules at
majesticfastferry.com.sg
Sindo Ferry
Phone
+65 6331 4123
Email
booking@sindoferry.com.sg
Website
sindoferry.com.sg
Ferry from Singapore Harbour Front to Batam Centre
Ave. Duration
1 h 40 min
Frequency
Hourly
Estimated price
$13
Schedules at
sindoferry.com.sg
Ferry from Tanjung Pinang to Tanah Merah
Ave. Duration
50 min
Frequency
4 times a day
Estimated price
$22
Schedules at
sindoferry.com.sg
Pelni
Website
pelni.co.id
Car ferry from Tanjung Priok to Kijang
Ave. Duration
2 days 16 h
Frequency
Once a week
Estimated price
$30 - $60
Schedules at
pelni.co.id

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, What are the different types of Renfe trains in Spain? and Travelling Croatia’s Dalmatian Coast by boat, bus, car and train - to help you get the most out of your next trip.