Skip to Content

How to Make Nasi Minyak: Malaysian Fragrant Rice with Ghee and Spices

Nasi minyak is a Malaysian fragrant rice dish cooked with ghee, milk, and a blend of aromatic spices. The name literally means “oil rice,” referring to the use of ghee (clarified butter), which gives the rice its buttery aroma and subtle richness.

Traditionally, nasi minyak was considered a special rice dish and was often prepared for Malay royal occasions. Today, it remains closely associated with celebrations such as Malay weddings, birthday parties, and family gatherings, where it is commonly served with dishes like beef rendang or ayam masak merah.

In this recipe, I will show you how I prepare Malaysian-style nasi minyak using a rice cooker. The process is straightforward: the spices and aromatics are first sautéed to release their fragrance, then the seasoned rice mixture is transferred to the rice cooker, where the grains cook into fluffy, fragrant rice. I will also share the key details that help achieve the right texture and aroma when making nasi minyak at home.

Plate of Malaysian nasi minyak with fluffy Basmathi rice, fried shallots, cashews, and cilantro garnish

Note: This post may contain affiliate links. Please read my privacy policy for more info. I may receive commissions for purchases made through links in this post. As an Amazon Associate, I earn from qualifying purchases.

Classic Malay spice aroma

The combination of cinnamon, cloves, cardamom, and star anise (known as Empat Sekawan or “the four friends”) gives nasi minyak its distinctive Malay flavor. Sautéing the spices before cooking helps release their fragrance and allows the aroma to infuse into the rice.

Light and separate rice grains

Using Basmathi rice and soaking it before cooking helps achieve fluffy rice with well-separated grains. The lower starch content of Basmathi rice also helps prevent the rice from becoming too soft or sticky.

Balanced buttery richness

Ghee gives nasi minyak its characteristic buttery fragrance, while milk adds a gentle creaminess to the rice. The pandan leaves and curry leaves provide additional layers of aroma that are commonly found in Malay-style cooking.

Easy rice cooker preparation

Most of the flavor preparation is done in one pan before the rice goes into the cooker. Once the seasoned rice mixture is transferred, the rice cooker handles the cooking while helping produce fluffy, fragrant rice with minimal effort.

Homemade nasi minyak rice with golden grains infused with Malay spices and ghee

Basmathi rice

Basmathi rice is the preferred choice for nasi minyak because the grains remain light and separate after cooking. Its lower starch content helps prevent the rice from becoming too soft or sticky.

Ghee

Ghee gives nasi minyak its characteristic buttery fragrance and is one of the key ingredients that define this rice dish.

Empat Sekawan spices

Cinnamon, cloves, cardamom, and star anise are the classic Malay spice combination used in nasi minyak. These spices provide the warm, fragrant base that gives the rice its distinctive taste.

Aromatics

Onion, garlic, and ginger create the savory foundation of the rice. They are sautéed with the spices to build a deeper aroma before the rice is cooked.

Pandan leaves

Pandan leaves add a naturally sweet, floral fragrance to the rice. They are tied into a knot so they can be easily removed after cooking.

Curry leaves

Curry leaves are optional but recommended if you want an extra layer of fragrance that complements the Malay-style spice profile.

Milk

Milk adds a gentle richness to the rice compared with cooking it with water alone. It contributes to the slightly creamy texture of nasi minyak.

Garnishes

Fried shallots, cashews, and cilantro add contrasting textures and a fresh finishing touch when served.

Start by preparing the onion-garlic paste. Thinly slice one onion and roughly chop the garlic, then blend them into a paste using a mortar and pestle or a spice grinder. If you are using an electric blender, add a small amount of water to help the ingredients blend smoothly.

Next, prepare the remaining aromatics. Slice another onion into pieces and cut the ginger into thick slices. Lightly bash the ginger slices with the spine of a knife to help release their aroma while cooking. Using larger ginger pieces also makes them easier to remove after the rice is cooked. You can also use ginger juice or finely chopped ginger if you prefer.

Tie the pandan leaves into a knot so they can be easily added to the rice cooker and removed later. Prepare the curry leaves, cinnamon stick, cloves, cardamom pods, and star anise so they are ready to add once the oil is heated.

For the rice, rinse the Basmathi rice thoroughly and soak it in room temperature water for about 30 minutes. After soaking, drain the rice well using a wire mesh strainer. This helps the rice cook more evenly and results in lighter, fluffier grains.

