Nasi Goreng
This post may contain affiliate links. Please read my disclosure policy.
Nasi Goreng is Indonesian fried rice, and 2 ingredients are what separate it from every other fried rice you’ve made. Kecap manis brings a thick molasses sweetness and shrimp paste brings a deep savory funk. Top it with a fried egg and break the yolk over everything.

The first time I had proper nasi goreng, what struck me was how dark it was.
Chinese fried rice is pale and light. This is a deep glossy brown, almost mahogany, and it tastes sweet and salty and faintly funky all at once. That’s kecap manis doing the work, a thick Indonesian soy sauce closer to molasses than to anything in your cupboard.
The other half is shrimp paste. It smells alarming in the jar and I won’t pretend otherwise. But it melts into the oil and disappears, leaving behind a savory depth you can’t get any other way. Nobody eating it says “this tastes like shrimp.” They just say it tastes like more.
Then the fried egg goes on top, and you break the yolk over the rice so it runs through everything. That’s the whole dish, and it’s what nasi goreng looks like on every warung table in Indonesia.
It’s a 35 minute dinner built on leftover rice. The only thing standing between you and it is a trip to an Asian grocery for 2 bottles.

Kecap Manis And Shrimp Paste
These are the 2 ingredients that make this nasi goreng rather than fried rice with extra steps. Worth understanding before you shop.
- Kecap manis is Indonesian sweet soy sauce, and it’s nothing like the soy sauce you have. It’s thick, almost syrupy, sweetened heavily with palm sugar, and dark as molasses. It’s what gives nasi goreng its color and its sweet savory backbone. ABC is the common brand and you’ll find it at any Asian grocery or online.
- No kecap manis? Simmer 4 tablespoons of regular soy sauce with 4 tablespoons of brown sugar and 1 teaspoon of molasses over low heat for 3 to 4 minutes, until it thickens and coats a spoon. That gets you close. It won’t have quite the same depth, but it’s much better than plain soy sauce.
- Shrimp paste, or terasi, is fermented ground shrimp sold in a block or a jar. It smells strong. It smells very strong. Then it hits hot oil, mellows completely, and turns into a savory depth that nothing else replicates.
- Toasting it first is standard practice in Indonesia and it takes the edge off. Wrap a tablespoon in foil and toast it in a dry pan for 2 minutes a side, or microwave it for 20 seconds, before it goes in the wok. Optional, but worth trying once so you can compare.
- No shrimp paste? There isn’t a clean substitute, and I’d rather tell you that than pretend. Add an extra teaspoon of fish sauce and a teaspoon of miso paste, which gets you some of the fermented savoriness. The dish will be good. It just won’t be quite this dish.
Ingredients in Nasi Goreg

- Cooked rice (4 cups, day old): Cold rice from the fridge is what you want. Fresh rice is too moist and it steams and clumps instead of frying. Jasmine is traditional, long grain and basmati both work, and brown rice is fine if that’s what you have. If you’re starting from scratch, cook it, spread it on a tray, and refrigerate it uncovered for a few hours.
- Vegetable oil (2 tablespoons): Neutral with a high smoke point. This gets hot.
- Onion (1 small, chopped) and garlic (2 cloves, minced): The base of everything. Go in first and cook until fragrant and just browning.
- Red chili peppers (2, seeded and minced): Heat, and it’s meant to be there. Take the seeds out for warmth rather than fire, leave them in if you want it to bite. Leave them out entirely and the dish is still very good, just milder.
- Shrimp paste (1 tablespoon): The savory foundation. See the section above for what it is and how to handle it. Don’t let the smell put you off, because it transforms completely in hot oil.
- Chicken breast (1, boneless and skinless, diced): Diced small so it cooks fast. Thighs work and stay juicier. Prawns are traditional and excellent, and they only need 2 minutes so add them later.
- Kecap manis (1 tablespoon): The sweet Indonesian soy sauce that gives the dish its color and character. Substitute above if you can’t find it.
- Fish sauce (1 tablespoon): Salt and savory depth. It smells sharp in the bottle and vanishes into the dish.
- Ketchup (2 tablespoons): This surprises people, but tomato is genuinely common in home style nasi goreng and it adds a tang that balances the sweetness. Not traditional in every version, and it works.
- Mixed vegetables (1 cup, carrots, green beans, peas): Frozen is completely fine and it’s what I use. Whatever’s in the freezer.
- Eggs (2 large, lightly beaten, plus 1 per person for topping): Two get scrambled into the rice for texture. Then one fried egg per person goes on top, which is how this is served in Indonesia and it’s the best part.
- Green onions (2, chopped): Scattered over at the end for freshness and color.
- Salt and pepper (to taste): Season at the end. There’s already a lot of salt from the fish sauce and shrimp paste, so taste first.
How To Make Nasi Goreng

