PENANG to JOHOR BAHRU — Transport Options ☀️

How to get from Penang to Johor Bahru by bus, plane, train, car
How to get from Penang to Johor Bahru? You can go to Johor Bahru by bus, train or plane.
  1. Bus – Penang to J.Bahru
  2. Flight – Penang to J.Bahru
  3. Train – Penang to J.Bahru
  4. Taxi – Penang to J.Bahru
  5. Book a Tour Online 🎫
  6. Book Tickets Online 🎫
Best price

Bus

Cheapest option, direct connection, long but simple journey

Best experience

Train

More comfortable ride, but requires transfer in Gemas

Avoid

Direct routes

No simple direct rail option, always involves transfers

Quick answer: Travelling from Penang to Johor Bahru offers options including affordable buses, comfortable trains, flights, or private car/taxi for maximum convenience. The bus is the most budget-friendly option, the train offers a relaxed and scenic journey, flights are fastest, and private cars/taxis provide door-to-door flexibility—perfect for groups or those with lots of luggage.

At a glance:

  • 📍 Travel distance: approx. 670 km between Penang and Johor Bahru.
  • ⏱️ Travel time: Bus ~9-17 hours | Train ~12-15 hours | Flight ~1.5 hours | Car/taxi ~6 hours.
  • 💰 Price range: Bus US$15–25 | Train US$20–40 | Flight US$30–80 | Car/taxi US$300–450 per vehicle.
  • 🚍 Bus: Most economical with many daily departures.
  • 🚆 Train: Comfortable, scenic route connecting major cities.
  • ✈️ Flight: Fastest option with direct flights from Penang to Johor Bahru.
  • 🚕 Private car/taxi: Best for flexibility, groups, and luggage.

Last updated in March 2026


From Penang to Johor Bahru you can travel by bus, train, plane, or private car.

Travel from Penang to Johor Bahru by tourist bus, KTM train, direct flight, or private car. The fastest option is a direct flight, taking about 1.5 hours with fares from $30–70 per person. Airlines include Firefly, Malaysia Airlines, Batik Air, and AirAsia.

The tourist bus is the cheapest option, taking about 9–17 hours with tickets from $15–23 per person. From Penang you can also travel to Singapore via Johor Bahru.

You can also travel by KTM train via Gemas or via Kuala Lumpur by bus, train, or flight.

Comparison of Transfer Options from Penang to Johor Bahru
Transfer modes from Penang to Johor Bahru: Travel Time Cost Range
Tourist Bus 9–17 hours $15–23 per person
KTM Berhad Train 12–15 hours $23–30 per person
Direct Flight 1.5 hours $30–70 per person
Private Taxi/Car with a driver 6 hours $340–720 per car

BOOK TICKETS with Baolau


How do I get from Penang to Johor Bahru?


1. BUS from Penang to Johor Bahru

👉 Bus is the most economical way to travel from Penang to Johor Bahru.

  • ✔️ Ideal for: budget travelers and solo backpackers
  • ✔️ Travel time: ~9–17 hours (depending on route and stops)
  • ✔️ Ticket cost: $15–23 per person
  • ✔️ Comfort level: standard (long-distance buses with air-conditioning and reclining seats)
  • ✅ Best Option: Services by operators like KKKL Express, Super Nice Express or Billion Stars Express
  • 💡 Advice: Choose overnight buses to save time and book tickets online in advance for better availability.

The tourist bus is the cheapest way to travel from Penang or Butterworth to Johor Bahru. Companies such as Billion Stars Express, KPB Express, Super Nice Express, KKKL Express, Mayang Sari, LA Holidays, and Pancaran Matahari operate frequent daily services.

Buses depart from Sungai Nibong, Penang Komtar, Butterworth, and other locations, and usually arrive at Larkin Bus Terminal in Johor Bahru.

The journey takes about 9–17 hours and tickets cost around $15–23 per person. Book your tickets online in advance, especially during weekends and holidays.

Arrive at the departure station at least 30 minutes before departure and follow the instructions provided by the bus company.

BOOK TICKETS with 12go.asia

