Beef Meatball Pho Soup [Phở Bò Viên]

I love soup this time of year. It's warm, comforting and so easy to make. One of my favorite soups is Vietnamese Beef Meatball Pho Soup [Phở Bò Viên]. I especially love the complexity of the broth because it's a unique flavor of rich beef, hints of cinnamon, ginger, star anise, clove, pepper, and even a touch of sweet and salty. Aside from the broth, there's the rice noodles (gluten free!) that absorbs all the broth flavor. And even further, the fresh herb garnishes of basil, mint, cilantro as well as squeeze of lime. Then you get a bite of this tender, beefy meatball that just turns this soup into such an amazing and filling meal. Soup has never been so easy yet so complex as a bowl of pho...
Let me preface this recipe by saying this one takes some time but it's so so worth it. The good thing is, it's a crockpot friendly dish. You can make part of it in advance. Even the meatballs are freezer friendly! But together, the components of this dish really come together as an amazing, delicious bowl of soup. The broth is key and it does take 8-12 hours to prepare. It's essentially a broth you assemble, throw a cover on and walk away to enjoy decorating your home for the holidays or online shopping or playing Candy Crush or taking a nap or what have you.

But, if you want to make use of those hours, you can make the meatballs, as those take 1-2 hours to prepare. Bonus: you can make a big batch of meatballs and freeze them for later. The rest is easy peasy since the noodles don't take more than a few minutes to prepare on the stovetop and you can use whatever you have as a garnish or topping to your soup. All in all, it's delicious and definitely worth the time and effort!

Beef Meatball Pho Soup
recipe adapted from AllRecipes

2 pounds beef shank
1 pound beef oxtail
1 onion, chopped
3 cloves garlic
1 ounce whole star anise pods
1/2 cinnamon stick
1 whole clove
1/2 teaspoon black peppercorns
1 slice fresh ginger root
1 teaspoon white sugar
1 teaspoon salt
1 teaspoon fish sauce

2 pounds ground beef
1 teaspoon baking powder
2 tablespoons fish sauce
1 tablespoons finely chopped garlic
1 teaspoons sugar
1 teaspoon garlic powder
1 teaspoon onion powder
1/2 teaspoon ground black pepper
1/2 teaspoon freshly grated Ginger

1 1/2 pounds dried flat rice noodles

Suggested add ins or toppings:
chopped fresh cilantro
fresh mint leaves
fresh basil leaves
bean sprouts (mung beans)
limes, quartered
thinly sliced green onion
crushed pork cracklings
sriracha hot pepper sauce
hoisin sauce

To make the broth: Place the beef shank in a crockpot (5-6 quart size). Season with salt and fill the crockpot two thirds full of water. Cover and cook on high for about 2-4 hours.

Skim fat from the surface of the soup, and add the oxtail, garlic and onions. Tie the anise pods, cinnamon stick, cloves, peppercorns and ginger in a cheesecloth or place in a spice bag; add to the soup. Stir in sugar, salt and fish sauce. Add more water to keep it at two thirds full if needed.

Cover once again and cook on high for 4-6 hours or on low for 6-8 hours. Check for seasoning and season to taste if needed. Remove and discard the spices. Remove the meat off the bones, discarding the bones and reserving the meat aside. Strain the broth and return to the crockpot to simmer on low. Add the reserved meat back into the crockpot.

Prepare the meatballs: Combine all the meatball ingredients in a large bowl and mix it well. Cover with plastic wrap and chill in the freezer for about 30 minutes to 1 hour. 

Remove meatballs from freezer and place 1/4 of the meatball mixture in a food processor. Process to a completely smooth but firm paste. Stop occasionally to scrape down the sides of the work bowl.  Transfer the beef paste to another bowl. Repeat and process the remaining beef 1/4 of the mixture at a time to avoid overloading your food processor work bowl.   

Cover the processed beef mixture and chill in the freezer for another 30 minutes. Meanwhile, bring a pot of water to boil.

Remove the processed beef mixture and using wet hands, form into meatballs slightly smaller than the size of a golfball. The mixture will be sticky so be sure your hands are wet when forming the meatballs. 

Place the meatballs into the boiling water and allow them to float and cook for about 7-10 minutes.

Remove the meatballs from the boiling water and transfer them into a bowl filled with ice water for 1-2 minutes. This will stop the meatballs from cooking and help them tighten up. Remove from ice water and drain. [Any extra meatballs not being served in the pho can be frozen and enjoyed later.]

Prepare the noodles: Bring a large pot of lightly salted water to a boil. Soak the rice noodles in water for about 20 minutes, then cook in boiling water until soft, but not mushy, about 5 minutes. 

To serve: Place some noodles into a serving bowl and top with a few meatballs. Ladle hot broth over the noodles and meatballs in the bowl. Garnish with your choice of toppings.


  1. mmmm, looks so appetizing and cooking time doesn't looks like it take long. Thank you :)

  2. I'm not usually a fan of pho, but you make it sound so appetizing.