Nasi Goreng Indonesian Fried Rice Recipe

Nasi goreng is Indonesia’s beloved fried rice: quick, satisfying, and full of sweet, salty, savoury flavour. This easy nasi goreng recipe is perfect for using cooked, chilled rice and can be made with chicken, pork, shrimp, tofu, vegetables, or kept simple with just aromatics and egg. Serve it the traditional way with a fried egg, fresh cucumber, and tomatoes for a complete and delicious meal.

Plate of Indonesian fried rice with a fried egg on top, tomatoes, and cucumbers.

This Indonesian fried rice is one of those recipes that proves how much flavour can come from a few simple ingredients. The key is kecap manis, also spelled ketjap manis, a thick Indonesian sweet soy sauce that gives nasi goreng its signature glossy colour and irresistible balance of sweetness, saltiness, and umami. Add garlic, onion, a little chili, and cold rice, and you have a fast meal that tastes far more special than the effort required.

Indonesia is a vast archipelagic country made up of thousands of islands, and its food reflects a long history of trade, migration, and cultural exchange. Influences from Indian, Chinese, Middle Eastern, Polynesian, Melanesian, European, Spanish, and Dutch cooking can all be found in different parts of Indonesian cuisine. The region also includes the famous Spice Islands, which helped shape global spice trade and left a lasting mark on many traditional dishes.

In 2018, the government of Indonesia listed nasi goreng as one of the country’s five national dishes. The name is beautifully straightforward: nasi means rice, and goreng means fried. Traditionally, nasi goreng was often prepared for breakfast as a clever and delicious way to use leftover rice from the previous evening. Small amounts of meat, vegetables, spices, and eggs could be added to turn it into a filling meal. Today, it is enjoyed at home, served in restaurants, and sold as popular street food at almost any time of day.

Ingredients for Nasi Goreng

Labeled ingredients needed to make nasi goreng.
  • Use cooked and chilled rice. Freshly cooked rice is too soft and moist, which can make the fried rice clump and turn mushy. Cold rice separates easily and stays pleasantly firm in the pan.
  • Kecap manis is the main flavouring. This Indonesian sweet soy sauce is thick, dark, salty, and sweet. It coats the rice beautifully and creates the classic nasi goreng flavour.
  • For a gluten-free nasi goreng, make a quick substitute by simmering equal amounts of gluten-free soy sauce or tamari with brown sugar until slightly syrupy. A small pinch of ground star anise can be added if you have it.
  • Indonesian shrimp paste, called belacan, is often used for extra depth. If you do not have it, fish sauce works well, or you can leave it out.
  • For gentle heat, use a fresh red chili, sambal oelek, or a pinch of dried chili flakes. Omit the chili for a mild version.
  • Vegetables are optional. Green beans, peas, diced bell peppers, carrots, or other small-cut vegetables all work well.
  • Protein is also optional. Try diced chicken breast or thigh, pork, shrimp, or tofu cubes.
Close-up of fried rice with egg, cucumber, and tomatoes.

To Make Nasi Goreng, Quick & Easy

The beauty of nasi goreng is its flexibility. Start by cooking chopped onion, garlic, and chili in a little oil until softened and fragrant. If you are using chicken, pork, shrimp, or tofu, add it next and cook until partly done. Vegetables such as green beans or diced bell pepper can go in at the same time. If you are using frozen peas, add them later with the rice so they stay bright and fresh.

Four-photo collage showing onion and garlic cooking, meat being added, meat cooking, and kecap manis being added.
Cook the onions, garlic, and chili until soft, then add meat or vegetables if using. Stir in kecap manis and fish sauce or shrimp paste for deep, savoury flavour.

Once the protein and vegetables have started to brown, add some kecap manis and let it caramelize slightly. This step gives the dish a rich colour and a deeper flavour. Add the cold cooked rice and more kecap manis, then toss and stir until every grain is coated and heated through. Finish with sliced green onions for freshness and a little crunch.