🚍 Bus Schedule from Penang to Johor Bahru + Bus Tickets:
Bus Company Departs in Penang Arrival in Johor Bahru
Billion Stars 01:00 10:08
Billion Stars 07:00 16:08
Billion Stars 08:30 17:38
Billion Stars 09:30 19:38
Billion Stars 12:30 21:38
Billion Stars 13:30 22:38
Billion Stars 17:30 02:38
Billion Stars 18:30 03:38
Billion Stars 19:30 04:38
Billion Stars 21:30 06:38
Billion Stars 23:00 08:08
Super Nice Express 07:30 16:38
Super Nice Express 21:45 06:53
KKKL Express 20:30 13:42
KKKL Express 21:30 14:42
KPB Express 08:45 17:53
KPB Express 20:45 05:53
Mayang Sari 23:15 16:27

bus-penang-to-johor-bahru
Bus of KPB Express from Penang to Johor Bahru (Larking Bus Terminal) (photo: 12go.asia).

2. FLIGHT from Penang to Johor Bahru

👉 Flight is the fastest and most efficient way to travel from Penang to Johor Bahru.

  • ✔️ Ideal for: travelers who want to save time and avoid long overland journeys
  • ✔️ Travel time: ~1.5 hours (around 4–5 hours total including airport transfers)
  • ✔️ Ticket cost: $30–70 per person
  • ✔️ Comfort level: high (quick journey with modern aircraft)
  • ✅ Best Option: Direct flights with airlines like AirAsia, Malaysia Airlines or Firefly
  • 💡 Advice: Book early for the best fares and check baggage rules for low-cost airlines.

A direct flight is the fastest and most convenient way to travel from Penang to Johor Bahru. Airlines such as AirAsia, Firefly, Malaysia Airlines, and Batik Air operate this route, with AirAsia usually offering the lowest fares.

Flights depart from Penang International Airport and arrive at Johor Bahru Airport. The flight takes about 1.5 hours, while the total travel time, including airport transfers, is around 5 hours.

Economy class fares range from $30–70 per person. Book your flight online in advance for the best prices and availability.

Flying is the best choice if you want to save time and avoid a long overland journey across Malaysia.

BOOK FLIGHT to Johor Bahru

✈️ Flight Schedule from Penang to Johor Bahru + Airlines:
Airline Departs in Penang Arrival in Johor Bahru
Air Asia 08:10 09:20
Air Asia 13:40 14:50
Air Asia 22:40 23:55
Firefly 07:15 08:30
Firefly 12:00 13:15
Firefly 19:30 20:45
Malaysia Airlines 07:15 08:30
Malaysia Airlines 12:00 13:15
Malaysia Airlines 19:30 20:45

flight-penang-to-johor-bahru
Direct flight from Penang to Johor Bahru is the most fastest and comfortable way of transport.

3. TRAIN from Penang (Butterworth) to Johor Bahru

👉 Train via Butterworth and Gemas is a comfortable but longer route to Johor Bahru.

  • ✔️ Ideal for: travelers who prefer rail travel and don’t mind a transfer
  • ✔️ Travel time: ~11–12 hours (including transfer in Gemas)
  • ✔️ Ticket cost: $23–30 per person (combined tickets)
  • ✔️ Comfort level: medium to high (modern trains + sleeper option on second leg)
  • ✅ Best Option: KTM Berhad trains via Gemas with connection to JB Sentral
  • 💡 Advice: Book both train segments in advance and plan enough time for the transfer in Gemas.

You can also travel from Penang to Johor Bahru by KTM train, but a transfer at Gemas is required. First take the train from Butterworth to Gemas, then continue by another train to Johor Bahru.

Butterworth Railway Station is easily reached by ferry from Penang in about 20 minutes. Trains depart from Butterworth Railway Station and continue via Gemas to JB Sentral. See the Malaysia Railway Map for station locations.

The journey takes about 11–12 hours in total. Tickets cost around $18–23 from Butterworth to Gemas and $5–7 from Gemas to Johor Bahru. You need to book two separate tickets online.

There is no need to print your tickets—simply show the QR code on your phone when boarding. Although the train is comfortable, it is slower than flying and requires one transfer.

train-penang-butterworth-to-johor-bahru
From Penang – Butterworth to Johor Bahru you can travel by KTM train via Gemas (photo: Baolau).

4. TAX / CAR from Penang to Johor Bahru

