How to Get from Kuala Lumpur to Johor

How to Get from Kuala Lumpur to Johor

Last updated: March 8, 2026

Leaving the gleaming skyscrapers of Kuala Lumpur for the southern gateway of Johor feels like a transition between two different worlds. While the capital hums with a frantic, cosmopolitan energy, Johor offers a mix of historic charm, modern theme parks, and the salty breeze of the coast. Whether you are heading to Johor Bahru to cross into Singapore or making your way to the turquoise waters near Mersing, the journey south is one of the most well-traveled corridors in Peninsular Malaysia.

The route is a seamless stretch of the North-South Expressway, making it an easy trip for land transport. Travelers can choose between the efficiency of a short flight, the budget-friendly comfort of Malaysia's extensive bus network, or the door-to-door luxury of a private transfer. You can easily compare these options and book tickets through GoAsia.cc to ensure your seat is secured before you arrive at the station.

Kuala Lumpur to Johor by Bus

The bus is the undisputed king of this route, offering an incredible balance between price and frequency. Most buses depart from Terminal Bersepadu Selatan (TBS), a modern transport hub in Kuala Lumpur that feels more like an airport than a bus station. Prices for the journey to various points in Johor range from $5 to $30 depending on your final destination and the level of luxury you choose.

Express and VIP Services

For a standard journey, the Express buses are reliable and air-conditioned, with prices starting as low as $5 for shorter hops and around $8 to $16 for the full trip to Johor Bahru. If you prefer more legroom, look for the VIP 24 coaches. These vehicles feature a 2-1 seating configuration, meaning the seats are wider and recline further, perfect for the 4 to 9 hour journey. The travel time varies significantly based on traffic and the number of stops, with most direct trips to Johor Bahru taking roughly 4 hours and 15 minutes.

Routes to Mersing and Singapore

If your destination is the gateway to Tioman Island, there are dedicated Express buses to Mersing. These typically cost around $11 and take a consistent 5 hours. For those heading all the way to Singapore via the Johor border, Express buses are available for $16 to $30, though you should factor in extra time for the border crossing procedures at the Causeway or Second Link.

Kuala Lumpur to Johor by Flight

If time is your primary concern, flying is the fastest way to reach the south. Flights depart from both Kuala Lumpur International Airport (KLIA) and Sultan Abdul Aziz Shah Airport (Subang). The actual time spent in the air is a mere 50 minutes, though when you add in check-in and travel to the airports, the total transit time is usually around 3 to 4 hours.

Prices for an Economy seat are surprisingly competitive, often starting at $16, which rivals the cost of a high-end bus. However, last-minute bookings or peak holiday travel can see prices rise up to $79. This is a great option for business travelers or those who want to avoid the potential traffic jams on the highway during Malaysian public holidays.

Kuala Lumpur to Johor by Private Transfer

For families, small groups, or those carrying heavy luggage, a private transfer offers the ultimate convenience. This service picks you up directly from your hotel in Kuala Lumpur or Selangor and drops you at your exact destination in Johor. The journey is significantly faster than the bus, typically taking just under 3 hours.

You can choose from a Standard 3-pax sedan, a 4-pax minivan, or a larger 7-pax minivan. While the price point is higher, ranging from $168 to $323, the cost becomes more manageable when split among a group. It eliminates the need for taxis to and from stations and allows for a personalized schedule without waiting for departures.

Comparing Your Options

Mode Price (USD) Duration Comfort
Bus (Express/VIP) $5 - $30 2h 40min - 9h Standard to High
Flight (Economy) $16 - $79 50min (Air time) Medium
Private Transfer $168 - $323 2h 50min Very High

Tips for Traveling from Kuala Lumpur to Johor

  • Avoid Holiday Weekends: The North-South Expressway can experience heavy congestion during festive seasons like Hari Raya or Chinese New Year. If traveling during these times, the flight is your best bet to avoid hours of traffic.
  • Terminal Bersepadu Selatan (TBS): If taking the bus, arrive at TBS at least 30 minutes early. You will need to exchange your online booking for a physical boarding pass at the counters.
  • Keep it Cool: Malaysian buses are notorious for their powerful air conditioning. Even if it is hot outside, bring a light jacket or sweater for the bus ride.
  • Mersing Ferry Connections: If you are heading to Mersing for a ferry, try to book the earliest morning bus. Ferry schedules are dependent on tides and can change, so a buffer is essential.
  • Luggage: Most buses have a large compartment for suitcases, but keep your valuables in a small carry-on bag with you at your seat.

