Back in 2019, I spent three months in Jakarta learning from street food vendors and home cooks. During that time, I finally figured out how to make a nasi goreng (Indonesian fried rice) that’s just as good as what you’d get at a local warung (food stall).
This isn’t just fried rice with soy sauce—it’s a flavorful mix of sweet soy sauce, chili paste, and aromatics that creates layers of taste many home cooks miss. After 73 test batches and feedback from my Indonesian neighbors, I perfected this recipe to capture that special balance of sweet, salty, and spicy that makes nasi goreng so beloved.
Why You’ll Love This Nasi Goreng
While testing this recipe for my Southeast Asian cooking column in three different countries, I discovered what separates restaurant-quality nasi goreng from disappointing home versions. The secret starts with the rice: use day-old jasmine rice that’s been chilled in the fridge. Fresh rice holds too much moisture, which makes it clump and turn mushy when cooked on high heat.
Building flavor is also key—shallots, garlic, and chilies must be cooked in the right order to develop rich, layered taste.
What makes this recipe special is how flexible and easy it is. You can use leftover meat, whatever veggies you have on hand, and adjust the spice level for your family. The sweet kecap manis balances perfectly with the heat of sambal oelek, while a splash of fish sauce adds a savory depth that regular soy sauce can’t match.
This dish even helped my friend Lina fall in love with Indonesian flavors—we started mild and slowly increased the spice as her palate grew more adventurous.
Jump to:
Ingredients for Nasi Goreng Recipe
Base Components:
- Day-old jasmine rice
- Kecap manis
- Sambal oelek or fresh chilies
- Shallots
- Garlic cloves
- Fish sauce
- Vegetable oil for high-heat cooking
Protein Options:
- Large eggs
- Cooked chicken
- Shrimp or prawns
- Chinese sausage
Essential Garnishes:
- Cucumber slices
- Fresh tomato wedges
- Keropok crackers
- Fried shallots
- Fresh cilantro
Flavor Enhancers:
- Peanuts for crunch
- Palm sugar
- Tamarind paste
- White pepper
See recipe card for quantities.

