Nasi Goreng — Indonesian Fried Rice | Halal Kitchen Atlas
Indonesian & Malay · All Indonesia & Malaysia · national dish

Nasi Goreng — Indonesia's National Fried Rice

Voted the world's #2 most delicious food by CNN (right after rendang). Indonesia's national dish and the fastest weeknight meal in every Indonesian household — day-old rice stir-fried hot and fast with sweet soy sauce (kecap manis), a bumbu (spice paste) of shallots, garlic, and chili, and finished with a fried egg on top plus a small pile of prawn crackers on the side. Breakfast, lunch, and dinner food. Kaki-lima street cart food. Presidential-palace food. This is Indonesia's most-eaten savory dish.

PREP15min
COOK15min
TOTAL30min
SERVES4
DIFFICULTYEasy
CUISINEIndonesian & Malay

There is a common misconception outside Southeast Asia that fried rice is fried rice — that Chinese, Thai, and Indonesian versions are basically the same dish with different toppings. This is wrong. Indonesian nasi goreng has a specific flavor identity that no other fried rice shares: the deep sweet-savory caramelization of kecap manis (Indonesian sweet soy sauce, thick as molasses), the funky umami hit of terasi (fermented shrimp paste), and the way the day-old rice takes on the sauce and becomes glossy, sticky-yet-separate, deeply flavored. This is nasi goreng.