Finally, prepare the cooking liquid by combining the milk and water. Keeping the correct liquid ratio is important to achieve the right rice texture. Full ingredient quantities and measurements are provided in the recipe card below.

1. Sauté the aromatics and spices

Heat the ghee and vegetable oil in a large skillet or wok over medium heat. Add the sliced onion and sauté until it softens.

Add the cinnamon stick, cloves, cardamom pods, and star anise. Stir-fry until the spices become fragrant. Then add the onion-garlic paste, curry leaves, and pandan leaves. Continue cooking until the spice mixture becomes aromatic.

2. Coat the rice with the spice mixture

Add the soaked and drained Basmathi rice into the skillet with the sautéed aromatics and spices. Stir gently to coat the rice grains with the ghee and infused oil.

Season the rice with salt and sugar, then add the raisins. Pour in the milk and water mixture, and stir everything together.

3. Cook the rice until fluffy

Transfer the rice mixture from the skillet into an electric rice cooker and cook until the rice cooker switches to the warm mode.

Once cooking is complete, leave the rice in the “warm” mode for another 15 minutes before opening the lid. This resting time allows the remaining moisture to distribute evenly, helping the rice become fluffy instead of wet or soggy.

If you prefer to cook it on the stovetop, place the rice in a pot with the lid on and cook over the smallest flame until the rice is fully cooked.

4. Garnish and serve

Fluff the nasi minyak gently before serving. Garnish with fresh coriander leaves (cilantro), fried shallots, and cashew nuts.

Serve the fragrant rice with dishes such as ayam masak merah, beef rendang, or other flavorful curries and stews for a complete Malaysian-style meal.

Traditional Malaysian nasi minyak served with fragrant spiced rice and celebration dishes

Choose Basmathi rice

I prefer using Basmathi rice for nasi minyak because the grains stay lighter and less sticky compared with regular Jasmine rice. If you use Jasmine rice, I recommend skipping the soaking step because the higher starch content can make the cooked rice softer.

Sauté the spices properly

One thing I noticed when testing this Malaysian nasi minyak recipe is that the spice aroma becomes much more noticeable when the cinnamon, cloves, cardamom, and star anise are sautéed before adding the rice. The ghee and oil help carry the spice fragrance throughout the dish.

Keep the ginger pieces large

I prefer cutting the ginger into thick slices and lightly bashing them before cooking. The larger pieces release their aroma during cooking but can be removed easily before serving.

Let the rice rest

I always leave the rice on the warm setting for another 15 minutes before opening the lid. This extra resting time allows the moisture to settle, giving the rice a better texture.

Measure the liquid carefully

The amount of liquid makes a big difference when cooking nasi minyak. I use a ratio of 1 cup of washed and drained rice to 1.25 cups of liquid, including both milk and water. If you prefer softer rice, the liquid ratio can be increased up to 1.5 cups per cup of rice.

Using high-starch rice

Regular Jasmine rice can be used, but the texture will be different from Basmathi rice. Because Jasmine rice contains more starch and has shorter grains, it can become softer and stickier after cooking. Avoid soaking Jasmine rice beforehand, as this can make the texture even softer.

Adding too much liquid

The amount of liquid is important when cooking nasi minyak. Too much milk and water can make the rice overly soft and reduce the chance of getting light, separate grains. Measure the liquid carefully according to the amount of rice used.

Skipping the spice sautéing step

Adding the spices directly into the rice cooker without first sautéing them in ghee and oil can result in less fragrant rice. Taking a few minutes to heat the spices helps develop their aroma before cooking.

Opening the rice cooker too soon

Freshly cooked rice still needs time to settle. Opening the lid immediately after cooking can release steam too quickly and affect the final texture.

Adding artificial coloring unnecessarily

Some versions of nasi minyak use artificial coloring to create a more vibrant appearance. I prefer leaving it out for everyday cooking because the natural color and aroma from the ingredients are enough for a homemade version. I only use coloring when preparing the dish for a special occasion.

Use different milk options

You can prepare nasi minyak with fresh milk, UHT milk, or evaporated milk depending on what you have available. The cooking method remains the same.

Adjust the spice intensity

The Empat Sekawan spices provide the classic aroma of nasi minyak. If you prefer a stronger spice profile, you can slightly adjust the amount while keeping the same combination of cinnamon, cloves, cardamom, and star anise.

