Nasi Goreng Recipe (Indonesian Fried Rice)

Updated November 4, 2026

Total time
25 min
prep 15 min · cook 10 min
Serves
4
portions as written

Jump to recipe

Nasi Goreng Recipe (Indonesian Fried Rice)

Nasi goreng is Indonesia’s beloved fried rice, a fragrant stir-fry of cooked rice with sweet soy sauce, shallots, garlic, and chili, typically topped with a fried egg. This version is quick, uses pantry staples, and delivers the classic sweet-savory balance that makes it a street-food favorite worldwide. It works because it turns leftover rice into a satisfying meal in under 30 minutes, with endless room for customization.

Ingredients

  • 4 cups (700 g) cooked and cooled jasmine or long-grain rice (day-old preferred)
  • 3 tbsp (45 ml) vegetable oil, divided
  • 2 large eggs, lightly beaten
  • 4 shallots, finely chopped (about 1/2 cup / 80 g)
  • 3 cloves garlic, minced
  • 2 red bird’s eye chilies, thinly sliced (adjust to taste)
  • 2 tbsp (30 ml) sweet soy sauce (kecap manis)
  • 1 tbsp (15 ml) regular soy sauce
  • 1 tsp (5 g) shrimp paste (terasi), optional but traditional
  • 1/2 tsp (2 g) white pepper
  • 1 cup (80 g) shredded cabbage or sliced green beans (optional)
  • 4 fried eggs, for serving
  • 2 tomatoes, cut into wedges, for serving
  • 1 cucumber, sliced, for serving
  • Fried shallots (bawang goreng), for garnish

Instructions

  1. If using day-old rice, break up any clumps with your fingers. If using freshly cooked rice, spread it on a tray and let it cool for 10 minutes, or refrigerate for 20 minutes.
  2. Heat 1 tbsp (15 ml) oil in a wok or large skillet over medium-high heat. Add the beaten eggs and scramble until just set, about 1 minute. Transfer to a plate and set aside.
  3. Add the remaining 2 tbsp (30 ml) oil to the wok. Add the shallots, garlic, and chilies. Stir-fry for 1–2 minutes until fragrant and shallots are translucent.
  4. If using shrimp paste, add it now and mash it into the aromatics, stirring for 30 seconds until fragrant.
  5. Add the rice, breaking up any remaining clumps. Stir-fry for 2–3 minutes, allowing the rice to get slightly toasted.
  6. Add the sweet soy sauce, regular soy sauce, and white pepper. Toss well to coat every grain. If using cabbage or green beans, add them now and stir-fry for another 2 minutes until slightly tender.
  7. Return the scrambled eggs to the wok and toss to combine. Cook for 1 more minute until everything is hot.
  8. Serve immediately, topped with a fried egg, tomato wedges, cucumber slices, and a sprinkle of fried shallots.

Tips

  • Use day-old rice: Freshly cooked rice is too moist and will turn mushy. Spread fresh rice on a baking sheet and refrigerate uncovered for 30 minutes to dry it out.
  • Substitute shrimp paste: If you can’t find terasi, use 1 tsp of fish sauce (added with the soy sauces) or omit it entirely. The dish will be less pungent but still delicious.
  • Control the heat: Remove the seeds from the chilies or use fewer for a milder version. For extra heat, add a dash of sambal oelek at the end.
  • Don’t overcrowd the wok: If making a double batch, cook in batches to keep the rice fried, not steamed.

Serving Suggestions

Serve nasi goreng as a main dish with a fried egg on top (sunny-side-up is classic). Add sides like prawn crackers (krupuk), acar (pickled vegetables), or a simple cucumber-tomato salad. For a heartier meal, pair with satay skewers or grilled chicken.

Variations

  • Chicken Nasi Goreng: Add 1 cup (150 g) diced cooked chicken breast with the rice and stir-fry until heated through.
  • Seafood Nasi Goreng: Add 1/2 cup (75 g) small shrimp or squid during the last 2 minutes of cooking until opaque and cooked through (shrimp should reach 145°F / 63°C).
  • Vegetarian: Omit shrimp paste and use 1 tbsp (15 ml) mushroom soy sauce or extra regular soy sauce for depth.
  • Spicy: Add 1 tbsp (15 g) sambal oelek or extra chilies with the aromatics.

Storage and Reheating

Refrigerate leftovers in an airtight container within 2 hours of cooking. They will keep for up to 3 days. To reheat, stir-fry in a hot wok with a splash of water or oil until steaming, or microwave in 30-second intervals, stirring between. Reheat to an internal temperature of 165°F (74°C) for food safety. The rice may dry out slightly; add a teaspoon of water or soy sauce to refresh.

Frequently Asked Questions

Can I use brown rice? Yes, but adjust cooking time: brown rice holds up well and may need a few extra minutes to heat through.

What if I don’t have sweet soy sauce? Mix 2 tbsp (30 ml) regular soy sauce with 1 tbsp (15 g) brown sugar until dissolved. This mimics kecap manis closely.

Is shrimp paste essential? It adds authentic umami, but it’s optional. If you’re vegetarian or allergic, skip it and add a little more soy sauce.

Why is my rice mushy? Usually because the rice is too fresh or wet. Use day-old rice and ensure your wok is very hot before adding the rice.

Can I make this ahead? Yes, but it’s best fresh. You can prep the aromatics and cook the eggs a day ahead, then stir-fry everything in 10 minutes.

How do I get that smoky flavor? Cook over very high heat and let the rice sit undisturbed for 30 seconds before tossing. A well-seasoned wok also helps.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).