Kuala Lumpur to Penang

How to Get From Kuala Lumpur to Penang

5Options
1hFastest
$8.20From
ElaKateWritten by Ela · Reviewed by Kate · Updated 1 week ago

Indirect Bus · Bus · Train · Flight · Taxi

Penang is Malaysia's food island, north up the coast from Kuala Lumpur. George Town's hawker stalls, shophouses and street art are the reason most people come. Flying is the quickest way to get from Kuala Lumpur to Penang, taking 1h. By road, the indirect bus is the cheapest at $8.20 (33.5 MYR) - $11 (43.5 MYR), and the direct bus costs a touch more.

Distance from Kuala Lumpur to Penang

Kuala Lumpur and Penang are about 291 km (181 miles) apart, and the journey itself covers around 342 km by road. The quickest way to get from Kuala Lumpur to Penang is by taking the flight, which takes around 1h.

~291 km
Distance
~342 km
Road distance
1h
Fastest
COMPARE

5 ways to travel from Kuala Lumpur to Penang

There are five ways to travel from Kuala Lumpur to Penang. You can choose between the indirect bus, bus, train, flight, and private transport. The journey takes 1h–5h 10m and the quickest way is by flight. If you're on a budget, the cheapest option is by indirect bus with tickets starting at $8.20 (33.5 MYR).

Indirect BusCheapestDuration5h 5m - 9h 15mPrice$8.20(33.5 MYR)
2 legs — see itinerary
  1. Kuala LumpurButterworth4h 45m
  2. ButterworthPenang20m
TrainDuration4h 50mPrice$16(66 MYR)
2 legs — see itinerary
  1. Kuala LumpurButterworth4h 30m
  2. ButterworthPenang20m

Reach out to our Community

No questions yet — be the first to ask about Kuala Lumpur to Penang.

Kuala Lumpur to Penang by Indirect Bus

5h 5m - 9h 15mFrom $8.20 (33.5 MYR) - $11 (43.5 MYR)

Instead of taking a direct bus, you can also take an indirect option with the bus, by travelling to Butterworth first. Butterworth is the same station where the train arrives. From there, you will need to take the same ferry as explained in step 2 of the train ride.

Although this sounds a bit more complicated, it’s still a very easy alternative with the advantage of more luxurious buses when travelling to Butterworth.

In addition, the distance from the arrival point in Penang to George Town centre is much shorter when arriving by ferry (2 km) instead of the direct bus (10 km).

Step 1: Kuala Lumpur to Butterworth by Bus

4h 45m - 8h 55m$7.50 (30.5 MYR)
KPB Ekspres and Transnational operate trips from Kuala Lumpur to Butterworth. The one advantage of taking this indirect route is the comfort, as VIP buses are available. A ticket costs $7.50 (30.5 MYR) when you book online via BookAway.
Billion Stars ExpressVIP5h 2m
00:3000:4501:0001:3002:3003:30+12
From $7.50
30.5 MYR
Mara LinerExpress8h 36m
10:4511:0011:5918:4522:4523:00+1
$8.10
33 MYR
Mara LinerExpress8h 56m
10:0010:1511:1518:0022:0022:15+1
$8.10
33 MYR
Mara LinerExpress8h 36m
10:4511:0011:5918:4522:4523:00+1
$8.60
35 MYR
Mara LinerExpress8h 56m
10:0010:1511:1518:0022:0022:15+1
$8.60
35 MYR

View bus stations on map

Map of stations
Click to explore

Bus tickets are available on Bookaway.

Booking Tip

The bus parks at Penang Sentral in Butterworth.

Step 2: Butterworth to Penang by Ferry

10 – 20 minutes$0.70 (3 MYR) + $3.20 (13 MYR)

The same as the first option, Penang Sentral is connected to the ferry terminal by a walkway. A ferry ticket costs $0.70 (3 MYR) and you can cross to Weld Quay on Penang Island in 10 – 20 minutes, depending on the water condition.

Ferries depart every 20 to 30 minutes from 05:20 to 22:00, and every 40 mins until the last trip at 00:40.

Most likely, once you arrive in Penang, you can take a 5-minute taxi ride to reach your hotel. If you’re staying in George Town, you can also take the bus (Line 101), but this may take longer as it makes a lot of stops. Another alternative is to walk to the centre in 20-30 minutes.