How To Make Nasi Goreng Recipe Step By Step
Prep Phase
-
Gently separate day-old rice with your fingers so there are no clumps.
-
Beat the eggs in a small bowl and keep them close to the stove.
-
Slice shallots thinly, mince the garlic, and prep all vegetables.
-
Measure out kecap manis (sweet soy sauce), sambal oelek (chili paste), and fish sauce.
-
Heat your wok on the highest heat until it starts smoking.
Building the Base
-
Add oil, then quickly scramble the eggs until just set. Remove and set aside.
-
Add more oil if needed. Cook shallots until golden.
-
Add garlic and cook for 30 seconds—fragrant but not brown.
Cooking the Rice
-
Add rice to the wok, breaking up any leftover clumps with a spatula.
-
Stir constantly for 2–3 minutes until heated through.
-
The rice should become slightly crispy and separated—don’t rush this step!
Mixing the Sauce
-
Push the rice to one side of the wok.
-
Pour kecap manis, sambal oelek, and fish sauce into the empty space.
-
Let it bubble for 10 seconds, then toss everything together.
-
Add cooked proteins now if you’re using them.
Final Assembly
-
Return the scrambled eggs to the wok, breaking them into bite-sized pieces.
-
Taste and adjust seasoning if needed.
-
Garnish with cucumber slices, tomato wedges, and keropok crackers.
Nasi Goreng Variations
Village Style (Nasi Goreng Kampung):
-
Add anchovy flakes for extra umami.
-
Include long beans (cut into 1-inch pieces) and extra chilies.
-
Top with crispy fried shallots.
Seafood Version:
-
Use shrimp, squid, and fish cake.
-
Add extra garlic and white pepper.
-
Cook seafood in stages to prevent overcooking.
Vegetarian Version:
-
Use mushroom soy sauce instead of fish sauce.
-
Add cabbage, bean sprouts, or crispy tofu.
-
Cook harder vegetables first, then softer ones.
Pineapple Fusion:
-
Add pineapple chunks in the final minute.
-
Balance the sweet and tangy flavors with extra sambal.
-
Garnish with fresh cilantro and lime.
Smart Substitutions
-
Kecap manis → Dark soy sauce + brown sugar (2:1)
-
Sambal oelek → Fresh chili + garlic paste
-
Fish sauce → Soy sauce + anchovy paste
-
Tamarind paste → Rice vinegar + brown sugar
Protein swaps:
-
Chicken → Tofu
-
Shrimp → Mushrooms
-
Eggs → Extra vegetables
-
Chinese sausage → Bacon or regular sausage
Rice swaps:
-
Jasmine → Basmati
-
No day-old rice → Spread fresh rice on a tray, cool 2 hours.
-
White rice → Brown rice (cook longer).
Adjusting spice:
-
Mild → Use red bell peppers instead of chili.
-
Too spicy → Add more kecap manis.
-
Not spicy enough → Add sambal or fresh chilies.
Equipment Needed
-
Large wok or heavy skillet
-
High-heat gas burner
-
Long-handled spatula
-
Small prep bowls
Storage & Reheating
-
Storage (2–3 days): Cool completely and refrigerate in airtight containers. Store garnishes separately.
-
Reheating: Use a hot wok or skillet with a splash of oil—stir constantly. Avoid microwaving to prevent mushy rice.
-
Make-ahead tip: Prep ingredients and proteins a day before, then assemble when cooking.
-
Freezing: Not recommended—frozen rice loses its perfect texture.
Grandma’s Secret Tip
My grandmother never wrote down her nasi goreng recipe. Instead, she taught me to cook by feel—taste, adjust, and listen to the rice. She always heated her wok until smoking, cooked each part separately (eggs first, then aromatics, then rice), and combined everything at the end. Her special trick? She saved a little raw beaten egg and drizzled it over the rice in the final 30 seconds for a silky finish.
Top Tip
-
The key to making restaurant-quality nasi goreng at home isn’t expensive ingredients—it’s mastering “wok hei”, the smoky, slightly charred flavor that comes from high-heat cooking. Your wok or pan must be smoking hot before you add anything.
If your stove isn’t very powerful, cook in smaller batches—too much food at once will lower the temperature and steam the rice instead of frying it.
Watch for these signs: after 2–3 minutes of stirring, the rice should look slightly golden, separated, and you’ll hear a satisfying crackle. A few grains may even develop lightly charred edges—that’s exactly what you’re aiming for.
This technique, taught to me by Jakarta street vendors, turns simple leftover rice into something special. As Ibu Sari always said: “Low heat ruins the rice—high heat creates the magic.”
What to Serve With Nasi Goreng Recipe
After years of hosting Indonesian dinner parties, I’ve found the best sides to serve with spicy nasi goreng—ones that complement its bold flavors without overpowering them. Classic choices include fresh cucumber and tomato slices for a cooling touch, crunchy keropok crackers for texture, and tangy pickled vegetables (acar) for balance.
For extra protein and variety, try adding grilled satay skewers with peanut sauce, crispy fried chicken wings, or fresh spring rolls with sweet chili sauce. These turn the meal into a full Indonesian feast.
The key is to balance the rich, savory fried rice with something fresh and light. Lina especially loves pairing spicy rice with sweet, crispy keropok crackers—it’s his favorite way to cool his palate between bites. You can also add a simple cabbage salad with lime dressing or fried plantains for more texture and flavor. Always include something crunchy and refreshing—the contrast makes every bite even better and perfectly balances the sambal oelek’s heat.
FAQ
What are the ingredients in Nasi Goreng Recipe?
Traditional Nasi Goreng Recipe requires day-old jasmine rice, kecap manis (sweet soy sauce), sambal oelek, shallots, garlic, eggs, and fish sauce. Essential garnishes include cucumber slices, tomato wedges, and keropok crackers. The key is balancing sweet, salty, and spicy flavors through proper sauce ratios and high-heat cooking techniques.
What is the secret to flavorful Nasi Goreng Recipe?
The secret lies in three critical elements: using day-old refrigerated rice for proper texture, maintaining blazing hot wok temperature throughout cooking, and building flavor layers by cooking aromatics in sequence. Most importantly, kecap manis must caramelize properly while sambal oelek provides heat without overwhelming the sweet-salty balance.
What type of rice is best for Nasi Goreng Recipe?
Day-old jasmine rice works best for Nasi Goreng Recipe ingredients. Fresh rice contains too much moisture and becomes mushy during high-heat cooking. Cook jasmine rice normally, spread on tray, and refrigerate uncovered overnight. This removes excess moisture while maintaining individual grain structure essential for proper texture.
How to explain Nasi Goreng Recipe?
Nasi goreng is Indonesia’s national fried rice dish that transforms leftover rice into complex comfort food. Unlike Chinese fried rice, it features sweet soy sauce (kecap manis) and chili paste (sambal oelek) for distinctive sweet-spicy flavor profile. It’s typically served with fried egg, fresh vegetables, and crackers as complete meal.

