Nasi goreng
Indonesian fried rice
When I was in elementary school, I once went over to a friend’s house after class. His mom asked if I wanted to stay for dinner.
“We’re having nasi goreng,” she said. I didn’t hesitate for a second. Nasi? Yes please. We ate it often at home, so I was already looking forward to a plate of flavorful Indonesian fried rice. That excitement faded pretty quickly when I saw what was served. Canned nasi. With peas.
And to top it off, a big spoonful of what was supposed to be satay sauce and a very sour pickle on the side. I politely cleaned my plate, of course, but I knew one thing for sure: at our house, nasi goreng was on a completely different level.
What is nasi goreng?
Nasi goreng literally means “fried rice” in Indonesian. “Nasi” is cooked rice and “goreng” simply means fried. So if you order just nasi in Indonesia, you’ll most likely get a bowl of plain white rice. Nasi goreng started as a way to use up leftovers. Day-old rice, bits of meat or vegetables, all brought together with spices and sauces. In Indonesia you’ll find it everywhere, from street vendors to upscale restaurants, and everyone has their own version.
Kecap manis
An important ingredient in nasi goreng is kecap manis. This is a sweet Indonesian soy sauce with a distinctive flavor that’s widely used in Indonesian cooking. If you don’t have it on hand, you can easily make a substitute at home.
In this recipe, we use 6 tablespoons kecap manis. You can replace it with a mix of 2 tablespoons soy sauce, 2 tablespoons molasses, and 2 tablespoons brown sugar. You can make this ahead of time if you want the sauce to thicken slightly, but that’s not required.
Our family recipe
Because I grew up believing no one made it better than we did at home, I’m proud to share our family recipe here. We start with the ground beef and season it with kecap manis, or the alternative if needed, and a crumbled beef bouillon cube. For extra flavor and a bit of texture, we add crispy fried shallots and one beaten egg. Then we stir in four cups cooked and cooled white rice. After that come crispy pieces of thick-cut bacon, thin strips of omelet made from two eggs, and sliced ham. It’s hearty, savory, and full of flavor.
Serve and switch it up
Serve your nasi goreng with prawn crackers, sambal or chili sauce, and some fresh atjar (Indonesian cucumber pickle) on the side. A fried egg on top is always a good idea. It’s also great with satay or a side of egg foo young (Chinese-style omelet with vegetables).
Want to try something different? Make nasi kuning instead. It’s yellow rice cooked with coconut milk and turmeric, often served as part of a rice table: a traditional Indonesian feast with multiple small dishes served with rice. For a regular weeknight, though, this nasi goreng is hard to beat.
Print
Nasi goreng
- Total Time: 30 minutes
- Yield: 4 servings 1x
Description
Because I grew up believing no one made it better than we did at home, I’m proud to share our family recipe here.
Ingredients
- 1 2/3 cups uncooked white rice (yields about 5 cups cooked rice)
- 2/3 lb ground beef
- 7 oz thick-cut bacon, diced
- 3 1/2 oz ham, sliced
- 4 large eggs
- 3 cloves garlic, minced
- 1 beef bouillon cube (0.36 oz)
- 6 tablespoons kecap manis (see above for a subsitute)
- 3 tablespoons milk
- 2 tablespoons crispy fried shallots
- Vegetable oil
- Prawn crackers, for serving
Instructions
- Cook 1 2/3 cups white rice. Meanwhile, heat a splash of vegetable oil in a Dutch oven or wok and cook 2/3 lb ground beef until browned, breaking it up as it cooks. Add 2 to 3 cloves garlic, minced, and cook briefly until fragrant.
- Stir in 6 tablespoons kecap manis (see above for a subsitute) and crumble in 1 beef bouillon cube. Mix well, cover, and let it simmer gently for a few minutes.
- Dice 7 oz thick-cut bacon and cook in a skillet until lightly crisp. Transfer to a paper towel-lined plate to drain.
- Beat 3 eggs with 3 tablespoons milk and cook two thin omelets in the same skillet you used for the bacon.
- Roll the omelets up like crepes and slice into thin strips. Do the same with 3 1/2 oz ham, cutting it into thin strips. Set aside.
- For extra texture, stir 2 tablespoons crispy fried shallots into the beef mixture. Push the meat to one side of the pan, crack in 1 egg, scramble it briefly, then mix it through the beef.
- Add the cooked rice to the beef mixture along with the bacon, omelet strips, and ham. Toss well until everything is evenly combined and heated through. Selamat makan, in other words: enjoy!

- Cook Time: 30 minutes
- Category: Dinner
- Method: Boiling, Frying, Sautéing
- Cuisine: Indonesian