The dish is universal across Indonesia (and popular across Malaysia, where it goes by the same name and is nearly identical). Street vendors selling nasi goreng from portable carts (kaki lima — literally "five feet," a reference to the three cart wheels plus the vendor's two feet) are found on virtually every commercial street in Indonesia, cooking to order for late-night workers, students, and after-work crowds. Home cooks make nasi goreng for weeknight dinners, breakfast (yes, fried rice for breakfast — perfectly normal in Indonesia), or as a way to use up leftover rice from the previous day. It's fast, cheap, universally loved, and endlessly variable.

Nasi goreng and Indonesian food identity

In 2018, Indonesia officially declared nasi goreng one of its five national dishes (alongside rendang, satay, soto, and gado-gado). It appears on every restaurant menu across the country, from tiny neighborhood warung (small eateries) to five-star Jakarta hotels. Then-U.S. President Barack Obama famously spoke fondly of nasi goreng from his Jakarta childhood in the 1960s, calling it his favorite Indonesian food. It's the dish most Indonesian expats miss when abroad, and the first dish most non-Indonesian visitors try when they arrive.

Regional variations exist. Nasi goreng kampung (village-style) is the simplest — plain rice, kecap manis, shallots, garlic, chili, egg. Nasi goreng jawa (Javanese) uses more chili and sometimes coconut sugar for extra sweetness. Nasi goreng ikan asin uses salted fish. Nasi goreng ayam adds shredded chicken. Nasi goreng kambing uses lamb or goat (popular in Jakarta's Chinese-Indonesian and Muslim-Indian communities). Nasi goreng gila ("crazy fried rice") throws in whatever proteins are available — sausage, chicken, egg, prawns, tofu. All variations share the kecap manis-shallot-garlic-chili foundation.

Cultural review: Recipe developed and tested by our Jakarta contributor Siti R. Verified against multiple Indonesian home versions plus street-vendor (kaki lima) techniques. The day-old-rice requirement, the shrimp paste (terasi) in the bumbu, and the kecap manis finish follow authentic Indonesian home practice.

Ingredients

Serves 4

The rice (do NOT skip this rule)

4 cups day-old cooked long-grain rice — cold, cooked yesterday and refrigerated overnight; fresh hot rice will NOT work

The bumbu (spice paste — the flavor foundation)

6 shallots (small red) — peeled
5 cloves garlic — peeled
3 fresh red chilies — adjust for heat; deseed for milder version
1 tsp terasi (Indonesian shrimp paste) — or Malaysian belacan; toasted briefly on dry pan before using

The sauce and seasoning

4 tbsp kecap manis (Indonesian sweet soy sauce) — essential; ABC brand is the standard; do NOT substitute regular soy sauce
1 tbsp regular soy sauce (kecap asin) — for saltiness
1 tsp salt — adjust to taste
1/2 tsp white pepper
3 tbsp vegetable oil — for frying

Optional proteins (pick one or none)

200 g chicken breast or thigh — diced small; halal-slaughtered; OR
200 g shrimp — peeled and deveined; OR
200 g diced beef — halal-slaughtered; OR
200 g firm tofu — cubed and fried until golden — for vegetarian version

The eggs (essential — one per serving)

4 large eggs — for sunny-side-up eggs to top each portion
2 tbsp vegetable oil — for frying eggs

Traditional garnishes (all essential for a proper plate)

1 cucumber — sliced into rounds — cools the palate
1 tomato — sliced into wedges
1 handful prawn crackers (krupuk udang) — essential — sold pre-fried or fry your own at home
2 tbsp fried shallots (bawang goreng) — for topping — buy pre-fried at Asian groceries
sambal (Indonesian chili sauce) — on the side for extra heat
1 lime — cut into wedges

Equipment

  • Large wok (essential for high heat and quick tossing) OR heavy-bottomed frying pan
  • Non-stick frying pan for the sunny-side-up eggs
  • Blender or mortar and pestle for the bumbu
  • Wooden spatula or wok spoon
  • Sharp knife for slicing garnishes

Method

Nasi goreng is a 30-minute weeknight dish that rewards speed and heat. The single most important rule: use day-old rice. Cook rice the day before, refrigerate overnight — the drying-out that happens in the fridge is what allows the rice grains to fry crisply instead of steaming into mush. Fresh hot rice will not produce proper nasi goreng.

Prep the bumbu (t=0)

  1. 01

    Toast the shrimp paste

    Wrap 1 tsp of terasi in a small piece of foil and toast on a dry pan over medium heat for 30 seconds per side. Alternatively, dry-toast in a small pan without foil for 1 minute (kitchen will smell strong — this is normal). Toasting mellows the raw ferment smell and brings out the umami. Unwrap and cool.

  2. 02

    Blend the bumbu

    In a small blender or mortar and pestle, combine shallots, garlic, fresh chilies, and toasted terasi. Blend with 1 tbsp water to a rough paste. Do not over-process — it should still have some texture. This is your bumbu.

Prep the rice (t=5 min)

  1. 03

    Break up the rice

    Take the cold day-old rice out of the fridge. Using clean wet hands or a fork, break up any large clumps until the grains are separated. This ensures even frying. Set aside.

Cook the protein if using (t=8 min)

  1. 04

    Sear the protein first

    If using chicken, shrimp, beef, or tofu: heat 1 tbsp oil in your wok over high heat. Add the protein and cook, stirring, until cooked through (3-4 minutes for chicken and beef, 2 minutes for shrimp, 3 minutes for tofu). Season with a pinch of salt. Transfer to a plate. Keep the wok hot.

Cook the nasi goreng (t=15 min — moves fast)

  1. 05

    Fry the bumbu

    In the same wok (add another 2 tbsp oil if needed), heat over medium-high. Add the bumbu paste and stir-fry for 2-3 minutes until fragrant, the color deepens, and the raw smell is gone. Watch closely — bumbu can burn.

  2. 06

    Add the rice and toss

    Increase heat to high. Add the day-old rice all at once. Immediately start tossing and stirring aggressively with a wok spoon — the rice needs to fry, not steam. Break up any remaining clumps as you go. Continue for 2-3 minutes until the rice is heated through and starting to catch color from the bumbu.

  3. 07

    Add the sauce

    Drizzle in the kecap manis and regular soy sauce. Toss to coat every grain evenly. The rice will darken from white to golden-brown as it absorbs the sauces. Continue stirring for 1-2 minutes. Add salt and white pepper.

  4. 08

    Fold in the protein

    Return the cooked protein to the wok and toss to combine and reheat. Cook another 30 seconds. Taste and adjust seasoning — add more kecap manis for sweetness, more soy for salt, or a pinch of chili for heat.

Fry the eggs and plate (t=25 min)

  1. 09

    Sunny-side-up eggs

    In a non-stick pan, heat 2 tbsp oil over medium heat. Crack the eggs in gently (space them apart). Fry until the whites are set but the yolks are still runny (2-3 minutes). For crispy edges (Indonesian street-vendor style), use higher heat and let the edges crisp up while spooning hot oil over the yolks.

  2. 10

    Plate and serve immediately

    For each portion: mound the nasi goreng on a plate. Top with one sunny-side-up egg (runny yolk essential — you'll break it and mix into the rice). Arrange cucumber slices and tomato wedges beside the rice. Add 3-4 prawn crackers on the side. Sprinkle fried shallots over the top. Serve with lime wedges and sambal on the side. Eat immediately while the egg is warm.

Nasi goreng — technique from a Jakarta kitchen

  • Day-old rice is non-negotiable. Rice cooked and refrigerated overnight has lost 15-20% of its moisture, which is exactly what you need. The dried grains fry crisp; fresh hot rice steams into mush. If you must use same-day rice, spread it on a baking sheet and refrigerate uncovered for 1 hour — imperfect but workable.
  • Terasi (shrimp paste) is the umami secret. This is what separates nasi goreng from other fried rices. Sold at Asian groceries in small blocks. Malaysian belacan is the same thing. If you truly cannot get it, 1 tsp fish sauce is a poor but functional substitute. Do not skip entirely.
  • Kecap manis is essential and irreplaceable. Indonesian sweet soy sauce, thick as molasses, sweet from palm sugar, deep umami from fermented soy. ABC is the standard brand (Indonesian owned, sold worldwide at Asian groceries). Do NOT substitute regular soy sauce + sugar — you'll miss the specific caramelized-palm-sugar flavor.
  • Use a wok if you have one. The high heat and curved sides let you toss the rice aggressively without spilling and create hot-and-fast frying that fresh-pan cannot match. If using a regular pan, use the biggest one you have and don't overcrowd.
  • Cook the eggs runny. The whole point of sunny-side-up is that the runny yolk breaks over the rice and creates its own sauce with the kecap manis. If you cook the yolk hard, you've missed the point.
  • Do not overcrowd the wok. If cooking for more than 4 people, cook in 2 batches. Overcrowded rice steams rather than fries.
  • Prawn crackers are not garnish, they're structure. Every Indonesian nasi goreng plate has prawn crackers on the side. Their crunch is the textural counterpoint to the sticky-sweet rice. Buy pre-fried krupuk at Asian groceries or fry your own from dried disks.
  • Sambal on the side, not in the rice. Nasi goreng itself should be balanced sweet-salty-umami. Extra heat comes from sambal added at the table by each person. This is the traditional Indonesian approach — control heat individually rather than making everything spicy.

Halal notes

  • All protein options (chicken, beef, shrimp, tofu) are halal-friendly. Chicken and beef must be halal-slaughtered (zabihah).
  • Shrimp is halal in Sunni Islamic tradition.
  • Kecap manis: Indonesian sweet soy sauce is naturally halal (soy, palm sugar, salt); some brands may use rice wine or mirin — check labels. ABC brand (Indonesian) is halal-certified.
  • Terasi (shrimp paste): naturally halal (fermented shrimp + salt).
  • Krupuk (prawn crackers): most commercial brands are halal but always check — some contain animal-derived flavor enhancers.
  • Some sambal brands add wine vinegar or fermented rice ingredients — read labels or use halal-certified brands. Homemade sambal is naturally halal.
  • Vegetarian version (with tofu): naturally halal.

Substitutions

OriginalSubstitute
Day-old riceSame-day rice spread on baking sheet and cooled uncovered for 1 hour in fridge; parboiled rice cooled thoroughly
Kecap manis3 tbsp regular soy sauce + 2 tbsp palm sugar (dark brown sugar works) + 1 tsp molasses; not perfect but closest DIY
Terasi / belacan1 tsp Thai shrimp paste; 1 tsp fish sauce (poor substitute)
Krupuk (prawn crackers)Any Asian-style rice cracker; skip if unavailable but plate looks incomplete
Fried shallotsPre-fried onions from a can; skip
Fresh red chilies1-2 tsp chili paste; sambal oelek; sriracha in a pinch
Shallots1 medium red onion, finely diced

How to serve

  • Traditional Indonesian plate: nasi goreng in center, sunny-side-up egg on top with runny yolk, cucumber and tomato slices arrayed beside, prawn crackers on the side, sambal in a small dish.
  • Breakfast style: with a fried egg and just cucumber, coffee or Indonesian teh manis (sweet tea) on the side.
  • Street-vendor style (nasi goreng kampung): served on a small oval plate with a single fried egg, small pile of prawn crackers, and lime wedge.
  • With chicken satay skewers on the side — classic Indonesian combination.
  • With acar (Indonesian pickled cucumber-carrot-chili) as a bright counterpoint to the rich rice.
  • With hot Indonesian sambal terasi (shrimp paste sambal) — the classic pairing.
  • For a proper Indonesian meal: nasi goreng + sate ayam (chicken satay) + krupuk + sambal + teh manis (sweet tea).

Storage & make-ahead

Nasi goreng is best eaten immediately — the egg is essential and doesn't hold. Leftover fried rice (without egg) keeps 2 days refrigerated in an airtight container. Reheat in a hot pan with a splash of water; never microwave (turns gummy). Nasi goreng from the previous night, with a fresh fried egg cracked over top the next morning, is a legitimate Indonesian breakfast — some cooks make extra deliberately for this purpose. Do not freeze — texture destroyed.

Nutrition per serving

480Calories
18gProtein
68gCarbs
15gFat

Frequently asked

Three distinctive elements. (1) Kecap manis — Indonesian sweet soy sauce, thick as molasses, gives nasi goreng its distinctive caramelized sweet-savory flavor that no other fried rice shares. (2) Terasi (fermented shrimp paste) provides deep umami that Chinese fried rice (which uses light soy) and Thai fried rice (which uses fish sauce) don't quite match. (3) The bumbu (shallot-garlic-chili paste) is fried before the rice, creating a flavor base built into every grain. Chinese fried rice tends to be lighter and cleaner-flavored; Thai fried rice is brighter and more herb-forward; Indonesian nasi goreng is the deepest, sweetest, and most umami-heavy of the three.

Practical and cultural reasons. Practically, Indonesian households cook rice daily (rice is at every meal), so there's always leftover rice from dinner — turning it into nasi goreng the next morning is the ideal use. Culturally, Indonesian breakfast tradition is savory, rice-based, and substantial (not sweet cereals or pastries like Western breakfast). Nasi goreng, fried noodles (mie goreng), or rice porridge (bubur ayam) are the three classic Indonesian breakfast options. Nasi goreng for breakfast is as normal in Jakarta as toast-and-eggs in London.

Kecap manis (pronounced "KEH-chup MAH-nees") is Indonesian sweet soy sauce — a thick, dark, molasses-consistency sauce made from fermented black soybeans, palm sugar (gula jawa), and sometimes garlic and star anise. It's about 40% palm sugar, giving it a distinctive sweet-caramelized-umami flavor that's completely different from Chinese, Japanese, or Korean soy sauces (all thinner and saltier). Kecap manis is the defining ingredient of Indonesian and Malaysian savory cooking — used in nasi goreng, mie goreng, satay marinades, and countless other dishes. ABC (Angsa Bermahkota Cap) is the most common brand; sold at Asian groceries worldwide. Absolutely no substitute captures its specific flavor.

Long-grain white rice is standard — jasmine rice is ideal, basmati works, standard American long-grain works. Short-grain rice (Japanese, sushi rice, Egyptian short-grain) is too sticky and makes gummy nasi goreng. Brown rice can work but changes the flavor significantly. Most important: the rice must be day-old (cooked and refrigerated overnight). The moisture loss during refrigeration is what allows the rice to fry properly rather than steam.

Yes — Barack Obama lived in Jakarta from ages 6-10 (1967-1971) when his mother was married to an Indonesian man, Lolo Soetoro. Obama has spoken repeatedly and publicly about his love of Indonesian food from his childhood, specifically mentioning nasi goreng, bakso (meatball soup), and sate. During his 2010 official visit to Indonesia as U.S. President, he made a point of eating traditional Indonesian food including nasi goreng. This is well-documented and Indonesian pride in "Obama loves nasi goreng" is real and enduring.

Vegetarian yes — replace the protein with fried tofu or tempeh (both are traditional Indonesian ingredients). Eggs remain the standard topping for vegetarian nasi goreng. Vegan is trickier because two ingredients are non-vegan: terasi (shrimp paste) and krupuk udang (prawn crackers). For vegan nasi goreng: skip the terasi (or replace with 1 tsp fermented black bean paste for umami), skip the prawn crackers (or substitute vegan cassava crackers), skip the egg or replace with fried tofu, and add extra mushrooms or tempeh for umami. The result won't be traditional but will still be satisfying. Indonesian Buddhist communities (small but historic) have developed vegetarian nasi goreng traditions.

Nasi means rice; mie means noodles. Same seasoning approach (bumbu + kecap manis + terasi), same garnishes (egg, prawn crackers, cucumber), but nasi goreng uses day-old rice and mie goreng uses yellow egg noodles (fresh or dried). Both are equally beloved in Indonesia. Chinese-Indonesian communities often serve mie goreng at celebrations because long noodles symbolize longevity. Some Indonesian street vendors offer both — you point at whichever you want. The Malaysian versions (also called nasi goreng and mie goreng) are nearly identical.

Share with