Bakso | Indonesian Food

The Starving Chef is supported by Hungry People like you. When you make a purchase through an affiliate link on my site, I may earn a little bit of cash on the side (at no extra cost to you) to help keep my kitchen running. Read our disclosures here.

I’ve been on an Asian kick lately, especially with the weekly challenges consisting of Indian cuisine last week, and Indonesian this week. Plus, I’ve been having fun with some Avatar: The Last Airbender themed recipes lately too, which takes a ton of influence from ethnic cuisines – so be on the lookout for those popping up on the blog in the very near future!

Bakso is a common street food across Asia, but apparently is especially popular throughout Indonesia and it’s capital, Jakarta. While there are many varieties of bakso, and different ways to prepare it, every bakso recipe includes meatballs, broth, and noodles.

One day I hope to travel across Asia to get an authentic taste of these flavors for myself so I’ll truly be able to recreate them back at home. But for now, extensive research on the culture and country helps when I want to get as close as I can to the real deal.

Bakso can come in many combinations of beef and other meats such as shrimp or chicken. I decided to mix mine with some veal, because I was running out of beef and just happened to have some on hand.

I mixed my meat together with the eggs and corn meal until I was able to form one inch balls that held their shape. While preparing the meat, I brought four cups of beef broth to a simmer on the stove, and tossed in some cardamom pods to soften.

Then I formed the meatballs and dropped them into the broth in batches of 8-10.

The meatballs should initially sink to the bottom of the broth, but will be ready when they start bobbing around on the top.

The meatballs will be relatively firm and shouldn’t crumble when gently pressed upon. If your meatballs are crumbly, let them cook a few minutes longer. Then remove from the broth and onto plates to cool.

While the meatballs are cooking, in a separate skillet, saute the onions, celery, ginger, and garlic until fragrant and the onions have softened. At this point, I also quickly poached a couple eggs in the beef broth, then removed the eggs to an ice bath while I finished up the bakso.

Cook up the rice noodles in the broth, add the onion mix to the broth, and bring to a boil until the rice noodles are cooked.

When I plated my dish, I used a ladle to scoop up extra broth and poured it over the meatballs and poached egg to reheat them. I then just sprinkled on the fried onion and green onions.

This is hands down one of the most delicious dishes I have ever made. It’s full of crazy awesome flavors and is so simple, I could easily make this after a long day at the office or on a cold winter night (not that it isn’t just as amazing on a summer evening!). Selamat makan!

bakso recipe ingredients

Bakso | Indonesian Food

The Starving Chef
Bakso is a common street food across Asia, but apparently is especially popular throughout Indonesia and it's capital, Jakarta.
Prep Time 15 mins
Cook Time 15 mins
Meatball Cooking Time 30 mins
Total Time 1 hr
Course Dinner, International, Soup
Cuisine Asian, International
Servings 2






  • Preheat the oven to 425 F. Combine the ingredients for the meatballs until completely incorporated. Roll into one inch wide balls. Arrange on a baking sheet and bake for 20-30 minutes, flipping once in the middle, until the meatballs have browned and are cooked through.
  • In a large pot over medium high heat, saute the onion, ginger, celery and cardamom pods in the ghee.
  • When the cardamom pods are starting to pop, add the broth and fish sauce. Bring to a rapid boil then add the rice noodles. Cook for 2 minutes.
  • Slowly pour in the egg whites in a steady stream while stirring the pot. Continue cooking until the noodles are al dente – another 2-3 minutes.
  • Serve garnished with a poached egg, sambal olek, green onions and cilantro. Enjoy!
Keyword eggs, meatballs, noodles
Tried this recipe?Let us know how it was!