Vietnamese Pho Broth From Scratch, Step by Step

Updated November 3, 2026

Total time
5 hr 10 min
prep 35 min · cook 4 hr 35 min
Serves
8
portions as written
Safe temperature (USDA)
145°F / 63°C
check the thickest piece

Jump to recipe

Vietnamese Pho Broth From Scratch, Step by Step

Vietnamese pho broth is a clear, aromatic beef stock simmered with beef bones, charred onion and ginger, toasted spices, and fish sauce, then served hot with rice noodles and garnishes. This version makes a northern-style-leaning beef broth, though pho varies by region and household; the recipe gives you a balanced base to adjust at the table. Allow about five hours from start to finish, mostly for blanching and a long, gentle simmer.

What You’ll Need

  • 5 lb (2.3 kg) beef bones, ideally a mix of knuckle or joint bones and marrow bones; ask a butcher to cut large bones into manageable pieces.
  • 2 lb (900 g) beef brisket, optional but useful for serving as sliced pho meat.
  • 6 qt (5.7 L) cold water, plus more for blanching.
  • 2 large yellow onions, about 1 lb (450 g) total, halved lengthwise and peeled.
  • 1 piece fresh ginger, 5 oz (140 g), split lengthwise.
  • 4 whole star anise, 2 cinnamon sticks, about 3 in (7.5 cm) each, 1 tbsp (6 g) coriander seeds, 1 tsp (2 g) fennel seeds, 6 whole cloves, and 1 small black cardamom pod, if available.
  • 2 tbsp (30 ml) fish sauce to start, plus more to taste. Fish sauce is traditional; light soy sauce can substitute, but gives a less rounded, less distinctly Vietnamese flavor.
  • 1 tbsp (12 g) rock sugar or granulated sugar, optional, to soften the broth’s savory edges.
  • 1 tbsp (18 g) fine salt to start, plus more to taste.
  • For serving, if desired: 1 lb (450 g) dried flat rice noodles, thinly sliced cooked brisket, thinly sliced raw beef intended for hot broth, sliced scallions, cilantro, lime wedges, and fresh Thai basil or sawtooth herb. Bean sprouts, sliced chile, and hoisin or chile sauce are optional table additions.
  • A large stockpot of at least 8 qt (7.6 L), a fine-mesh strainer, tongs, a small dry skillet, and a thermometer for checking the brisket.

Step-by-Step

  1. Blanch the bones. Put the bones and optional brisket in the stockpot and cover with cold water. Bring to a full boil over high heat and boil for 10 minutes. Foam and impurities will rise to the surface. Drain the pot, rinse the bones and brisket under cool running water, and rinse the pot well. This first boil is discarded; it helps the finished broth taste cleaner and look clearer.
  2. Char the onion and ginger. While the bones blanch, heat a heavy skillet over medium-high heat, or use a broiler. Put the onion and ginger cut-side down in the dry skillet and cook until deeply browned in patches, turning as needed, about 10–15 minutes. A little blackening is fine; avoid burning them all over, which can make the broth bitter. Set aside.
  3. Toast the spices. Put the star anise, cinnamon, coriander, fennel, cloves, and black cardamom, if using, in a dry skillet over medium-low heat. Toast for 2–3 minutes, shaking the pan, until fragrant. Transfer to a spice bag or tie them in a clean piece of cheesecloth. If you do not have either, add them loose and strain carefully later. Black cardamom can be hard to find; leave it out rather than using green cardamom, which has a different, brighter flavor.
  4. Start a gentle simmer. Return the rinsed bones to the clean pot. Add 6 qt (5.7 L) fresh cold water and bring it slowly to a simmer over medium heat, which should take about 15 minutes. Skim off foam as it appears. Add the brisket, if using, along with the charred onion, ginger, and spice bag. Lower the heat so the liquid barely simmers: a few small bubbles should rise, but it should not churn or boil hard.
  5. Simmer and remove the brisket when tender. Simmer uncovered for about 4 hours, skimming the surface occasionally and adding a little hot water if bones become exposed. Check the brisket after about 2 hours; remove it when a fork slides into the thickest part easily. Check its center with a food thermometer: the USDA FSIS safe minimum for a whole cut of beef is 145°F (63°C), followed by a 3-minute rest. Cool the brisket briefly, cover it, and refrigerate it if it will not be sliced and served soon. Keep the bones simmering for the full broth time.
  6. Strain and season. Lift out the bones and aromatics with tongs, then pour the broth through a fine-mesh strainer into a clean pot. Discard the spent aromatics and bones; do not try to extract more flavor by pressing them into the broth, which can cloud it. Stir in 1 tbsp (18 g) salt, 2 tbsp (30 ml) fish sauce, and the optional sugar. Simmer for 5 minutes, taste, and adjust with fish sauce or salt in small increments. The broth should taste savory and aromatic on its own, but a little stronger than you want the finished bowl because noodles and garnishes will dilute it.
  7. Prepare bowls and serve hot. Cook the rice noodles according to the package directions, then drain and divide among warm bowls. Slice the cooked brisket thinly across the grain. Add brisket and any thinly sliced raw beef intended to cook in the broth. Bring the strained broth to a rolling boil, then ladle it immediately over the beef; the hot broth cooks the thin slices in the bowl. Add scallions, herbs, and lime to taste. For a fully cooked serving, simmer the thin beef in the pot until it reaches 145°F (63°C) as measured with a food thermometer.