Get everything ready before you turn on the heat. This cooks in about 15 minutes of constant motion and there’s no time to be chopping an onion partway through. Rice out of the fridge, everything chopped, sauces measured, all of it within reach.
Toast the shrimp paste, if you like. Wrap the tablespoon in foil and toast it in a dry pan 2 minutes a side, or microwave it 20 seconds. It mellows the sharpness. Skip it and go straight to the wok if you’d rather.
Aromatics first. Oil into a large wok or frying pan over high heat. Garlic and onion in, stir frying 1 to 2 minutes until fragrant and lightly browned. Then the chilies and shrimp paste, another 1 to 2 minutes. The paste will break up and melt into the oil, and the smell changes completely at this point.

Chicken next. Diced chicken into the pan and cook until it’s no longer pink.
Then the rice. All 4 cups in, and stir fry 5 to 7 minutes until it’s heated through and starting to brown in places. Break up any clumps with the back of your spatula as you go. Keep everything moving, because rice sitting still in a hot wok sticks.

Sauces in. Kecap manis, fish sauce, and ketchup, then stir fry another minute so every grain gets coated. You’ll watch the whole thing turn dark and glossy, which is exactly what should happen.
Vegetables, 2 to 3 minutes until heated through.

Scramble the eggs into it. Push the rice to one side of the wok, pour the beaten eggs into the space, scramble them until set, then fold them through the rice.
Season and taste. Salt and pepper as needed, though there’s already plenty of salt in play so taste before you add.

Fry the eggs. One per person in a separate pan, in a good amount of hot oil, until the whites are crisp at the edges and the yolk is still runny. This is the Indonesian way and the crispy edges matter.
Serve it properly. Rice into bowls, a fried egg on top of each, green onions scattered over. Cucumber and tomato slices on the side, sambal oelek on the table. Then break the yolk and stir it through, which is the whole point.
Nasi Goreng Or Fried Rice?
Nasi goreng literally means fried rice, so technically it’s all the same family. But the differences are real.
Chinese fried rice is seasoned with light soy sauce and sesame oil. It stays pale, it’s savory rather than sweet, and it usually finishes with white pepper.
Nasi goreng is built on kecap manis and shrimp paste. It comes out dark and glossy, it’s sweet and salty and funky together, and there’s usually chili in it. It’s typically served with a fried egg on top, cucumber and tomato alongside, and sambal on the table.
Thai fried rice sits somewhere between, seasoned with fish sauce and finished with lime.
Same idea, three different destinations. If you’ve only ever made the Chinese version, this one will surprise you.

Things Worth Knowing
- Cold rice, always. Day old from the fridge. Fresh rice steams and clumps and you’ll never get that fried texture.
- Prep everything first. Fifteen minutes of constant motion means no time to chop anything once you’ve started.
- Get the pan properly hot. High heat is what gives you the browned bits. A gentle pan gives you warm rice.
- Keep it moving. Constant stirring stops the rice sticking and cooks it evenly.
- Toast the shrimp paste. Two minutes and it takes the sharp edge off. Worth trying once to see if you prefer it.
- Don’t salt until the end. Fish sauce and shrimp paste bring a lot of salt on their own.
- The fried egg isn’t optional. Or it is, but the runny yolk running through the rice is a big part of what makes this dish what it is.
Variations
Prawns. Very traditional. Add them in the last 2 to 3 minutes so they don’t overcook and go rubbery.
Vegetarian. Skip the chicken, and swap the shrimp paste and fish sauce for 1 tablespoon of miso paste plus extra kecap manis. Different, still good.
Spicier. Leave the chili seeds in, or stir a spoonful of sambal oelek into the rice.
With krupuk. Indonesian prawn crackers on the side. They’re at the same Asian grocery and they make it feel like a proper plate.
Sweeter. Some households use closer to 2 tablespoons of kecap manis. Start at 1, taste, and add if you want it darker and sweeter.

What To Serve With It
The traditional plate is simple. Sliced cucumber and tomato on the side, cold and fresh against the hot rice. Sambal oelek on the table for anyone who wants more heat. Prawn crackers if you have them.
That’s genuinely all it needs. It’s a complete meal on its own with the egg and the chicken, so anything else is a bonus rather than a necessity.
If you’re making a bigger spread, satay skewers alongside make it a proper Indonesian meal.
Make Ahead And Storage
The rice is your make ahead. Cook it a day early and refrigerate it uncovered on a tray. That’s not just convenient, it genuinely makes the dish better.
Fridge: 4 days in an airtight container. Don’t store the fried egg with it, since that’s best made fresh.
Freezer: up to 3 months. Thaw overnight in the fridge before reheating.
Reheating: a hot skillet with a splash of oil beats the microwave, and you get some of the crisp edges back. Microwave works if you’re in a hurry. Fry a fresh egg either way, because it takes 3 minutes and it makes it feel like a new meal.

