The High-Protein Kitchen

July 17, 2026

Vietnam Calls This "Shaking Beef." A Smoking-Hot Pan Turns Sirloin Into a 44-Gram-Protein Dinner.

Subscribe
Listen

A 25-minute Vietnamese plate that takes Saigon's sidewalk-eatery shaking beef and rebuilds it lean: top sirloin cubes marinated in fish sauce, soy, and garlic, seared smoking-hot in two batches so they crust dark outside and stay pink inside, piled on peppery watercress with tomato, cucumber, and a lime-pepper dip over garlic-tomato brown rice. Forty-four grams of protein and a big volume of greens for under five hundred calories, and it eats like a Saigon night-market plate, not a diet bowl.

Bò lúc lắc, literally "shaking beef," is the dish Saigon's sidewalk eateries built around one gesture: shaking the wok so every beef cube sears on all sides and stays juicy in the middle (Wikipedia; Andrea Nguyen, Viet World Kitchen). Beef was a luxury in Vietnam before French colonization, reserved for weddings and banquets, which is why this was a celebratory plate long before it became everyday food (196 flavors). The version worth cooking tonight keeps the screaming-hot sear and the peppery watercress bed but swaps the restaurant's ribeye-and-butter for lean top sirloin, and turns the reserved marinade into a glossy glaze so you get the full dish for a fraction of the fat.

The home technique comes from America's Test Kitchen's Bò Lúc Lắc (Andrew Janjigian, published 2019), which picks sirloin steak tips for beefy flavor and chew, marinates in fish sauce, soy, and molasses, and reserves that marinade to build the glaze. The lean cut, the watercress-and-rice bowl build, and the macro math below are mine.

Per serving (makes 2): about 480 calories, 44g protein, 44g carbs (4g fiber), 14g fat. The protein comes almost entirely from a generous six-ounce portion of lean top sirloin (USDA FoodData Central via myfooddata: about 135 calories, 22g protein, and 4.6g fat per 100g raw, trimmed). Satiety here is protein plus volume, three-plus cups of peppery watercress and cucumber that wilt to almost nothing under the hot beef for about forty calories (watercress, raw: 11 calories per 100g), rather than the bean base that powered this week's pork and shakshuka plates. The fiber is modest and honestly so, this is a beef-forward plate where the greens and the acid do the filling, not beans.

Ingredients (for 2)

For the beef and marinade:

For the watercress bed and lime-pepper dip:

For the garlic-tomato brown rice:

Steps

  1. Marinate the beef. Whisk the fish sauce, soy sauce, brown sugar, and one minced garlic clove in a medium bowl. Add the sirloin cubes and toss to coat. Let sit at room temperature 20 to 30 minutes (or up to 24 hours in the fridge). Set a fine strainer over a small bowl and dump the beef in, letting the marinade drain off. Save that marinade, it becomes the glaze. Toss the drained beef with the cornstarch and 1 tsp oil.

  2. Quick-pickle the onion and mix the dip. While the beef sits, toss the sliced red onion with the rice vinegar and 1 tsp sugar, and let it sit at least 10 minutes. In a tiny bowl, stir 1 tbsp lime juice with 1/2 tsp black pepper and a pinch of salt. This lime-pepper-salt sauce, called muối tiêu chanh, is the traditional dip and the thing that makes each bite of beef sing.

  3. Start the garlic-tomato rice. In a small skillet over medium heat, warm the cooked brown rice with the third minced garlic clove and the tomato paste, stirring about 2 minutes until the rice is stained red and smells toasted. Cover and keep warm. Plain steamed rice is fine, the tomato version is the small upgrade that costs almost nothing.

  4. Sear the beef in two batches. Heat a 12-inch skillet, cast iron or nonstick, over high heat until it is smoking. Add 1 tsp oil and swirl. Add half the beef in a single layer with space between the cubes. Do not touch it for a full minute so a dark crust forms. Then shake the pan, toss the cubes, and cook 1 to 2 minutes more for medium-rare, shaking the whole time. Transfer to a plate. Wipe the pan if it is too dark, and repeat with the rest of the beef. Crowding the pan steams the meat instead of searing it, this is the one rule you cannot break.

  5. Build the glaze. Pour the reserved marinade into the empty pan with 2 tbsp water and the remaining minced garlic clove, and scrape up the browned fond with a wooden spoon. Boil 1 to 2 minutes until slightly syrupy. Return the beef and any resting juices to the pan and toss to coat in the glossy glaze. Pull off the heat.

  6. Plate. Spread the watercress on two plates and top with the cucumber, tomato wedges, and drained pickled onion. Drizzle 1 tsp lime juice over the greens. Pile the hot glazed beef on top so it just wilts the watercress. Spoon the rice alongside. Serve the rest of the lime-pepper dip in small bowls for dunking each beef cube.

Make it better: deglaze the fond, then choose your richness

The move that separates "shaking beef" from plain seared cubes is the glaze in step 5, and it is nearly free on calories because it is built from the marinade you already have and the fond already stuck to the pan. For the full Slanted Door restaurant richness, swirl a small knob of cold butter, about half a tablespoon for the whole pan (roughly 50 calories and 6g fat total), into the glaze off the heat before tossing the beef back. It emulsifies into a glossy sauce the way Charles Phan's famous Slanted Door version does. Skip it and you keep the headline 14g of fat, add it and you trade six grams of fat for the plate you would pay sixteen dollars for.

Batch prep

The marinade scales perfectly and the beef holds overnight, so this is the dish to double on a Sunday. Marinate up to 2 lb of sirloin cubes in the fridge for 24 hours, then sear in four batches, and do not cheat on the single-layer rule, just take the time. The glazed beef reheats gently in a covered skillet with a splash of water, so make extra watercress beds fresh. The lime-pepper dip and pickled onions keep three days in the fridge, which means a second night's dinner is ten minutes of searing.