Phat Bai Horapha (Thai-Style Beef With Basil and Chiles)
Sliced beef and Thai purple basil come together in a quick, flavor-packed stir-fry that captures the essence of Thai street food—without the hunt for hard-to-find holy basil. While traditional phat ka-phrao relies on holy basil (ka-phrao), its sweet, anise-scented cousin, Thai purple basil (bai horapha), is easier to source and just as delicious. This dish balances spicy, savory, and herbaceous notes, making it a perfect weeknight meal served with rice.
Why It Works

Mortar and pestle magic: Smashing garlic and chiles releases more flavor than chopping or using a food processor, thanks to the gentle crushing action that breaks down cells without overprocessing.
Batch browning: Cooking beef in batches ensures a deep sear—no steaming or overcooking. This caramelization adds rich, meaty flavor that elevates the entire dish.
Double the aromatics: A combination of pounded and sliced garlic/chiles creates layers of flavor, while makrut lime leaves add a bright, citrusy kick.
Pounding Out Flavor With a Mortar and Pestle
Thai cooking often starts with a mortar and pestle, and this recipe is no exception. The tool is not only easier to clean than a food processor but also produces a more vibrant paste. Here’s how to do it:Roughly chop half the Thai bird chiles and garlic, then add them to a mortar with palm sugar (or unrefined cane sugar for a substitute). Grind until smooth, using the sugar as an abrasive to break down the fibrous ingredients. Stir in fish sauce to loosen the paste—this creates a concentrated, flavorful sauce that will coat the beef.

Stir-Frying the Beef
For tender, juicy beef, slice flank, skirt, hanger, or flap steak against the grain into 1/4-inch strips. Marinate the slices with a mix of fish sauce, soy sauce, and white sugar—this not only seasons the meat but also helps it brown faster.When cooking, heat oil in a wok until smoking. Add half the beef and let it sear for 1 minute (don’t stir—this develops a crispy crust). Toss briefly until just pink, then transfer to a bowl. Repeat with the remaining beef—crowding the wok will steam the meat, so batches are key.
Adding (More) Aromatics
Wipe the wok clean and reheat it. Return the beef to the pan, then add sliced shallots, the remaining garlic and chiles, and thinly sliced makrut lime leaves (discard the tough central vein). Cook for 1 minute, stirring constantly, until the aromatics are fragrant and the shallots soften. The combination of pounded and sliced garlic/chiles adds depth, while the lime leaves infuse a bright, tropical note.
Finishing Touches

Pour the chile-garlic sauce over the beef and stir until it reduces to a thin glaze (you want the meat to be moist, not swimming in sauce). Then, add the star of the show: a big handful of Thai purple basil. Toss quickly—overcooking the basil will turn it bitter. Season with a pinch of salt, then garnish with extra lime leaves and fried shallots. Serve immediately with rice for a satisfying, spicy meal.
Recipe Details
Prep Time: 5 minutes
Cook Time: 15 minutes
Active Time: 15 minutes

Marinating Time: 15 minutes (up to overnight)
Total Time: 35 minutes
Serves: 2–3
Ingredients
1 pound (450 g) flank, skirt, hanger, or flap steak, sliced into 1/4-inch strips (against the grain)

1 tablespoon (15 ml) soy sauce, divided
5 teaspoons (25 ml) Asian fish sauce, divided
1 teaspoon (4 g) white sugar
4–6 fresh red or green Thai bird chiles, divided
6 medium garlic cloves, divided

1 1/2 tablespoons (20 g) palm sugar (or light brown sugar/panela)
1 small shallot, thinly sliced
4 makrut lime leaves, thinly sliced (central vein removed), plus more for garnish
2 tablespoons (30 ml) vegetable or canola oil, divided
2 cups packed Thai purple basil (about 2 ounces; 55 g)

Dried Thai chile flakes or red pepper flakes (optional, for extra heat)
1/4 cup fried shallots (store-bought or homemade)
Kosher salt
Cooked rice, for serving
Directions

Marinate the beef: Combine the steak strips, 1 teaspoon soy sauce, 2 teaspoons fish sauce, and white sugar in a bowl. Toss to coat, then refrigerate for at least 15 minutes (or up to overnight).
Make the chile-garlic sauce: Roughly chop half the chiles and garlic. Add them to a mortar with palm sugar and grind into a smooth paste. Stir in the remaining fish sauce and soy sauce; set aside. Finely slice the remaining garlic and chiles, then mix with the shallot and lime leaves in a small bowl.
Cook the beef: Heat 1 tablespoon oil in a wok over high heat until smoking. Add half the beef and sear for 1 minute (don’t stir). Toss briefly until just pink, then transfer to a bowl. Repeat with the remaining oil and beef. Wipe the wok clean.
Add aromatics: Reheat the wok. Return the beef to the pan, then add the sliced garlic-chile-shallot-lime leaf mixture. Cook for 1 minute, stirring constantly, until fragrant.
Finish the dish: Pour the chile-garlic sauce into the wok. Stir until the sauce reduces to a glaze (about 30 seconds). Add the basil and toss quickly to combine. Season with salt and optional chile flakes. Transfer to a platter, garnish with extra lime leaves and fried shallots, and serve with rice.

Notes
Palm sugar substitute: If you can’t find palm sugar, use light brown sugar or panela for a similar caramel-y sweetness.
Makrut lime leaves: These are often labeled “kaffir lime leaves,” but “makrut” is the preferred term (avoid “kaffir,” which is derogatory). If unavailable, omit— the dish will still be delicious.
Basil swap: Holy basil (ka-phrao) or sweet Italian basil work in a pinch, but Thai purple basil is recommended for its unique anise flavor.
Fried shallots: Make your own by slicing shallots thin and frying in oil until crispy, or buy them in the dried-goods section of Asian supermarkets.

Mortar and pestle alternative: A mini food processor works, but a mortar and pestle yields the best flavor.
Nutrition Facts
Nutrient
Amount per Serving
% Daily Value*

Calories
555
—
Total Fat
25g

32%
Saturated Fat
6g
31%
Cholesterol

119mg
40%
Sodium
1382mg
60%

Total Carbohydrate
35g
13%
Dietary Fiber
3g

11%
Total Sugars
11g
—
Protein

46g
—
Vitamin C
9mg
47%

Calcium
122mg
9%
Iron
5mg

28%
Potassium
840mg
18%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.











