Why You’ll Love This Nasi Dagang
Nasi Dagang is a comforting Malaysian rice dish that balances fragrant coconut rice with a warm fish curry. It comes from Terengganu and Kelantan, and it is also enjoyed in southern Thailand and parts of Indonesia. You can serve it hot or at room temperature, which makes it a practical meal for busy days and family gatherings. When you make a Nasi Dagang recipe at home, you get a traditional Nasi Dagang taste with a flavorful, filling bowl every time.
- Ease of preparation: The rice is soaked for 3 to 4 hours, then steamed for about 45 minutes to 1 hour, while the fish curry cooks separately for about 30 to 45 minutes. With simple steps and Malay-style spices, this authentic Nasi Dagang recipe stays manageable even if you are short on time.
- Distinctive flavor: Coconut milk, sliced shallots, and fenugreek seeds bring a fragrant aroma to the rice. The traditional Malaysian fish curry rice pairing adds warmth from lemongrass, turmeric, and chili paste, without using Indian-style curry powder.
- Protein and balance: The kari ikan adds protein and keeps the meal satisfying. Nutrition is calorie-dense due to rice and coconut milk fats, but it is balanced by fish protein and fresh pickles.
- Versatility: You can customize the Nasi Dagang with fish curry by swapping the protein (fish, chicken, or prawns) and adjusting spice heat with sambal. You can also include telur pindang (herb-boiled eggs) if you want a southern Thailand Malay-style variation.
Quick note: If you enjoy exploring other savory breakfast and casserole-style dishes, you may like breakfast strata ideas for planning your menu on special mornings.
Jump to:
- Why You’ll Love This Nasi Dagang
- Essential Ingredients for Nasi Dagang
- How to Prepare the Perfect Nasi Dagang: Step-by-Step Guide
- Step-by-step timeline overview
- First Step: Soak and prep the rice
- Second Step: Mix with fenugreek, coconut milk, and shallots
- Third Step: Steam the rice for creamy texture
- Fourth Step: Cook the fish curry (kari ikan)
- Final Step: Assemble and serve
- Dietary Substitutions to Customize Your Nasi Dagang
- Protein and main component alternatives
- Vegetable, sauce, and seasoning modifications
- Mastering Nasi Dagang: Advanced Tips and Variations
- Pro cooking techniques
- Flavor variations you can try
- Presentation tips
- Make-ahead options for busy schedules
- How to Store Nasi Dagang: Best Practices
- Refrigeration
- Freezing
- Reheating
- Meal prep considerations
- FAQs: Frequently Asked Questions About Nasi Dagang
- Nasi Dagang
- Ingredients
- Instructions
- Last Step:
- Notes
- Nutrition
- Did you make this recipe?
Essential Ingredients for Nasi Dagang
Below is a structured list of the ingredients used for authentic Kelantan Nasi Dagang recipe style Nasi Dagang. Source summaries did not provide exact measurements, so the quantities are listed as “to taste” where measurement details are not available.
- Rice, coconut-milk rice base
- to taste steamed rice (beras nasi dagang; may include light purple, slightly glutinous wild rice)
- to taste coconut milk (for steaming the rice)
- to taste thick coconut cream (for richer, creamy texture)
- to taste fenugreek seeds
- to taste sliced shallots
- Fish curry (kari ikan)
- to taste coconut milk
- to taste lemongrass
- to taste turmeric
- to taste chili paste (tuna preferred; alternatives: chicken or prawns)
- to taste traditional Malay spices (no Indian-style curry powder)
- Kelapa goreng (fried coconut topping)
- to taste freshly grated coconut
- to taste sliced shallots
- to taste oil (for frying, as needed)
- Eggs
- to taste hard-boiled eggs (sliced or quartered)
- Pickled vegetables
- to taste cucumber (for pickling)
- to taste chili (for pickling)
- to taste carrots (for pickling)
- to taste rice vinegar (for pickling)
- to taste sugar (for pickling)
- Optional extras
- optional sambal
- optional telur pindang (herb-boiled eggs)
- optional gulai lemak ikan salai (smoked fish in spicy creamy gravy)
Tip: Freshly fried kelapa goreng adds crunch right before serving, which helps balance the soft coconut rice and creamy fish curry.
| Component | What it does for the dish | Key flavor notes |
|---|---|---|
| Nasi dagang rice (coconut, fenugreek, shallots) | Gives aroma and creaminess | Nutty, fragrant, lightly sweet coconut |
| Kari ikan (fish curry) | Adds protein and warmth | Lemongrass, turmeric, chili paste |
| Kelapa goreng | Creates texture contrast | Toasty coconut and fried shallots |
| Pickles and eggs | Balances richness | Acidic, sweet, savory |
How to Prepare the Perfect Nasi Dagang: Step-by-Step Guide
Nasi Dagang recipe authentic Malaysian style is all about timing and layering. You soak the rice first, then steam it until creamy. At the same time, you cook the fish curry (kari ikan) separately so both components taste fresh and balanced when served.
Step-by-step timeline overview
- Rice soaking: 3 to 4 hours
- Rice steaming: 45 minutes to 1 hour
- Fish curry: 30 to 45 minutes
- Total (excluding soak): about 1.5 to 2 hours
First Step: Soak and prep the rice
Soak the rice for 3 to 4 hours. This step helps improve texture for nasi dagang rice steamed in coconut milk. If you are using beras nasi dagang wild rice, soak it the same way so it cooks evenly.
Second Step: Mix with fenugreek, coconut milk, and shallots
Drain the soaked rice, then mix it with fenugreek seeds, coconut milk, and sliced shallots. The fenugreek seeds are key for the aroma that makes authentic Kelantan Nasi Dagang recipe style rice taste right. Add thick coconut cream if you want an even richer mouthfeel.
Third Step: Steam the rice for creamy texture
Steam the rice once, or double-steam for a thicker, creamier result. If you double-steam, add more coconut milk halfway through so the rice stays soft and luscious. Aim for about 45 minutes to 1 hour total steaming time, adjusting as needed until the grains are tender.
Fourth Step: Cook the fish curry (kari ikan)
Prepare the fish curry separately for about 30 to 45 minutes. Use coconut milk, lemongrass, turmeric, and chili paste, plus traditional Malay spices. Keep it Malay-style, meaning no Indian-style curry powder, so the flavor stays aligned with Nasi Dagang with fish curry.
Final Step: Assemble and serve
Serve Nasi Dagang hot or at room temperature. Spoon the creamy rice into bowls, then add fish curry on top or serve it alongside for mixing at the table. Add kelapa goreng (fried grated coconut and sliced shallots), then top with sliced or quartered hard-boiled eggs and pickled vegetables.
Finish with sambal if you want extra heat. For a variant, you can swap the curry with gulai lemak ikan salai (smoked fish in spicy creamy gravy) for a deeper smoky flavor.
Make it traveler-friendly: If you are packing this for school or work, keep the pickles and eggs separate until serving so they keep their texture and brightness.
If you also enjoy savory rice-and-protein meals, you may find inspiration from sausage gravy for a similar “sauce meets comfort base” eating style.
Dietary Substitutions to Customize Your Nasi Dagang
One of the best parts of an authentic Nasi Dagang recipe is that it adapts to what you can find at your local store. While traditional nasi dagang pairs rice with fish curry, you can still keep the dish true by preserving the core coconut rice and Malay spice profile.
Protein and main component alternatives
- Fish swap: Use chili paste with alternatives like chicken or prawns instead of tuna-style chili paste, then keep coconut milk, lemongrass, and turmeric as the base.
- Smoked fish variant: For gulai lemak ikan salai, use smoked fish and cook in spicy creamy gravy style, then serve with the same nasi dagang rice.
- Egg option: Keep hard-boiled eggs as the classic topping, or use telur pindang (herb-boiled eggs) for a southern Thailand Malay-style twist.
Vegetable, sauce, and seasoning modifications
- Pickles: You can adjust cucumber, chili, and carrots ratios based on taste. The balance of rice vinegar and sugar is what keeps the pickles bright against rich coconut rice.
- Sambal heat: If you prefer milder food, reduce sambal or keep it on the side so each person can control spice level.
- Malay spice focus: Stick to Malay-style spices and avoid Indian-style curry powder. This helps maintain the authentic Kelantan Nasi Dagang flavor signature.
Flavor rule: The rice should smell fragrant from fenugreek and coconut, while the curry should taste warm from lemongrass, turmeric, and chili paste.
Mastering Nasi Dagang: Advanced Tips and Variations
Once you master the basics, small changes can make your Nasi Dagang recipe authentic Malaysian fish curry rice taste even more “restaurant-style.” Use these techniques to improve texture, flavor depth, and presentation.
Pro cooking techniques
- Double-steam for creaminess: If you want that classic soft, creamy rice, steam twice and add coconut milk midway.
- Soak for better texture: Keep the soak time at 3 to 4 hours for consistent grains and a smoother bite.
- Fry coconut fresh: Fry freshly grated coconut with sliced shallots until golden brown for the best crunch. This is kelapa goreng.
- Keep curry spices Malay-style: Use coconut milk, lemongrass, turmeric, chili paste, and traditional Malay spices, without relying on Indian-style curry powder.
Flavor variations you can try
- Tuna preferred chili paste: If available, use tuna preferred chili paste for a traditional fish curry profile.
- Chicken or prawn curry: Swap the protein while keeping the same coconut base, lemongrass, turmeric, and Malay spices.
- Smoked fish gulai lemak: Switch to gulai lemak ikan salai for a smoky, creamy bowl.
Presentation tips
- Serve rice first, then curry on top so the bowl looks layered and generous.
- Keep fried coconut and pickles as bright toppings so the meal looks colorful.
- Slice or quarter eggs for easy spooning.
Make-ahead options for busy schedules
- Prepare pickles a day ahead so the cucumber, chili, and carrots absorb vinegar and sugar.
- Cook fish curry ahead and reheat gently. Stir to keep coconut texture smooth.
- Fry kelapa goreng right before serving if possible, so it stays crisp.
How to Store Nasi Dagang: Best Practices
Storing nasi dagang well helps you keep rice texture and curry flavor. Since Nasi Dagang is rich with coconut milk, treat it like other coconut-based meals: reheat gently and cool fast.
Refrigeration
- Cool the rice and fish curry quickly before refrigerating.
- Store in sealed containers for short-term leftovers.
- For best texture, store pickles and fried coconut separately.
Freezing
- Freeze fish curry portions for longer storage. Coconut-based curries freeze best when cooled fully before sealing.
- For rice, freeze if needed, but expect softer texture after reheating.
Reheating
- Reheat curry gently to avoid separating the coconut milk.
- Warm rice with a splash of coconut milk or water and cover so it steams rather than dries out.
- Re-crisp kelapa goreng if it softens, but fresh is better.
Meal prep considerations
- Keep toppings separate to maintain contrast: fried coconut for crunch, pickles for acidity, and eggs for protein.
- Use portion containers so reheating is quick for busy parents, students, and working professionals.

