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 need for hard-to-find holy basil. While traditional phat ka-phrao relies on jagged-edged holy basil (ka-phrao), phat bai horapha uses sweet, anise-like Thai purple basil (bai horapha), a more accessible alternative that’s still beloved in Thailand. The result is a spicy, savory dish that’s ready in under 40 minutes, perfect for weeknights or casual dinners.

Why It Works
Mortar and pestle magic: Smashing garlic and chiles releases more flavor than chopping or blending, and the simple tool is easier to clean than a food processor.
Batch browning: Cooking beef in batches ensures a good sear—no steaming or overcooking.

Layered aromatics: Combining pounded and sliced garlic/chiles adds depth, while makrut lime leaf (optional) boosts the fragrance.
Pounding Out Flavor With a Mortar and Pestle
Start like most Thai recipes: with a mortar and pestle. This tool does more than just grind—its crushing action coaxes out the full flavor of garlic and chiles. For fibrous ingredients like these, add a touch of sugar (palm sugar is ideal for its caramel notes, but unrefined cane sugar works too) as an abrasive. It takes just a minute to turn half the garlic and chiles into a smooth paste. Loosen it with a dash of fish sauce, and set it aside—this is your flavor base.

Stir-Frying the Beef
Thinly slice your beef (flank, skirt, hanger, or flap steak all work) against the grain to shorten muscle fibers and keep it tender. Marinate the slices with fish sauce, soy sauce, and a bit of white sugar—this enhances savoriness (thanks to glutamic acid in fish/soy sauce) and helps the beef brown faster.
The key to a great stir-fry? Batches. If you overcrowd the wok, the beef will steam instead of sear. Cook half the beef at a time, spreading it out to get a nice crust. Reheat the wok between batches to maintain high heat.

Adding (More) Aromatics
Once the beef is browned, wipe the wok and reheat it. Return all the beef to the pan with sliced shallots, the remaining garlic and chiles (sliced, not pounded—they add a different flavor), and thinly sliced makrut lime leaf (if using). Cook until the aromatics are fragrant and the shallots soften—this layer of flavor takes the dish to the next level.
Finishing Touches

Add the garlic-chile paste to the wok and stir until it reduces to a thin glaze (you want moist, not saucy). Now, the star of the show: Thai purple basil. Toss it in and cook just until wilted—overcooking will kill its sweet, anise flavor. Season with a pinch of salt, and garnish with extra lime leaf threads and fried shallots. Serve with rice, and you’ve got a delicious Thai meal in 15 minutes.
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, cut into 1/4-inch-thick strips
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 (see Notes)
1 small shallot, thinly sliced
4 makrut lime leaves, very thinly sliced (central vein discarded), plus more for garnish (see Notes)

2 tablespoons (30 ml) vegetable or canola oil, divided
2 cups packed Thai purple basil (about 2 ounces; 55 g) (see Notes)
Dried Thai chile flakes or red pepper flakes (optional, to taste)

1/4 cup fried shallots (see Notes)
Kosher salt
Cooked rice, for serving

Directions
Marinate the beef: Combine the beef, 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 paste: 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 to make a sauce. Set aside. Finely slice the remaining garlic and chiles, then mix with the shallot and lime leaves.

Cook the beef: Heat 1 tablespoon oil in a wok over high heat until smoking. Add half the beef and cook without moving until seared (about 1 minute). Stir-fry until lightly cooked but still pink (1 more minute). Transfer to a bowl. Repeat with the remaining oil and beef. Wipe the wok clean.
Add aromatics: Reheat the wok. Return all the beef to the pan with the sliced garlic-chile-shallot-lime leaf mixture. Stir-fry until aromatic and shallots are soft (about 1 minute).
Finish the dish: Add the chile-garlic sauce and cook until reduced to a glaze (30–60 seconds). Toss in the basil and cook until wilted. Season with salt and optional chile flakes. Garnish with extra lime leaves and fried shallots. Serve immediately with rice.

Special Equipment
Mortar and pestle (preferred for flavor, but a mini food processor works too)
Wok (essential for high-heat stir-frying)

Notes
Palm sugar substitute: Use light brown sugar or panela if palm sugar is unavailable.
Makrut lime leaf: Often labeled “kaffir lime leaf” (note: “kaffir” is derogatory), it can be omitted if hard to find.

Basil swap: Holy basil (ka-phrao, marketed as “krapow”) or sweet Italian basil work in place of purple basil.
Fried shallots: Make your own or buy them in the dried-goods section of Asian supermarkets.
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%

*% Daily Value (DV) based on a 2,000-calorie diet.






