Add natural color for special occasions

Some festive versions of nasi minyak include coloring to create a more vibrant appearance. I usually leave it out for everyday meals, but you can add it when preparing the dish for celebrations.

Nasi minyak is often served with rich curries and stews, making it a great choice for a Malaysian-style meal. If you enjoy this fragrant rice dish, here are a few recipes from my food blog that pair well with it.

Ayam Masak Merah (Chicken in Tomato Sauce)

Ayam masak merah is a classic Malaysian chicken dish cooked with a rich tomato-based sauce, spices, and aromatics. Its sweet and savory flavors make it a traditional pairing with nasi minyak.

Beef Rendang

Beef rendang is another popular dish served with nasi minyak. The tender beef cooked in a rich coconut-based sauce provides a deep savory contrast to the fragrant rice.

Malaysian Chicken Rendang

If you prefer chicken, Malaysian chicken rendang is another delicious option. It has the same aromatic spice profile as traditional rendang while using chicken as the main ingredient.

Nasi minyak may look like a special-occasion dish, but the cooking process is quite approachable once you understand how to build the spice aroma and achieve the right rice texture.

With a few key techniques, this recipe becomes a reliable way to prepare fragrant rice at home for family meals, celebrations, or whenever you want something more special than plain steamed rice.

Nasi Minyak (4) recipe square

Nasi Minyak (Malay Pilau Rice)

Yield: 3 servings
Prep Time: 10 minutes
Cook Time: 30 minutes
Total Time: 40 minutes

Traditional Malaysian flavor Nasi Minyak recipe. Simple to follow guide with comprehensive instructions.

4.8 Stars (4 Reviews)

Ingredients

Aromatics and spices

Rice and cooking ingredients

  • 2 cups Basmathi rice
  • 2 tbsp ghee
  • 2 tbsp cooking oil
  • 0.75 cup milk, topped up with water until the total liquid amount reaches 2.5 cups
  • 1 tsp sugar
  • 1 tsp salt
  • 1/4 cup raisins

Garnish

Instructions

Prepare the aromatics

  1. Thinly slice one onion and roughly chop the garlic. Blend or grind them into a paste. If using an electric blender, add a small amount of water to help the ingredients blend smoothly.
  2. Cut the second onion into slices. Cut the ginger into thick pieces and lightly bash them with the spine of a knife to release the aroma during cooking.
  3. Tie the pandan leaves into a knot.

Flavor the rice

  1. Heat the ghee and cooking oil in a large skillet or wok over medium heat.
  2. Add the sliced onion and sauté until softened.
  3. Add the cinnamon stick, cloves, cardamom pods, and star anise. Stir-fry until the spices become fragrant.
  4. Add the onion-garlic paste, curry leaves, and pandan leaves. Continue stir-frying until the mixture becomes aromatic.

Cook the rice

  1. Rinse the Basmathi rice thoroughly. Soak the rice in room temperature water for 30 minutes, then drain well using a wire mesh strainer.
  2. Add the drained rice into the skillet and stir gently until the grains are coated with the ghee and infused oil.
  3. Add salt, sugar, and raisins. Pour in the milk and water mixture, then stir to combine.
  4. Transfer the rice mixture to an electric rice cooker and cook until done.
  5. After the rice cooker finishes cooking, leave the rice in the “warm” mode for another 15 minutes before opening the lid.
  6. Fluff the rice gently and garnish with cilantro leaves, fried shallots, and cashews before serving.
Nutrition Information:
Yield: 3 Serving Size: 1
Amount Per Serving: Calories: 403Total Fat: 20gSaturated Fat: 7gTrans Fat: 0gUnsaturated Fat: 12gCholesterol: 27mgSodium: 837mgCarbohydrates: 51gFiber: 3gSugar: 14gProtein: 6g

This data was provided and calculated by Nutritionix on 12/3/2023

Mark

Friday 1st of September 2023

Sorry but the Ingredients and the process do not match. Need to rewrite this recipe.

KP Kwan

Friday 1st of September 2023

Thank you Mark. I have corrected the mistake.

KP Kwan

Monday 13th of March 2023

Hi, this is KP Kwan. I am happy to see you in this comment area, as you have read through my recipe. I am glad to reply to any questions and comments as soon as possible.

Skip to Recipe