FAQs: Frequently Asked Questions About Nasi Dagang
Print
Nasi Dagang
🍚🥥 Creamy coconut milk-steamed rice with aromatic fenugreek & rich tuna curry – authentic Malaysian Nasi Dagang breakfast feast!
🐟 Tangy pickles & crunchy fried coconut balance spicy gravy, nutritious protein-carb comfort for any meal.
- Total Time: 5 hours
- Yield: 6 servings
Ingredients
– to taste steamed rice (beras nasi dagang; may include light purple, slightly glutinous wild rice)
– to taste coconut milk (for steaming the rice)
– to taste thick coconut cream (for richer, creamy texture)
– to taste fenugreek seeds
– to taste sliced shallots
– to taste coconut milk
– to taste lemongrass
– to taste turmeric
– to taste chili paste (tuna preferred; alternatives: chicken or prawns)
– to taste traditional Malay spices (no Indian-style curry powder)
– to taste freshly grated coconut
– to taste sliced shallots
– to taste oil (for frying, as needed)
– to taste hard-boiled eggs (sliced or quartered)
– to taste cucumber (for pickling)
– to taste chili (for pickling)
– to taste carrots (for pickling)
– to taste rice vinegar (for pickling)
– to taste sugar (for pickling)
– optional sambal
– optional telur pindang (herb-boiled eggs)
– optional gulai lemak ikan salai (smoked fish in spicy creamy gravy)
Instructions
1-First Step: Soak and prep the rice. Soak the rice for 3 to 4 hours. This step helps improve texture for nasi dagang rice steamed in coconut milk. If you are using beras nasi dagang wild rice, soak it the same way so it cooks evenly.
2-Second Step: Mix with fenugreek, coconut milk, and shallots. Drain the soaked rice, then mix it with fenugreek seeds, coconut milk, and sliced shallots. The fenugreek seeds are key for the aroma that makes authentic Kelantan Nasi Dagang recipe style rice taste right. Add thick coconut cream if you want an even richer mouthfeel.
3-Third Step: Steam the rice for creamy texture. Steam the rice once, or double-steam for a thicker, creamier result. If you double-steam, add more coconut milk halfway through so the rice stays soft and luscious. Aim for about 45 minutes to 1 hour total steaming time, adjusting as needed until the grains are tender.
4-Fourth Step: Cook the fish curry (kari ikan). Prepare the fish curry separately for about 30 to 45 minutes. Use coconut milk, lemongrass, turmeric, and chili paste, plus traditional Malay spices. Keep it Malay-style, meaning no Indian-style curry powder, so the flavor stays aligned with Nasi Dagang with fish curry.
5-Final Step: Assemble and serve. Serve Nasi Dagang hot or at room temperature. Spoon the creamy rice into bowls, then add fish curry on top or serve it alongside for mixing at the table. Add kelapa goreng (fried grated coconut and sliced shallots), then top with sliced or quartered hard-boiled eggs and pickled vegetables. Finish with sambal if you want extra heat. For a variant, you can swap the curry with gulai lemak ikan salai (smoked fish in spicy creamy gravy) for a deeper smoky flavor.
Last Step:
Please leave a rating and comment letting us know how you liked this recipe! This helps our business to thrive and continue providing free, high-quality recipes for you.Notes
⏲️ Soak rice 3-4 hours minimum for perfect fluffy texture.
🥥 Double-steam rice adding coconut milk midway for creaminess.
🔥 Fresh Malay spices essential – no curry powder for authenticity.
- Prep Time: 30 minutes
- Soak: 3-4 hours
- Cook Time: 1 hour 30 minutes
- Category: Main Dishes
- Method: Steaming/Stovetop
- Cuisine: Malaysian
- Diet: Gluten Free
Nutrition
- Serving Size: 1 bowl rice with curry
- Calories: 850 kcal
- Sugar: 15 g
- Sodium: 1200 mg
- Fat: 45 g
- Saturated Fat: 30 g
- Unsaturated Fat: 12 g
- Trans Fat: 0 g
- Carbohydrates: 95 g
- Fiber: 5 g
- Protein: 30 g
- Cholesterol: 150 mg