Discover More Asian Recipes
Beef Rendang
Indonesian Meatballs
Beijing Beef
Chinese Lemon Chicken
Before You Begin! If you make this, please leave a review and rating letting us know how you liked this recipe! This helps our business thrive & continue providing free recipes.

Nasi Goreng
Video
Ingredients
- 2 tablespoons vegetable oil
- 1 small onion (chopped)
- 2 cloves garlic (minced)
- 2 red chili peppers (seeded and minced)
- 1 tablespoon shrimp paste
- 1 chicken breast (boneless and skinless, diced)
- 4 cups cooked rice (preferably day old)
- 1 tablespoon sweet soy sauce (kecap manis)
- 1 tablespoon fish sauce
- 2 tablespoons ketchup
- 1 cup mixed vegetables (carrots, green beans, peas)
- 2 large eggs (lightly beaten)
- salt and pepper (to taste)
- 2 green onions (chopped)
Before You Begin! If you make this, please leave a review and rating letting us know how you liked this recipe! This helps our business thrive & continue providing free recipes.
Instructions
- In a large wok or frying pan, heat the vegetable oil over high heat. Add the garlic and onion and stir-fry for 1-2 minutes until fragrant and lightly browned. Add the red chili peppers and shrimp paste and stir-fry for another 1-2 minutes.
- Add the diced chicken to the pan and cook until it's no longer pink. Add the cooked rice and stir-fry for 5-7 minutes until heated through and lightly browned.
- Add the sweet soy sauce, fish sauce, and ketchup and stir-fry for another minute. Add the mixed vegetables and stir-fry for another 2-3 minutes until heated through.
- Push the rice mixture to one side of the wok or pan and pour the beaten eggs onto the other side. Scramble the eggs until they are cooked through, then mix them into the rice mixture.
- Season with salt and pepper. Garnish with chopped green onions and serve hot with a fried egg on top.
Notes
- Day old rice: cold rice from the fridge fries properly. Fresh rice steams and clumps.
- Kecap manis: Indonesian sweet soy sauce, thick and dark. Substitute: simmer 4 tablespoons soy sauce with 4 tablespoons brown sugar and 1 teaspoon molasses until thickened.
- Shrimp paste: it smells strong raw and mellows completely in hot oil. Toast it in foil for 2 minutes a side first if you want to take the edge off.
- No shrimp paste? Add an extra teaspoon of fish sauce plus a teaspoon of miso paste. Note this is in addition to the fish sauce already in the recipe.
- Prep everything first. This cooks fast and there’s no time to chop once you’ve started.
- High heat, keep it moving. That’s what gives you browned rice instead of warm rice.
- Season at the end. Fish sauce and shrimp paste bring plenty of salt already.
- Fry the eggs separately in hot oil so the edges crisp and the yolk stays runny. One per person, on top.
Nutrition Information
Notice: Nutrition is auto-calculated for your convenience. Where relevant, we recommend using your own nutrition calculations.
Frequently Asked Questions
What is kecap manis and can I substitute it?
It’s Indonesian sweet soy sauce, thick and dark and closer to molasses than to regular soy. It gives nasi goreng its color and its sweetness. If you can’t find it, simmer 4 tablespoons of soy sauce with 4 tablespoons of brown sugar and 1 teaspoon of molasses for 3 to 4 minutes until it thickens.
Do I really need shrimp paste?
It’s what gives the dish its savory depth and there’s no clean substitute, so I’d get some if you can. If you can’t, add an extra teaspoon of fish sauce plus a teaspoon of miso paste. The result is good, it just isn’t quite the same dish.
Why does my shrimp paste smell so strong?
Because it’s fermented shrimp, and that’s exactly what it should smell like. It completely transforms in hot oil. If the raw smell bothers you, toast it in foil for 2 minutes a side first, which is what’s usually done in Indonesia.
What’s the difference between nasi goreng and Chinese fried rice?
The seasoning. Chinese fried rice uses light soy sauce and sesame oil and stays pale and savory. Nasi goreng uses kecap manis and shrimp paste, comes out dark and glossy, and tastes sweet and salty and funky together.
Do I have to use day old rice?
It genuinely works better. Cold rice has dried out and firmed up, so it fries instead of steaming. If you only have fresh, spread it on a tray and let it cool and dry for at least 30 minutes.
Can I make it without chicken?
Yes. Prawns are traditional and only need 2 to 3 minutes at the end. For a vegetarian version, skip the meat and swap the shrimp paste and fish sauce for miso.
Why is the fried egg on top?
That’s how nasi goreng is served in Indonesia. You break the yolk and stir it through the rice, and it makes everything richer. Fry it in plenty of hot oil so the edges go crisp and the yolk stays runny.