Kuala Lumpur to Penang by Bus

5h 10m - 8h 55mFrom $8.70 (35.5 MYR)
Thanks to the connecting highway between Penang Island and the mainland, there are direct buses that can bring you straight to Penang Island, without having to take a ferry.

Kuala Lumpur to Penang by Direct Bus

5h 10m - 8h 55m$8.70 (35.5 MYR)

The bus is an affordable way to travel from Kuala Lumpur to Penang. There are at least 2 companies that operate direct trips for this route: KKKL Express and Billion Stars Express.

These buses depart from 06:00 in the morning until 23:00 almost every 30 minutes, so you can be pretty flexible with your schedule.

However, we don’t recommend travelling in the evening as you will arrive in the middle of the night or very early in the morning in Penang. This doesn’t really help if you’re trying to save on accommodation and on top of that, you’ll probably end up having a pretty bad night’s sleep!

We recommend taking the KKKL Express as they receive very good reviews.

Bus ticket prices start from $8.70 (35.5 MYR).

Mara LinerExpress8h 36m
10:4511:0011:5918:4522:4523:00+1
$8.70
35.5 MYR
Mara LinerExpress8h 56m
10:0010:1511:1518:0022:0022:15+1
$8.70
35.5 MYR
Mayang SariExpress8h 56m
01:4514:0015:30
$9
36.5 MYR
KKKL ExpressExpress5h 12m
06:3008:0009:0014:3016:0021:00+2
$9.90
40.5 MYR
LA HolidaysExpress8h 41m
23:59
$12
47.5 MYR

Bus tickets are available on Bookaway and Baolau.

View bus stations on map

Map of stations
Click to explore
From
To

Booking Tip

Buses depart from Kuala Lumpur Bus Terminal and arrive at Sungai Nibong Bus Terminal, about 10 km from the city centre.

If you’re staying at George Town, you can either take a bus (Line 102) for 50 minutes or a taxi for around 20 minutes. Fares start at $1.20 (5 MYR) and $9.60 (39 MYR), respectively.

Kuala Lumpur to Penang by Train

4h 50mFrom $16 (66 MYR) - $19 (76 MYR)
What we love most about taking the train is the comfort and serene rural views that flash past the window. Although it doesn’t go all the way to Penang, you get off at Butterworth Train Station and then smoothly transfer to a ferry bound for the island.

Step 1: Kuala Lumpur to Butterworth by Train

4 – 4.5 hours$15 (63 MYR)

The KTM Komuter operates 2 trains from Kuala Lumpur Sentral to Butterworth Station daily. These depart at 11:15 and 17:31, with a travel time of 4 – 4.5 hours. On weekends (Friday to Sunday), there is also an additional trip that departs at 08:05.

There are 2 kinds of trains: ETS Platinum and ETS Gold. The main difference is that the Platinum trains normally reach the destination faster than the Gold ones.

Train fares start from $15 (63 MYR) for a standard seat when you book with Baolau.

Step 2: Butterworth to Penang by Ferry

10 – 20 minutes$0.70 (3 MYR) + $3.20 (13 MYR)

Butterworth Train Station is connected to Pangkalan Sultan Abdul Halim Ferry Terminal by a walkway, so you won’t have a hard time finding it. Keep in mind that this walkway includes some stairs, so the 10-min walk can be tiring if you’re carrying a lot of luggage.

At the terminal, you can buy your ferry ticket for $0.70 (3 MYR).

Ferries depart every 20 to 30 minutes from 05:20 to 22:00, and every 40 minutes until the last trip at 00:40. They dock at Weld Quay in Penang Island, which is just a 5-minute taxi ride (2 km) from George Town city centre.

Once you arrived at Penang, you can easily take a taxi from the port, but you can also order one via Grab. Taxi fares start at $3.20 (13 MYR). Alternatively, you can take Bus Line 101 for $1.20 (5 MYR), just make sure this passes somewhere near your hotel. Last, you can even walk to the centre in just 20-30 minutes.

Train tickets are available on Baolau.

Kuala Lumpur to Penang by Flight

1hFrom $26 (105 MYR)

When travelling by flight from Kuala Lumpur to Penang, you can depart from 2 airports: Subang Airport or Kuala Lumpur Airport (KLIA). Subang Airport is closer to Kuala Lumpur city centre, but Kuala Lumpur Airport normally offers cheaper flights.