Timetable

Flight Kuala Lumpur - Johor Bahru $ 15.48–76.53 50m – 23h 20m
  •   Economy 07:15, 07:50, 08:25, 08:35, 09:30, 10:20, 13:45, 14:00, 16:10, 18:05, 21:30, 23:35
Bus Kuala Lumpur - Johor Bahru $ 7.65–15.57 4h 15m – 8h 43m
  •   Express 00:30, 01:00, 04:15, 04:30, 06:00, 07:00, 08:00, 08:15, 08:30, 09:00, 09:15, 09:30, 10:00, 10:30, 11:00, 11:30, 12:00, 12:30, 13:00, 13:30, 13:45, 14:00, 14:30, 15:00, 15:30, 15:45, 16:00, 16:15, 16:30, 17:00, 17:30, 18:00, 18:30, 19:00, 19:30, 20:00, 20:30, 21:15, 21:45, 22:00, 22:30, 23:00, 23:30, 23:45, 23:55, 23:59
  •   VIP 24 09:00, 10:30, 12:00, 13:30, 15:00, 17:00, 23:29
Bus Kuala Lumpur - Singapore $ 15.57–28.93 4h 37m – 8h 54m
  •   Express 08:00, 08:30, 09:30, 10:00, 10:30, 10:45, 12:00, 12:30, 13:00, 13:15, 13:30, 18:45, 19:30, 21:00, 21:30, 23:15, 23:59
  •   VIP 24 13:30
Bus Kuala Lumpur - Johor $ 4.57–16.52 2h 39m – 8h 59m
  •   Express 05:00, 07:00, 07:50, 08:00, 08:30, 09:00, 09:15, 09:30, 10:00, 10:15, 10:30, 11:00, 11:30, 12:00, 12:30, 13:00, 13:30, 14:00, 14:30, 15:00, 15:30, 16:00, 16:30, 17:00, 17:30, 18:00, 18:30, 19:00, 19:30, 20:00, 20:30, 20:50, 21:00, 22:00, 23:55
  •   Express 27 10:00
  •   VIP 24 09:00, 10:30, 12:00, 15:00, 17:00, 23:29
Taxi Kuala Lumpur - Johor $ 162.81–313.70 2h 51m – 2h 53m
  •   Minivan 7pax
  •   Minivan 4pax
  •   Standard 3pax
Bus Kuala Lumpur - Mersing $ 10.90 5h
  •   Express 05:00, 09:00, 13:30, 15:30, 18:30, 20:30
Taxi Selangor - Johor $ 162.81–313.70 2h 51m – 2h 53m
  •   Minivan 7pax
  •   Minivan 4pax
  •   Standard 3pax

Frequently Asked Questions

How can I book tickets from Kuala Lumpur to Johor?

You can book train, bus, flight, taxi, van, and ferry tickets from Kuala Lumpur to Johor directly on GoAsia.cc. Use the booking tool on this page to compare all available options and prices in real time.

What is the cheapest way to get from Kuala Lumpur to Johor?

The cheapest way to travel is by Express bus, with tickets starting as low as $5 for some routes into the Johor region and around $8 for direct trips to Johor Bahru.

What is the fastest way to get from Kuala Lumpur to Johor?

A flight is the fastest option, with a flight time of only 50 minutes. However, a private transfer is also very efficient, taking about 2 hours and 51 minutes door-to-door.

How long does it take to get from Kuala Lumpur to Johor?

The duration depends on the mode of transport: flights take about 50 minutes, private transfers take around 3 hours, and buses typically take between 4 and 6 hours depending on traffic.

Do I need to book bus tickets in advance?

While there are frequent departures, it is highly recommended to book in advance, especially for VIP seats or during weekends, to ensure you get your preferred departure time.

Where do the buses depart from in Kuala Lumpur?

Most long-distance buses to Johor depart from Terminal Bersepadu Selatan (TBS), which is easily accessible via the LRT, KTM Komuter, and KLIA Transit trains.

Is it better to fly or take the bus to Johor Bahru?

If you are on a budget, the bus is excellent and very comfortable. If you are short on time and find a promo fare, flying into Senai International Airport is a great time-saving alternative.