Common Mistakes

Skipping the blanch: Raw bones release blood and proteins that can leave a murky broth with a strong, sometimes metallic taste. The brief first boil is not the main stock-making step: drain it, rinse away the residue, and start again with fresh water.

Boiling the broth hard: Vigorous bubbling emulsifies fat and fine particles into the liquid. The result can taste greasy and look cloudy. Keep the pot at a quiet simmer and skim surface foam and excess fat as needed.

Overdoing the spices: Pho should smell fragrant, not like a potpourri of star anise and cinnamon. Measure the spices, toast them only until aromatic, and remove them with the onion and ginger when straining. Leaving them in for hours can make the broth sharp or medicinal.

Seasoning too early or too heavily: Water evaporates during a long simmer, concentrating salt and fish sauce. Season near the end, taste, and make small adjustments. A broth that seems mildly under-seasoned in the pot can taste just right once it is served with noodles and meat.

Pressing solids through the strainer: Squeezing bones, spices, and vegetables into the stock pushes small particles into the liquid. Let the broth drain naturally for a clearer result.

Tips

Use a mix of joint bones, which contribute gelatin and body, and marrow bones, which add richness. If the butcher has beef knuckle, neck, or leg bones, they are useful additions. Avoid relying entirely on marrow bones: too much marrow can make the stock feel oily without giving it the same body.

Choose a pot that leaves room at the top so you can skim safely. Keep the water level just above the bones, and top up with hot water rather than cold if necessary; cold additions interrupt the simmer. Keep the lid off or partly ajar so you can monitor the liquid and skim it.

For a cleaner, less fatty broth, refrigerate it after straining and lift off the solid fat once chilled. This is optional: some fat carries flavor, so remove only as much as you prefer. The broth can be made a day ahead, which also makes it easier to separate the fat and check the seasoning again when reheating.

Set herbs, lime, chile, and sauces out separately so each person can season their own bowl. Hoisin and chile sauce are common table condiments in many places, but they are not necessary in the broth itself. For a more delicate bowl, start with a small amount and add more after tasting.

Cool leftover broth promptly in shallow containers or an ice bath, and refrigerate it within 2 hours. Keep it refrigerated for 3–4 days or freeze it for longer storage. Reheat only the amount you need until it reaches 165°F (74°C), and bring broth intended for pouring over raw thin-sliced beef to a rolling boil.

Troubleshooting

The broth is cloudy: It may have boiled too vigorously, or the bones may not have been rinsed well after blanching. Strain it through a fine-mesh strainer, let it settle, and carefully ladle off the clearer liquid. It will still be usable; avoid stirring up sediment when serving.

It tastes weak or watery: Simmer uncovered for another 20–30 minutes to reduce it, then taste again. If the aroma is weak but the liquid is already concentrated, check whether the spice bag was added and whether the onions and ginger were well charred. Add seasoning gradually rather than trying to fix a weak broth with a large pour of fish sauce.

It tastes too salty: Add unsalted water in small amounts, then simmer briefly and retaste. If you have unseasoned stock, use that instead of water. Do not add noodles to the pot to absorb salt; they become overcooked and do not reliably correct the broth.

It tastes bitter or overly medicinal: The spices may have burned during toasting, or they may have simmered too long. Strain the broth immediately. A little water and a small amount of sugar may soften the flavor, but a strongly burnt taste is difficult to remove, so do not expect seasoning to erase it.

The broth feels greasy: Skim the fat while hot, or chill the strained broth and remove the firm fat layer. Reheat gently and taste before adding more salt, since chilling and reheating can make the seasoning seem more pronounced.

The brisket is tough: Return it to gently simmering broth and cook longer, checking every 20–30 minutes. Toughness usually means its connective tissue needs more time to soften. Slice it thinly across the grain once tender.

Frequently Asked Questions

Can I make pho broth without beef brisket?
Yes. The bones provide the base, and brisket is optional. Omit it for broth only, or cook brisket separately if you want more control over its texture.

Why blanch beef bones before making pho?
Blanching briefly loosens blood and surface proteins that would otherwise cloud the broth or give it a stronger flavor. Drain and rinse the bones before the long simmer; do not keep the blanching water.

Can I cook pho broth in a slow cooker?
Yes, if the cooker is large enough for the bones and water. Blanch the bones and char the aromatics first, then cook on low until the broth is flavorful, usually 8–10 hours. Follow the appliance’s instructions and check that the brisket reaches the USDA FSIS safe minimum temperature for beef.

Can I use a pressure cooker?
Yes, but use the appliance directions and never fill it above its stated limit. Blanch and rinse the bones first for a cleaner flavor. Pressure-cooked broth can be good, though its flavor and clarity may differ from a gently simmered stock.

How should I store pho broth?
Refrigerate it within 2 hours in shallow containers and use it within 3–4 days, or freeze it. Reheat leftovers to 165°F (74°C). Store noodles, herbs, and meat separately so they do not soften in the broth.

Can I make the broth ahead?
Yes. Make and strain it up to a few days ahead, cool it promptly, and refrigerate. Remove solidified fat if desired, then reheat the amount needed to 165°F (74°C) before serving. Add fresh herbs and noodles only when assembling bowls.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).