It all started with a 5:30 am wake up, which I was NOT happy about. As much as I want to be a morning person, I am not. I especially don’t like waking in the dark – that seems totally wrong. But we had an east coast Malaysia road trip planned, and we weren’t exactly sure how to get to Perhentian Islands.
All we knew was that we needed to start early.
5:30 am early. No. Double No. Hell no!
But it was our first go at this, and our car starts to groan when she goes above 120 kilometers (75mph). Plus, we hadn’t driven the Panty Dropper (P.Dee for short) this far, like, ever, so we were a bit apprehensive.
Nothing stands between me and a crystal clear ocean, 5:30 am be damned. We got this. Did I mention that we were up packing until 1:30 am?
Whatever it takes, right?
So off we went, too bleary-eyed to be excited. And here is all the info we learned along the way.
How to get to Perhentian Islands from Penang
The drive: Penang > Besut
The drive from Penang to Kuala Besut was 6 hours, almost on the nose.
Once you get off of Penang Island, it’s basically a 2 lane “highway” the rest of the way.
However, it was an effortless drive, especially for me, since Mark drove the entire way. There are plenty of gas stations and rest stops along the route, so bathroom breaks aren’t a problem.
There is no need to leave as early as we did. But do go before 7 am – or you’ll be slowed down by more traffic and trucks. Just think, the earlier you leave, the faster you’ll get sand in your curls. And who doesn’t like that?
It’s a pretty drive with tons of palm plantations (although I hate irresponsible factories, the palms are lovely to look at), and the topography along the way ranges from rolling hills to mountainous.
We brought snacks and water because we weren’t sure what would be open along the way and because no road trip is complete without PB & J sammies.
At first, you see deer crossing signs, then cow crossing, then elephant and tapir. You really get your hopes up, but in actuality, we saw more dead animals than alive. Thankfully, none of the above.
There are monkeys all over the side of the road, some of them even alive.
But seriously, there is some crazy roadkill in Malaysia. In Chicago, we see raccoons, squirrels, the occasional deer, but monkeys and monitors? Never! We saw a 2-meter monitor lizard dining on some unidentifiable roadkill. Thankfully we had already eaten our peanut butter & strawberry jam sammies, or that could have been off-putting.
But hey, nature.
After we were hopped up on gas station coffee drinks and spicy prawn crackers, we made it to Kuala Besut, the ferry terminal for the Perhentian Islands.
Kuala Besut Port
Kuala Besut feels chaotic, like many things in Malaysia, but somehow it works (like many things in Malaysia). I guess that makes it organized chaos; Marie Kondo would lose her mind here.
We contacted Lovely Travel and Tours prior to leaving Penang. I never caught his name, so I have dubbed him, Mr. Lovely.
Mr. Lovely runs the boat company for Barat but will also take you to other places if need be. Pretty much every hotel has a boat company they work with. Some have their own boat.
When you get Kuala Besut, head towards the port, and find the ferry company or hotel’s office – they are all right by each other and easy to find.
It’s a small port area, and as soon as we started driving in near the center, a scooter-man came up and asked what we were looking for. When we told him Lovely Travel and Tours, he led us there within 2 minutes.
We unloaded our bags, and another scooter-man asked Mark to follow him to park the car. Off Mark went, I filled out some paperwork and paid Mr. Lovely RM120 for our round trip tickets.
He offered us some locally baked snacks and gave us two large bottles of water to make sure we weren’t hungry for the ride. That’s so Malaysian (and endearing), the ride is only 30-45 minutes, but you are not allowed to be hungry in this country.
After Mark parked P.Dee, the scooter-man dropped him back off at the office. He parked in a secure, shaded spot for RM10 a day.
I contacted Mr. Lovely through WhatsApp, but their website has all the contact details.
Initially, I was a little frustrated because I couldn’t get Mr. Lovely to give me an exact time when the ferries would be leaving for the Perhentian Islands. I was able to glean that the first ferry is around 9 am and the last is around 4 pm.
He was very non-committal with everything in between, and now I realize that they are mostly hourly, but will wait for a boat to fill up before they go. The ride is only about 30-45 minutes, depending on where you are being dropped off. So, they aren’t specific with times, at least in our experience.
However, you can count on it running almost hourly. They might break for makan (food) because, well… it is Malaysia, and everything stops for food. But for the most part, they are pretty regular.
We arrived around 12:15 and had to wait for the next ferry.
A little after 1 pm, Mr. Lovely walked us to the Marine Park office so that we could pay our entry fee of RM30 per person and then directly onto the boat. Easy peasy.
I use the term ferry lightly. It’s more like a large speedboat that can hold up to 25 people.
Tip: Sit as far back as you can on the boat; you might get wet otherwise. And keep all your electronics in a dry bag.
The Return Ferry to Kuala Besut
We stayed on both Perhentian islands: Besar and Kecil. We started on Besar, staying at Barat, and then took a 10-minute sea taxi to BuBu, our hotel on Kecil.
Even though Mr. Lovely dropped us off on one island, it was no problem to get picked up on the other island. All I had to do was let Mr. Lovely know the day before we were leaving where to find us.
Unlike on the way to the islands, the way back to the mainland has only three ferry times a day: 8 am, 12 pm, and 4 pm.
The guys at BuBu carried our luggage to the pier for us and told us to wait. It was a little bit confusing and felt like that organized chaos once again because several boats were dropping off and picking up at that time. However, there are guys checking tickets and making sure you hop on the right boat. It clearly was not their first rodeo, just ours.
At noon-o’clock sharpish, our Lovely travel boat came and got us. Since we were the only people on it, I sweet-talked the captain to let me drive. Somehow, he thought I knew what I was doing. Not sure what gave him that impression – I’ve never driven a boat. But it was fun while it lasted.
Then we drove over to Besar, picked up the rest of the holidaymakers, and then back to Kuala Besut.
Once we got back to the mainland, Mr. Lovely was waiting for us all, and we walked back to his office, picked up our car, and off we went to the next stop.
Tip: It doesn’t matter if you buy a ticket through the hotel or a ferry ticketing office, ticket prices are the same. They say RM35 on the actual ticket, but Mr. Lovely gave it to us for RM30. If you have more people, you can negotiate the price a little, but it’s only RM30, so don’t be too stingy.
Other ways to get to Perhentians Islands, Malaysia
Flight Options from Penang to Perhentian
You can fly from Penang to Perhentian Islands, well, not exactly. But pretty close. You fly into Kota Bharu airport, which is only an hour away from Kuala Besut.
Malaysia Air and Firefly fly direct, and it is only a 45-minute flight.
Now you are in Kota Bharu, about an hour away from the Kuala Besut ferry terminal. How do you get to Perhentian Islands from Kota Bharu?
You have a few options; there are taxis, buses, and land transfers, depending on your hotel.
Both places we stayed in, Barat and BuBu, offer land transfers from Kota Bharu to Perhentian. Next time, and there will be a next time, I’d go through the hotel for the transfers. They are RM35-40 per person, one way. Check their websites for more info.
If you want to get a taxi from the airport, they cost about RM75-80 one way per car, not per person. So for two people, it makes sense to go with the hotel pickup: same price, one less thing to organize.
How to get to Perhentian from Kuala Lumpur
KL to Perhentian flights
From Kuala Lumpur, you have more flight options for your very long 1-hour flight. Air Asia, Firefly, Malaysia Air, and Thai Lion Air all fly directly to Kota Bharu.
KL to Perhentian by car
It’s a 5.5-hour drive from KL to Kuala Besut.
How to Get from Johor Bahru to Perhentian islands
Firefly, Malaysia Airlines and Malindo all fly directly to Kota Bharu. It’s a 1.5-hour flight.
How to get to Perhentian Islands from Singapore
Before the Covid restrictions, there were flights from Singapore to Kota Bharu, but who knows if and when those flights will start up again.
Tip: No matter how you get to Pulau Perhentian, get there early; the ferries stop around 4 pm.
Tip: Do not travel over any Malaysian holiday, which basically leaves about 7 days a month to choose from. But heed my advice. Planning your travel can become a nightmare during the holidays – trust me. You WILL thank me later for this tip.
TIP: We used the navigational app Waze the entire route, but Map.me and Google maps also work fine. Waze and Maps.me can be used offline just in case you head somewhere without the internet.
The Bottom Line on how to get to Perhentian Islands
Not sure where to go next? Read my detailed island blog, Which Island is Best for a Short Getaway in Malaysia: Langkawi or Perhentian Island or Tioman? It gives you the inside scoop on each island, as well as when to go and where to stay.
Turns out, getting to the Perhentian Islands is relatively straightforward and far easier than my research led me to believe. I read about how it could be so confusing, and it’s best to have the hotel take care of all the details, but we wanted to do it all ourselves.
Mostly because I assumed that going through the hotels would add an astronomic surcharge. I was wrong – that’s not the case.
Truth is, most hotels in the islands don’t charge more than doing it a la carte. And if they do, it’s a nominal fee. So next time, I’d prob just get the hotel to do it and save myself the time.
So now that you know exactly how to get to Perhentian Islands, which method would you choose? And more importantly, what are you waiting for? Those beaches are calling your name!