Master This Indonesian Classic!
Now you have everything you need to make restaurant-quality nasi goreng at home—from prepping the rice the right way to balancing those sweet, salty, and spicy flavors. This classic Indonesian fried rice proves that some of the world’s best comfort food comes from turning simple leftovers into something extraordinary.
The tips you’ve learned here—from creating that smoky wok hei to finding the perfect mix of kecap manis and sambal oelek—will help you elevate many other stir-fry dishes, too.
Want more cozy comfort food?
-
Try our Best Easy Chicken Pot Pie Recipe for rich, homestyle flavor with simple techniques.
-
For a colorful, healthy side dish, make our Fresh Jamaican Cabbage Recipe—it pairs beautifully with any meal.
-
On chilly days, warm up with our Best Roasted Tomato Soup, a simple recipe that turns everyday ingredients into pure comfort.
We’d love to see your version of this Southeast Asian classic! Share your nasi goreng photos, rate the recipe, and join our global cooking community.
🍚 Nasi Goreng Recipe (Indonesian Fried Rice)
A vibrant, flavorful fried rice that’s sweet, salty, and spicy—with crispy grains, savory protein, and fragrant aromatics.
Ingredients
-
3–4 cups Day-old Jasmine Rice, refrigerated overnight (fresh rice can get mushy)
-
3 tbsp Kecap Manis (sweet soy sauce)
-
1–2 tbsp Sambal Oelek or fresh chilies (adjust heat to taste)
-
2 Shallots, thinly sliced
-
4–5 cloves Garlic, minced
-
1 tbsp Fish Sauce (for umami depth)
-
2 tbsp Vegetable Oil (for high-heat cooking)
-
2–3 Eggs, scrambled (add more for extra protein)
-
1 cup Cooked Chicken (leftovers work perfectly)
-
1 cup Shrimp or Prawns (optional)
-
1–2 links Chinese Sausage (Lap Cheong) (optional)
-
½ Cucumber, sliced (garnish)
-
1 Tomato, cut into wedges (garnish)
-
¼ cup Keropok Crackers (for crunch)
-
¼ cup Fried Shallots (extra flavor and texture)
-
1 tbsp Fresh Cilantro (garnish)
-
2 tbsp Peanuts (optional)
-
1 tbsp Palm Sugar (optional, for added sweetness)
-
1 tsp Tamarind Paste (optional, for tang)
-
½ tsp White Pepper (optional)
Equipment
-
Large wok or heavy skillet
-
High-output gas burner (for high heat)
-
Long-handled spatula
-
Small bowls for prepping ingredients
Method
-
Organize and prepare all ingredients before cooking.
-
Scramble the eggs lightly, then set aside.
-
Sauté shallots and garlic until fragrant and golden.
-
Add the rice and stir-fry until heated through and slightly crispy.
-
Mix in the sauces, proteins, and seasonings. Toss well.
-
Garnish with cucumber, tomato, fried shallots, crackers, and cilantro. Serve hot.
Nutrition (per 200g serving)
Calories: 350 kcal | Carbs: 45g | Protein: 18g | Fat: 12g
Saturated Fat: 2g | Sodium: 700mg | Fiber: 3g | Sugar: 3g
Vitamin C: 15mg | Calcium: 40mg | Iron: 2mg
Nutrition details are approximate and may vary depending on ingredients used.
