I’ve been on a serious meatball kick lately, and somewhere in the middle of it, I realized that meatballs might just be one of the best things ever invented to eat. Now, my undying love for meatballs is what pushed me to develop my Vietnamese lemongrass pork chop meatballs, and the second I finished that batch, my brain went straight to the obvious question. What else can I turn into a meatball? The answer landed so fast. Bo luc lac. Shaking beef. One of the most crave-worthy dishes in the entire Vietnamese repertoire, and a flavor profile that’s just begging to be turned into a juicy little meatball.
So I rolled up my sleeves and got to work. I took everything that makes classic bo luc lac so amazing, the onions and bell peppers, the oyster sauce, the soy, that perfect sweet and savory balance, and I packed it all into a tender, flavorful meatball inside and out. Then I glazed those meatballs in a traditional bo luc lac sauce that hits exactly the same notes as the original. The result tastes like the dish you order at your favorite Vietnamese spot, except now it comes in a fun-to-eat form!
If shaking beef is a new concept to you, don’t worry, you’re in a safe space. Bo luc lac is a beloved Vietnamese dish of marbled beef, traditionally cut into cubes, seared hot and fast, and tossed in a savory sauce made with oyster sauce, soy sauce, garlic, and a little sugar. Cooks serve it over a bed of salad or a bowl of tomato rice alongside cucumber, tomato, and a bright lime, salt, and pepper dip. It tastes rich, balanced, and a little bit special every single time. This is one of my favorite dishes, and it’s easy to make, but I can’t always afford a nice filet mignon or ribeye to make it, so this is the perfect way to have all those incredible flavors at a fraction of the price.
The name tells you how to cook it. “Luc lac” refers to the shaking motion a cook uses to toss the beef around a screaming-hot wok, searing every side quickly so the meat stays juicy. You literally shake the pan. I kept that idea alive in this recipe by tossing the finished meatballs in their glaze the same way, so they pick up a glossy, sticky coat without overcooking.
Prep your ingredients. Finely dice the onion and red bell pepper. Keep the pieces small so the meatballs hold their shape and cook evenly. Mince your garlic if it is not already minced. Turn day-old banh mi into breadcrumbs by tossing it into a food processor and pulsing until fine. If you don’t have this, a store-bought breadcrumb will work fine.
Mix the meatballs. Add the ground beef, onion, bell pepper, garlic, oyster sauce, soy sauce, sugar, MSG, black pepper, banh mi breadcrumbs, egg, and 1 tablespoon oil to a large bowl. Mix with clean hands until everything just comes together. Stop the moment it looks combined. Overmixing turns meatballs dense, so go easy. Then let the mixture vibe out in the fridge for fifteen minutes. This firms it up and makes rolling so much easier. Skip it if you are in a hurry.
Roll it into meatballs. Make sure you have plenty of oil on your hands to prevent the mixture from sticking. Shape the mixture into balls slightly larger than a golf ball, roughly 2 inches across. This recipe should make 18-20 meatballs. A cookie scoop keeps them even, which helps them cook at the same rate.
Sear the meatballs. Heat 2 tablespoons of oil in a large skillet over medium-high heat. Add the meatballs in a single layer, working in batches, so you never crowd the pan. Sear, turning, until every side browns. That crust is extra flavor, so let them go undisturbed for a minute at a time before you roll them.
Steam to finish. Once the meatballs are browned all over, pour in 1/4 cup water, cover the pan, and lower the heat. Let them steam until cooked through, about five to seven minutes. They should reach 160F in the center. The water keeps the inside moist while the heat finishes the job.
Make the sauce and shake it. While the meatballs steam, whisk the oyster sauce, soy sauce, sugar, water, garlic powder, and black pepper in a small bowl until the sugar dissolves. Uncover the pan and let any leftover water cook off. Pour the sauce right over the meatballs and shake and toss the pan until each one wears a glossy, sticky coat. This is your shaking beef moment, so really lean into it.
Serve. Pile the meatballs over hot white rice and spoon the sauce over them too. Tuck slices of cucumber and tomato alongside, and finish with a generous sprinkle of fried garlic. Enjoy!
Bo luc lac translates roughly to “shaking beef.” “Bo” means beef, and “luc lac” refers to the shaking motion used to toss the meat around a hot pan. These meatballs borrow that same technique when you shake them in the glaze.
You can. Arrange the rolled meatballs on a lined sheet pan and bake at 400F for about 18 to 20 minutes, until browned and cooked through to 160F. Then toss the baked meatballs in the warm bo luc lac sauce so they still pick up that glossy glaze. You trade a little of the stovetop crust for a hands-off batch.
Panko works in a pinch and still gives you a tender crumb. Banh mi crumbs stay my favorite because that airy bread melts into the beef and keeps the texture especially light, so use them if you can get your hands on a roll.
I stand by it. MSG deepens the savory flavor and makes the whole dish taste more like the bo luc lac you love. If you would rather leave it out, add a small extra splash of soy sauce to make up some of that savory depth, though the meatballs taste fullest with it in.
An 80/20 ground beef gives you the best balance of flavor and juiciness. That fat content keeps the meatballs moist and helps them brown into a proper crust.
Absolutely. Mix and roll the meatballs up to a day in advance and keep them covered in the fridge, or cook the full batch and reheat when you are ready to eat. The flavor will get better as it sits.
This post is part of a collaboration with The Asian American Foundation (TAAF). All opinions…
We are officially in the thick of soup season y'all. The Seattle sky has turned…
It was my first trip to Hawaii, and Giovanni's was the place. Their Garlic Shrimp…
Over the last few months, this has become one of my go-to breakfast meals. Recently,…
This post is sponsored by Alaska Airlines, which hosted my Business Class flight to Seoul.…
Vietnamese rice plates rank among my favorite dishes in the world, and they come in…