Malaysia is truly blessed with abundant natural beauty—from lush green forests to the sparkling turquoise waters surrounding our islands. You don’t need to spend a fortune to enjoy a tropical paradise, as our country is home to plenty of hidden gems just waiting to be explored.

Whether swimming with sharks on Lankayan Island or stargazing in the crystal-clear waters of Pulau Sembilan, these are the best-hidden islands in Malaysia that will make a perfect Merdeka weekend destination.

1. Pulau Harimau, Johor

Though the esteemed royals of Johor privately own this magnificent island, it is open to the public for their pleasure. With its pristine, crystal-clear waters and breathtaking views from the lighthouse at the top of the hill, this island has quickly become the most sought-after destination among locals. Its stunning caverns are a sight to behold, and if you’re an experienced snorkeller, this is the ultimate paradise for you.

How to get here: The only way to reach Pulau Harimau is with a boat transfer from Mersing Jetty. Check the daily scheduled jetty here.

2. Lankayan Island, Sabah

Lankayan Island is unquestionably Malaysia’s answer to the Maldives, nestled in the tranquil Sulu Sea. A beckon for seasoned snorkellers and avid scuba diving enthusiasts alike, this island is a must-visit destination where you can even plunge alongside sharks!

The mesmerising marine life is simply captivating, with the majestic presence of whale sharks frequently observed cruising the island between April and May.

How to get here: You must take a plane to Kota Kinabalu Airport and then to Sandakan. (Or any direct flight to Sandakan). From there, the boat ride from Sandakan to Lankayan Island takes about 1.5 hours.

3. Gemia Island, Terengganu

Experience the thrill of spotting baby turtles by cruising to Gemia Island! This island, located just 800 metres from the famous Pulau Kapas, offers a serene and peaceful atmosphere, unlike its bustling neighbour. With pristine sandy beaches, crystal blue waters, and a stunning coral garden to explore, Gemia Island makes a perfect destination for a family getaway.

How to get here: Take a direct flight to Sultan Mahmud Airport in Kuala Terengganu. Proceed to Marang Jetty hub and book a 15-minute boat ride to the island.

4. Pulau Sembilan, Perak

Ever wanted to be surrounded by the breathtaking phenomenon of dreamy ‘blue tears’? Look no further than Pulau Sembilan in Perak, also known as the starry waters. This destination can only be accessed through a local package tour, ensuring an exclusive and unforgettable experience.

Although previously closed due to overwhelming tourism, this Malaysian wonder is accessible to the public once again. Prepare to be amazed by the diverse marine life, including adolescent bamboo sharks, seahorses, butterflyfish, and more.

How to get here: Pick-up points for those planning to go to Pulau Sembilan are accessible at Pulau Pangkor Jetty.

5. Tanjung Simpang Mengayau, Sabah

Experience a truly romantic stroll along the beach with your partner at Tanjung Simpang Mengayau, Sabah, conveniently located just a few minutes walk from Kalampunian Beach.

The soft, buttery sand beneath your toes is just one of the many reasons why we adore this island. Charming huts are also available for those who want to indulge in a delightful picnic with loved ones.

How to get here: Book a flight to Kudat. From there, hop on a shuttle bus or taxi straight to Tanjung Simpang Mengayau. There are also other modes of transportation available from Kota Kinabalu Airport.

6. Pulau Hujung, Johor

This island is so sacred that you’ll need an island-hopping tour service or a private boat to reach this exclusive island. Pulau Hujung in Johor is a tiny, uninhabited island near Pulau Besar and Pulau Tengah.

It’s a place of unparalleled serenity and sanctity, and it’s rumoured to be one of the last remaining islands on Earth that remains completely untouched by human civilisation. So, if ever you visit, be sure to leave only footprints and take only memories in order to protect this stunning place.

How to get here: The only way to reach Pulau Hujung is through a boat transfer from Mersing Jetty.