👉 Private taxi/car is the most convenient door-to-door option from Penang to Johor Bahru.

  • ✔️ Ideal for: families, groups, and travelers seeking maximum comfort
  • ✔️ Travel time: ~7 hours (depending on route and stops)
  • ✔️ Price range: $340–720 per vehicle
  • ✔️ Comfort level: high (private vehicles with professional driver)
  • ✅ Best Option: Private transfer with providers like Daytrip
  • 💡 Advice: Share the cost among passengers and choose flexible pickup/drop-off locations for a smoother trip.

A private car with a driver is the most comfortable way to travel from Penang to Johor Bahru. Daytrip offers modern cars and spacious minivans with hotel pickup and direct drop-off.

The journey takes about 7 hours, depending on traffic and your exact destination. Prices range from $340–720 per vehicle, with smaller cars being the most affordable option.

Book your private transfer online in advance and choose your preferred departure time and drop-off location. This option is ideal for families, groups, or travelers who prefer maximum comfort and privacy.

BOOK PRIVATE CAR to Johor


❓ FAQ – Travel from Penang to Johor Bahru

How to book tickets from Penang to Johor Bahru?

Book bus, train, flight, or private car tickets online via 12go.asia ➜ or Baolau ➜.

How long does it take to travel from Penang to Johor Bahru?

Bus: 9–17 hr | Train via Gemas: 12–15 hr | Flight: 1.5 hr | Private car: about 7 hr.

How much does it cost to travel from Penang to Johor Bahru?

Bus: $15–23 | Train: $23–30 | Flight: $30–70 | Private car: $340–720 per vehicle.

What is the distance from Penang to Johor Bahru?

The distance is about 700 km by land or around 600 km by air.

What is the best way to travel from Penang to Johor Bahru?

A direct flight is the fastest option, taking about 1.5 hours with low-cost fares available.

What is the cheapest way to travel from Penang to Johor Bahru?

The tourist bus is the cheapest option, with tickets starting from about $15 per person.

Is there a direct train from Penang to Johor Bahru?

No. Travel by KTM train via Gemas, where you change to another train for Johor Bahru.

How do you get from Georgetown to Butterworth Railway Station?

The fastest option is the ferry to Sultan Abdul Halim Ferry Terminal, only a short walk from Butterworth Railway Station.

Where else can you travel from Penang?

From Penang you can travel to Kota Bharu, Kuala Terengganu, or Langkawi.

Where can you travel from Johor Bahru?

Most travelers continue to Singapore or take the train to Kota Bharu.

Where should you stay in Johor Bahru?

Johor Bahru offers budget hotels, apartments, and luxury resorts. Book your hotel in Johor Bahru online.

What is the weather like in Malaysia?

Malaysia’s weather is tropical with warm temperatures year-round. Rainfall varies by monsoon season, but most destinations can be visited throughout the year.


💡 Practical Travel Tips for Penang to Johor Bahru

Traveling from Penang to Johor Bahru covers about 700 km. You can travel by tourist bus, KTM train via Gemas, direct flight, or private car.

  • Best Option: A direct flight is the fastest way, while the tourist bus is the cheapest.
  • Book Early: Reserve flights, buses, or trains in advance, especially during weekends and holidays.
  • Arrive Early: Be at the airport, bus station, or railway station at least 30–60 minutes before departure.
  • Pack Essentials: Bring water, snacks, a charger, and a light jacket for air-conditioned transport.
  • Train Transfer: KTM trains require one transfer at Gemas before continuing to Johor Bahru.
  • Next Stop: Johor Bahru is the main gateway to Singapore by bus or shuttle train.

Tip: Tickets from Penang to Johor Bahru can be searched and booked online in advance.


🎫 Book your tickets from Penang to Johor Bahru + Schedule:

Bangkok to Cambodia ➔

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 2

No votes so far! Be the first to rate this post.

About the author:
Hi, my name is Milan and I’m from the Czech Republic. I’m an independent traveler and the creator of this guide about northern Vietnam. I’ve spent a lot of time exploring this beautiful region — especially its mountains, nature, and ethnic culture. This website was born from my personal travel experiences, and I regularly update it with new tips and information to help fellow travelers. Follow our Facebook page for updates. This site was built with passion ❤️. Read more about the author
Share: