There are 8 ways to get from Johor to Kepala Batas by plane, car ferry, taxi, train, bus or car
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 Senai to Penang, car ferry, taxi • 3h 41m
RM 170 - RM 298
Cheapest option
Train • 12h 38m
RM 116 - RM 161
6 alternative options
Fly Singapore Changi to Penang, car ferry, taxi • 4h 24m
RM 360 - RM 878
Fly Senai to Alor Setar, train • 3h 37m
RM 157 - RM 368
Bus, train • 10h 22m
RM 120 - RM 142
Bus • 10h 41m
RM 125 - RM 150
Bus via Sungai Petani • 11h 13m
RM 125 - RM 140
Drive • 7h 11m
RM 130 - RM 190
Travel safe during COVID-19
Rules to follow in Malaysia
1m
Mandatory
Travel within Malaysia
Observe COVID-19 safety rules
Regional restriction measures in place
COVID-19 help in Malaysia
If you need help, visit the national COVID-19 website or call the COVID-19 Helpline 03 88810200
Frequently Asked Questions
There are currently travel restrictions within Malaysia.
Explore options for future travelDomestic travel is not restricted, but some conditions may apply
- Face masks are mandatory
- There is a social distancing requirement of 1 metre
- Observe COVID-19 safety rules
- Regional restriction measures in place
The national COVID-19 helpline number in Kepala Batas is 03 88810200.
Wearing a face mask on public transport in Kepala Batas is mandatory.
The social distance requirement in Kepala Batas is 1 metre.
Make yourself known to an official member of staff and/or call the national coronavirus helpline number on 03 88810200.
Last updated: 19 Jan 2021
Exceptions may apply, for full details: Ministry of Health Malaysia.
We're working around the clock to bring you the latest COVID-19 travel updates.
This information is compiled from official sources. To the best of our knowledge, it is correct as of the last update.
Visit Rome2rio travel advice for general help.
Questions & Answers
The cheapest way to get from Johor to Kepala Batas is to bus and train which costs RM 120 - RM 150 and takes 10h 22m.
The quickest way to get from Johor to Kepala Batas is to fly and train which costs RM 150 - RM 370 and takes 3h 37m.
The distance between Johor and Kepala Batas is 514 km. The road distance is 690 km.
The best way to get from Johor to Kepala Batas without a car is to bus and train which takes 10h 22m and costs RM 120 - RM 150.
It takes approximately 3h 41m to get from Johor to Kepala Batas, including transfers.
The best way to get from Johor to Kepala Batas is to bus which takes 10h 41m and costs RM 120 - RM 150. Alternatively, you can train, which costs RM 110 - RM 170 and takes 12h 38m.
The quickest flight from Senai Airport to Penang Airport is the direct flight which takes 1h 10m.
Yes, the driving distance between Johor to Kepala Batas is 690 km. It takes approximately 7h 11m to drive from Johor to Kepala Batas.
Malaysia Airlines, Firefly and AirAsia offer flights from Senai Airport to Penang Airport.
There are 890+ hotels available in Kepala Batas. Prices start at RM 500 per night.

- Distance: 514 km
- Duration: 3h 41m
What companies run services between Johor, Malaysia and Kepala Batas, Pulau Pinang, Malaysia?
KPB Express operates a bus from Johor Bahru to Butterworth 4 times a day. Tickets cost RM 65 and the journey takes 9h 9m. Mayang Sari Express also services this route once daily. Alternatively, you can take a train from Johor Bahru to Kepala Batas via Gemas and Tasek Gelugor in around 12h 38m.

- Website
- airasia.com
Flights from Senai to Penang
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- RM 150 - RM 370
Flights from Senai to Penang via Kuala Lumpur
- Ave. Duration
- 3h
- When
- Every day
- Estimated price
- RM 150 - RM 370
Flights from Singapore Changi to Penang
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- RM 95 - RM 150
Flights from Senai to Alor Setar
- Ave. Duration
- 1h 15m
- When
- Monday, Wednesday, Friday and Sunday
- Estimated price
- RM 85 - RM 420
Flights from Senai to Alor Setar via Kuala Lumpur
- Ave. Duration
- 2h 55m
- When
- Every day
- Estimated price
- RM 85 - RM 420

- Website
- malaysiaairlines.com
Flights from Senai to Penang
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- RM 330 - RM 600
Flights from Senai to Penang via Kuala Lumpur
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- RM 310 - RM 700
Flights from Singapore Changi to Penang
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- RM 850 - RM 1000
Flights from Singapore Changi to Penang via Kuala Lumpur
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- RM 550 - RM 1600
Flights from Senai to Alor Setar via Sultan Abdul Aziz Shah
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- RM 290 - RM 750
Flights from Senai to Alor Setar via Kuala Lumpur
- Ave. Duration
- 2h 55m
- When
- Friday and Sunday
- Estimated price
- RM 270 - RM 600

- Website
- fireflyz.com.my
Flights from Senai to Penang
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- RM 330 - RM 600
Flights from Senai to Penang via Kuala Lumpur
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- RM 310 - RM 700
Flights from Senai to Alor Setar via Sultan Abdul Aziz Shah
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- RM 290 - RM 750

- Website
- singaporeair.com
Flights from Singapore Changi to Penang
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- RM 600 - RM 1000

- Website
- flyscoot.com
Flights from Singapore Changi to Penang
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- RM 430 - RM 1100

- Website
- jetstar.com
Flights from Singapore Changi to Penang
- Ave. Duration
- 1h 35m
- When
- Tuesday, Thursday and Sunday
- Estimated price
- RM 60 - RM 950

