This is a baked beef-and-lamb meatball sandwich built on a toasted French roll with pickled carrots and onion, fresh herbs, hoisin, sriracha, and a honey-mayo aioli. The whole thing comes together in 30 minutes and clocks in at 37 grams of protein per serving, which makes it a genuinely filling meal rather than a snack. If you want a handheld dinner that doesn’t feel like a compromise, this is a solid option.
The technique that matters
Two things decide whether this sandwich works. First, pat the ground beef and lamb dry before mixing — surface moisture steams the meat instead of browning it, and you lose the crust that holds the meatball together in the roll. Second, use only the egg yolk, not the whole egg. The yolk adds fat and binding without the extra water from the white, which keeps the meatballs dense enough to stay intact when you bite through the bread. At 425°F for 13 minutes, the meatballs should reach an internal temperature of 160°F (71°C) — use an instant-read thermometer if you’re not sure, because undercooked ground beef and lamb is a food safety issue, not just a texture one.
About the ingredients
- Ground lamb: Lamb has a higher fat content than most ground beef blends, which is what keeps the meatballs moist at high oven heat. Don’t swap in extra-lean lamb or the texture suffers.
- Hoisin sauce: It’s thick and sweet, so measure it — too much and the meatballs taste more like a glaze than a savory protein. One tablespoon for 10 oz of meat is the right ratio here.
- Fish sauce (for the pickle liquid): The recipe card lists it in the instructions but not the ingredient list — you’ll need about 1 teaspoon. It’s the backbone of the pickling liquid; rice vinegar is a workable substitute but the result is sharper and less complex.
- French rolls: A soft sub roll won’t hold up. You want a roll with a firm crust that can be toasted and hollowed — the scooped-out center is what stops the meatballs from rolling out.
- Fresh herbs (cilantro, mint, basil): Skip the basil if you only have dried — dried basil adds nothing here. Cilantro and mint alone are fine.
Leftovers and meal prep
Cooked meatballs keep in an airtight container in the fridge for up to 3 days. Reheat them in a 350°F oven for 8–10 minutes rather than microwaving — the microwave makes them rubbery. The pickled carrot and onion mixture actually improves after a day in the fridge and keeps for up to 5 days, so make a double batch and use it on other sandwiches or grain bowls. The aioli keeps refrigerated for 3 days. Don’t assemble the full sandwich ahead of time; the bread goes soft fast. Freeze raw, shaped meatballs on a baking sheet, then transfer to a bag — they’ll keep for 2 months and can go straight from frozen into a 425°F oven with about 5 extra minutes of cook time.
What can go wrong
- Meatballs fall apart in the roll: This usually means the mixture was overworked or too wet. Mix just until combined and make sure the meat was dried before mixing. Pack each ball firmly — loose shaping is the main culprit.
- Pickle liquid is too sharp: If your lime is very acidic, the quick pickle can overpower everything. Add a small pinch of sugar to balance it, or let the vegetables sit for only 5 minutes instead of the full bake time.
- Bread gets soggy before you finish eating: Spread the aioli on the cut surface right before serving, not while the bread is still hot. Hot bread absorbs sauce immediately and collapses the structure.
- Meatballs are grey inside at 13 minutes: Oven calibration varies. If your thermometer reads below 160°F (71°C), give them 2–3 more minutes. Color alone is not a reliable indicator of doneness with a beef-lamb mix — always check temperature. Skip the garnish of extra herb sprigs on the side — not worth the extra dish.
- Aioli is too spicy or not spicy enough: The sriracha amount in the aioli is intentionally left flexible. Start with half a teaspoon, taste, and adjust before spreading — it’s much harder to fix once it’s on the bread.

Beef & Lamb Meatball Banh Mi (30 Minutes)
Equipment
Ingredients
1 medium red onion - halved and thinly sliced
1 medium lime - halved
1 clove garlic - minced
⅛ ounce basil - fresh ; 4g, about 5–6 leaves
⅛ ounce cilantro - fresh ; 4g- ⅛ ounce mint leaves - fresh ; 4g
1 medium egg - yolk only, white discarded or saved
½ teaspoon kosher salt - plus more to taste
1 pinch ground black pepper- 2 medium French rolls
5 ounces ground beef - 140g, minced beef
5 ounces ground lamb - 140g, minced lamb
1 tablespoon hoisin sauce
2 tablespoons sriracha sauce - divided
½ tablespoon honey
1 ½ cups carrots - 170g, shredded
¼ cup mayonnaise - 60g
1 tablespoon fish sauce
Instructions
- Preheat the oven to 425°F / 220°C (200°C fan-forced). Line a rimmed baking sheet with aluminium foil.
- Peel onion, halve and thinly slice it. Then halve lime, and mince the garlic.1 medium red onion, 1 medium lime, 1 clove garlic
- Pat beef and lamb dry with a paper towel.5 ounces ground beef, 5 ounces ground lamb
- Separate the egg, reserving only the yolk. In a large bowl, combine the hoisin sauce, minced garlic, ground beef, and ground lamb. Add 1 tablespoon sriracha and the egg yolk, then season with ½ teaspoon salt and pepper to taste.1 medium egg, 1 clove garlic, 5 ounces ground beef, 5 ounces ground lamb, 1 tablespoon hoisin sauce, 2 tablespoons sriracha sauce, 1/2 teaspoon kosher salt, 1 pinch ground black pepper
- Using your hands, mix well and form into 8 equal balls, about 1 1/2-inches in diameter. Place on the foil-lined baking sheet, spacing apart. Discard the egg white or save for a breakfast scramble.
- Transfer the meatballs to the oven and bake until browned on the outside and cooked through, about 13 minutes. The internal temperature should reach 160°F / 71°C — check with an instant-read thermometer.
- While the meatballs bake, whisk together the fish sauce, half of the honey (¼ tablespoon), and the juice of 1 lime in a medium bowl until combined. Season with a pinch of salt and pepper. Add the shredded carrots and sliced red onion and toss to coat. Set aside to lightly pickle while you prepare the aioli and rolls.1 tablespoon fish sauce, 1/2 tablespoon honey, 1 medium lime, 1/2 teaspoon kosher salt, 1 pinch ground black pepper, 1 1/2 cups carrots, 1 medium red onion
- In a small bowl, stir together the mayonnaise, remaining honey (¼ tablespoon), and as much of the remaining sriracha as you like to make the aioli.1/4 cup mayonnaise, 1/2 tablespoon honey, 2 tablespoons sriracha sauce
- Heat a medium skillet over medium-high heat. Place the rolls cut-side down and toast until lightly golden, about 2 minutes. Remove from the pan and scoop out the soft centres to make room for the filling.2 medium French rolls
- Spread aioli on the insides of rolls. Add meatballs, herbs and carrot-onion mixture.2 medium French rolls, 1/8 ounce basil, 1/8 ounce cilantro, 1/8 ounce mint leaves
Notes
Nutrition
FAQ
Can I use all beef instead of the beef-lamb mix?
Yes, 10 oz of ground beef works fine. The meatballs will be slightly less rich since lamb has more fat, so choose an 80/20 ground beef blend rather than a lean one to keep the texture close.
How do I know the meatballs are cooked through without cutting them open?
Use an instant-read thermometer — ground beef and lamb need to hit 160°F (71°C) at the center. Insert it into the side of the meatball at the thickest point for an accurate read.
Can I make this recipe for 4 people instead of 2?
Double every ingredient and use two baking sheets so the meatballs aren’t crowded — crowding causes steaming instead of browning. Cook time stays roughly the same at 13–15 minutes.
What if I can’t find French rolls?
A sturdy hoagie roll or ciabatta works. Avoid soft sandwich bread or brioche — they can’t be hollowed out and won’t hold the weight of the meatballs and pickled vegetables.
Is there a way to make this higher in protein per serving?
Add a third meatball per sandwich — the recipe makes 8 meatballs for 2 people, so you have room if you make them slightly smaller. You can also spread a thin layer of hummus under the aioli for an extra few grams without changing the flavor profile much.
Can I cook the meatballs in a pan instead of the oven?
Yes — cook them in a lightly oiled skillet over medium-high heat, turning every 2–3 minutes until browned on all sides and the internal temperature reaches 160°F (71°C), about 10–12 minutes total. The oven method is more hands-off and browns more evenly, but the pan works if you don’t want to heat the oven.
If you liked this one
- Spicy Beef Stuffed Peppers
- Lamb Satay Fusion Skewers
- Pistachio Lamb Kebab Perfection
- Olive Beef Polpette Perfection