All flights arrive at Penang Airport, located in the southern end of the island. From here, George Town is 18 km away.

To complete the final step of reaching your hotel, you have two options: take a taxi for around 30 minutes, costing around $7.40 (30 MYR) or you can take the bus for 1 hour, costing $0.70 (3 MYR). There are several bus lines available, but make sure you board one that stops near your hotel.

TIP: If you decide to travel by plane, please consider including a carbon compensation fee to reduce your impact on the environment.

Thai Lion Air, Malindo Air, Firefly and Malaysia Airlines offer several flights daily from Subang Airport (SBZ) to Penang. Fares start from $35 (140 MYR) and travel time is 1 hour.

Subang Airport is located some 30 minutes away from Kuala Lumpur city centre.

You can reach it via a train from KL Sentral, via bus #U81 (or you can ask your hotel if there are other available buses from your location), or by taxi. Fares start from $0.50 (2 MYR).

Option 2: Flight via Kuala Lumpur International Airport (KUL)

1 hour$26 (105 MYR)

Air Asia normally offers the cheapest flights from Kuala Lumpur Airport to Penang. Tickets tend to start at $26 (105 MYR) and travel time is also 1 hour. Other carriers offering flights for this route are Thai Lion Air, Malaysia Airlines, and Malindo Air.

KL Airport is 30 minutes to 1 hour away from the city centre, which can be reached by bus, train or taxi. Visit our page on Kuala Lumpur Int’l Airport for more details.

Flight tickets are available on Skyscanner.

Kuala Lumpur to Penang by Taxi

4.5 hoursFrom $215 (885 MYR)
We don’t really recommend taking a taxi from Kuala Lumpur to Penang as it is quite expensive and the other options are pretty comfortable. However, if you are set on getting a private ride, taxis are available to book online via 12go.Asia from $215 (885 MYR).

Taxi tickets are available on 12Go Asia.

ABOUT YOUR DESTINATION

Why Visit Penang?

Penang is a cultural melting pot on the northwest coast of Malaysia. For such a small island, it has so much to offer — vibrant culture, colourful heritage, amazing food, urban wonders, and untouched rainforest.

At its heart is George Town, a UNESCO World Heritage Site and a city rich in history. Famous for its street art, you can easily spend hours exploring its alleys. Sure, the island can be touristy. Yet somehow, it is able to maintain a laidback vibe and a charm that you can only find in Penang.

Rounding it up

That's the full picture for getting from Kuala Lumpur to Penang, roughly 291 kilometres (181 miles) apart. In all, there are 5 ways to make the trip. The cheapest fare is $8.20 (33.5 MYR) - $11 (43.5 MYR). The quickest trip takes 1h.

Prices and timetables change, so it's worth a quick check before you travel. Have a question, or travelled this route recently? Ask the community below and we'll do our best to help.

Frequently Asked Questions

What is the distance from Kuala Lumpur to Penang?

The distance from Kuala Lumpur to Penang is 291 kilometres (181 miles).

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

The fastest way to get from Kuala Lumpur to Penang is by flight and takes 1h.

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

The cheapest way to get from Kuala Lumpur to Penang is by indirect bus with ticket costs starting from 33.5 MYR.

About the Authors

Ela
Ela

Senior Travel Writer

Ela is a storyteller, content producer, solo traveller and a mermaid-in-training. When she's not in front of her laptop, you will find her barefoot and living her best tan on some island in the Philippines. Or exploring the depths of its seas as a budding freediver. An island girl at heart, she'll be happy anywhere there is sea, sand, sun and coffee.

Kate
KateReviewer

Travel Writer & Digital Nomad

Kate is a travel content creator, writer and founder of Stay Wild Travel, a tour company running group trips for women beyond your typical destinations. Her full-time travels have taken her to almost 60 countries, and she doesn't intend to stop anytime soon.

Affiliate Disclosure

Some links on this page are affiliate links. If you book through them, we earn a small commission at no extra cost to you. This helps us keep Gecko Routes free and up to date.

Stay Connected

Join our Community

We're a small team of passionate travellers sharing what we've learned on the road. Get our best tips, route updates, and travel stories delivered to your inbox.

Unsubscribe anytime.