- Phone
- +603 - 2267 1200
- Website
- ktmb.com.my
Train from Anak Bukit to Tasek Gelugor
- Ave. Duration
- 50 min
- Frequency
- Every 4 hours
- Estimated price
- RM 9 - RM 11
- Website
- http://www.ktmb.com.my

- Phone
- 03 2267 1200
- cllcenter@ktmb.com.my
- Website
- ktmb.com.my
Train from Anak Bukit to Tasek Gelugor
- Ave. Duration
- 48 min
- Frequency
- Once daily
- Estimated price
- RM 16 - RM 19
- Website
- http://www.ktmb.com.my
- Silver
- RM 14 - RM 15
- Gold
- RM 16 - RM 19
- Platinum
- RM 20 - RM 24
Train from Bandar Tasik Selatan to Tasek Gelugor
- Ave. Duration
- 4h 41m
- Frequency
- Once daily
- Estimated price
- RM 55 - RM 65
- Website
- http://www.ktmb.com.my
- Silver
- RM 38 - RM 42
- Gold
- RM 55 - RM 65
- Platinum
- RM 75 - RM 85
Train from Gemas to Tasek Gelugor
- Ave. Duration
- 6h 45m
- Frequency
- Once daily
- Estimated price
- RM 75 - RM 90
- Website
- http://www.ktmb.com.my
- Silver
- RM 51 - RM 55
- Gold
- RM 75 - RM 90
- Platinum
- RM 100 - RM 120

- Phone
- 03 2267 1200
- cllcenter@ktmb.com.my
- Website
- ktmb.com.my
Train from Johor Bahru Sentral to Gemas
- Ave. Duration
- 4h 41m
- Frequency
- 3 times a day
- Estimated price
- RM 11 - RM 35
- Website
- https://www.ktmb.com.my/
- Economy
- RM 11 - RM 13
- Superior
- RM 17 - RM 23
- Superior Night
- RM 24 - RM 35
- Premier
- RM 35 - RM 38
- Premier Night
- RM 50 - RM 60

- Phone
- +60 5 847 5055
- CS@starmartonline.com
- Website
- starmartbus.com
Bus from JB Larkin Terminal to Terminal Bersepadu Selatan
- Ave. Duration
- 4h 10m
- Frequency
- Every 30 minutes
- Estimated price
- RM 35
- Schedules at
- starmartbus.com
- Book at
- 12go.asia

- Phone
- 012-784 9999
- enquiry@kkkl.com.my
- Website
- kkklexpress.com
Bus from JB Larkin Terminal to Terminal Bersepadu Selatan
- Ave. Duration
- 4h 20m
- Frequency
- Hourly
- Estimated price
- RM 36
- Schedules at
- kkklexpress.com
- Book at
- easybook.com

- Phone
- + 6012-389 5689
- general@laholidays.com.my
- Website
- laholidays.my
Bus from Johor Larkin Terminal to Terminal Bersepadu Selatan Kuala Lumpur
- Ave. Duration
- 4h 20m
- Frequency
- Every 2 hours
- Estimated price
- RM 35
- Schedules at
- laholidays.my
- Book at
- easybook.com

- Phone
- 07-224 5602
- feedback@support.causewaylink.com.my
- Website
- causewaylink.com.my
Bus from Johor Bahru to Terminal Bersepadu Selatan
- Ave. Duration
- 4h 53m
- Frequency
- Hourly
- Estimated price
- RM 38
- Schedules at
- causewaylink.com.my
- Book at
- easybook.com

- Phone
- +60 3 4045 8878
- talk2us@ktb.com.my
- Website
- redbus.my
Bus from Larkin Terminal to Terminal Bersepadu Selatan

- Phone
- +604 332 6815
- Website
- kpbekspres.com
Bus from Johor Bahru to Butterworth
- Ave. Duration
- 9h 9m
- Frequency
- 4 times a day
- Estimated price
- RM 65
- Schedules at
- easybook.com

- Phone
- (06) 985 0284
- expressmayangsari@yahoo.com
- Website
- mayangsariexpress.com.my
Bus from JB Larkin Terminal to Butterworth Bus Terminal
- Ave. Duration
- 9h 12m
- Frequency
- Once daily
- Estimated price
- RM 75
- Schedules at
- mayangsariexpress.com.my
- Book at
- easybook.com
Bus from JB Larkin Terminal to Sungai Petani
- Ave. Duration
- 9h 45m
- Frequency
- Once daily
- Estimated price
- RM 75
- Schedules at
- mayangsariexpress.com.my
- Book at
- easybook.com

- Phone
- 03-7885 2585
- suggest@rapidkl.com.my
- Website
- myrapid.com.my
Car ferry from Raja Tun Uda Ferry Terminal to Sultan Abdul Halim Ferry Terminal
- Ave. Duration
- 20 min
- Frequency
- Hourly
- Estimated price
- RM 1 - RM 8
- Schedules at
- myrapid.com.my
- Adult passenger
- RM 2
- Car
- RM 8
- Bicycle
- RM 2
- Motorcycle
- RM 2
- Tricycle
- RM 3
- Ave. Duration
- 19 min
- Estimated price
- RM 60 - RM 75
Sunshine Radio Taxi
- Phone
- +604 642 5961
- Website
- penang-traveltips.com
Penang Taxi Drivers Association
- Phone
- +604 262 5721
- Website
- penang-traveltips.com
Grab Taxi
- Website
- grab.com
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 travel India's Golden Triangle, 4 of the smartest ways to explore Australia and What documents do I need to cross Niagara Falls? - to help you get the most out of your next trip.
More Questions & Answers
The best way to get from Johor to Senai Airport is to taxi which takes 12 min and costs RM 17 - RM 21.