Four-photo collage showing caramelized meat, rice and kecap manis being added, rice being stirred, and green onions being added.
Let the kecap manis caramelize, then add the chilled rice. Stir well so the rice becomes evenly coated with the sweet and salty sauce.

While the rice finishes cooking, fry the eggs. A little extra hot oil helps the bottoms become crisp while the yolks stay runny, but you can cook the eggs however you prefer. Serve each plate of nasi goreng with a fried egg on top and fresh cucumber and tomato on the side. The cool vegetables balance the warm, savoury rice beautifully.

Plate of nasi goreng with a fried egg on top.
Serve nasi goreng with a fried egg, fresh tomato, and cucumber for a classic Indonesian-style meal.

Guten Appetit!

Square close-up of a plate of nasi goreng.

Nasi Goreng (Indonesian Fried Rice)

Margaret Bose Johnson

Nasi goreng is a quick Indonesian fried rice recipe made with chilled rice, kecap manis, aromatics, and optional meat or vegetables. Serve it with a fried egg, cucumber, and tomatoes.
Prep Time 15
Cook Time 15
Total Time 30
Course Main Course, Side Dish
Cuisine Indonesian
Servings 4

Ingredients

  • 3 tablespoons oil, divided
  • 1 small onion, finely chopped
  • 3 cloves garlic, minced
  • 1 long red chili pepper or jalapeño, seeds removed and finely chopped, or 1 teaspoon sambal oelek, or a pinch of dried chili flakes optional
  • 8 oz. (225 g) diced boneless, skinless chicken breast or thighs, diced pork, shelled and deveined shrimp, or tofu cubes optional
  • 1 teaspoon Indonesian shrimp paste (belacan) or 1 tablespoon fish sauce optional
  • ½ cup chopped green beans, frozen peas, or other diced vegetables optional
  • 3 tablespoons kecap manis (ketjap manis) or sweet soy sauce or use the gluten-free version in the notes
  • 4 cups cooked and chilled jasmine rice
  • 2 green onions

To serve:

  • 1 small English cucumber or 2 Lebanese cucumbers
  • 2 fresh tomatoes
  • 4 eggs, fried to taste
  • additional sambal oelek, if desired

Instructions

  • Heat 1 tablespoon of oil in a Dutch oven or large heavy-bottomed skillet. Add the onion, garlic, and chili, and cook for about 2 minutes, until softened and fragrant.
  • If using meat, shrimp, or tofu, add it now and cook for 2 to 3 minutes, until partly cooked. Stir in 1 tablespoon of kecap manis and the shrimp paste or fish sauce, if using. Cook for another 2 to 3 minutes, until the sauce becomes sticky and caramelized in spots.
  • If using fresh vegetables, add them when you add the kecap manis to the meat. If using frozen peas, wait and add them with the rice.
  • Add the chilled rice and the remaining 2 tablespoons of kecap manis. Stir and toss until the rice is evenly coated and heated through.
  • Slice the white and light green parts of the green onions and fold them into the hot nasi goreng.
  • In a separate skillet, fry the eggs in hot oil until the edges are crisp and the yolks are cooked to your liking.
  • Serve each portion of nasi goreng topped with a fried egg. Add cucumber and tomato on the side, then sprinkle with the sliced green onion tops. Serve with extra sambal oelek if you like more heat.

Notes

Nasi goreng can be made with or without meat and vegetables. Fresh vegetables should be added early enough to soften, while frozen peas should be added with the rice so they stay bright green.

To make gluten-free kecap manis: combine 3 tablespoons gluten-free soy sauce or tamari with 3 tablespoons brown sugar. Bring to a boil, then reduce to a simmer and cook for 1 to 2 minutes, until slightly syrupy. The sauce will thicken as it cools. A pinch of ground star anise is optional but adds lovely flavour.

The rice must be cooked and chilled before stir-frying. For this recipe, cook 1⅓ cups (265 g) rice with 2 cups water to make about 4 cups cooked rice. Rinse the rice before cooking, then chill it for several hours or overnight.