Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 1/2 lb (680 g) ground lamb
- 1/2 cup (50 g) plain breadcrumbs
- 1 large egg
- 3 garlic cloves, finely grated (divided)
- 1/2 cup (20 g) chopped fresh parsley
- 2 tbsp chopped fresh mint
- 1 1/2 tsp kosher salt, plus more to taste
- 1/2 tsp black pepper
- 1 tsp dried oregano
- 1/2 tsp ground cumin
- 2 tbsp olive oil (divided)
- 1 medium yellow onion, finely diced
- 2 tbsp tomato paste
- 1 can (28 oz / 794 g) crushed tomatoes
- 1/2 cup (120 ml) water
- 1 tsp sugar (optional)
- 6 crusty sub rolls (6–8 inch)
- 12 slices provolone (about 6 oz / 170 g)
- Optional garnish: chopped basil or parsley
Do This
- 1) Mix lamb, breadcrumbs, egg, half the garlic, parsley, mint, salt, pepper, oregano, and cumin; form 18 meatballs.
- 2) Brown meatballs in 1 tbsp olive oil over medium heat, 4–6 minutes total; transfer to a plate.
- 3) Sauté onion in remaining 1 tbsp oil, 4–5 minutes; add remaining garlic 30 seconds, then tomato paste 1 minute.
- 4) Add crushed tomatoes, water, sugar (optional), and salt; simmer 5 minutes.
- 5) Nestle meatballs into sauce; cover and simmer on low 18–20 minutes (meatballs to 160°F / 71°C).
- 6) Fill rolls with meatballs and sauce, top with provolone, then broil 1–2 minutes to melt; serve hot.
Why You’ll Love This Recipe
- Big flavor, simple steps: Fresh herbs make the lamb taste bright and savory without being complicated.
- Cozy and crowd-pleasing: Tender meatballs simmer right in a quick tomato sauce, then get tucked into crusty rolls.
- Perfect melt: Provolone turns stretchy and gooey under the broiler for that classic sub-shop finish.
- Make-ahead friendly: The meatballs and sauce reheat beautifully for easy dinners all week.
Grocery List
- Produce: 1 medium yellow onion, 3 garlic cloves, fresh parsley, fresh mint, optional fresh basil
- Meat: 1 1/2 lb (680 g) ground lamb
- Dairy: provolone slices (about 6 oz / 170 g), 1 large egg
- Bakery: 6 crusty sub rolls (6–8 inch)
- Pantry: plain breadcrumbs, olive oil, tomato paste, crushed tomatoes (28 oz), dried oregano, ground cumin, kosher salt, black pepper, optional sugar
Full Ingredients
Herbed Lamb Meatballs
- 1 1/2 lb (680 g) ground lamb
- 1/2 cup (50 g) plain breadcrumbs
- 1 large egg
- 1/2 cup (20 g) fresh parsley, finely chopped
- 2 tbsp fresh mint, finely chopped
- 2 garlic cloves, finely grated or minced
- 1 tsp dried oregano
- 1/2 tsp ground cumin
- 1 1/2 tsp kosher salt
- 1/2 tsp freshly ground black pepper
Tomato Sauce (for simmering)
- 2 tbsp olive oil, divided
- 1 medium yellow onion, finely diced (about 1 cup / 150 g)
- 1 garlic clove, finely grated or minced
- 2 tbsp tomato paste
- 1 can (28 oz / 794 g) crushed tomatoes
- 1/2 cup (120 ml) water
- 1 tsp sugar (optional, helps balance acidity)
- 1/2 tsp kosher salt, plus more to taste
- 1/4 tsp black pepper
For the Subs
- 6 crusty sub/hoagie rolls (6–8 inch)
- 12 slices provolone (about 6 oz / 170 g; 2 slices per sub)
- Optional garnish: chopped parsley or basil

Step-by-Step Instructions
Step 1: Mix the herbed lamb meatball mixture
In a large bowl, combine the ground lamb, breadcrumbs, egg, parsley, mint, 2 grated garlic cloves, dried oregano, cumin, kosher salt, and black pepper.
Mix with your hands just until evenly combined (about 30–45 seconds). Avoid overmixing, which can make meatballs dense.
Step 2: Shape meatballs evenly
With lightly damp hands, form the mixture into 18 meatballs, each about 1 1/2 inches wide (roughly 2 tablespoons each). Set them on a plate or sheet pan.
This size fits well in a roll (about 3 meatballs per sub) and cooks through quickly while staying juicy.
Step 3: Brown the meatballs
Heat a large deep skillet or Dutch oven over medium heat. Add 1 tbsp olive oil.
Add the meatballs in a single layer (work in batches if needed). Cook for 4–6 minutes total, turning occasionally, until nicely browned on multiple sides. They do not need to be cooked through yet. Transfer browned meatballs to a plate.
Step 4: Build a quick tomato sauce
In the same skillet, add the remaining 1 tbsp olive oil and the diced onion. Cook over medium heat for 4–5 minutes, stirring, until softened and lightly golden.
Add the remaining 1 garlic clove and cook for 30 seconds until fragrant. Stir in the tomato paste and cook for 1 minute to deepen its flavor.
Step 5: Simmer the meatballs in the sauce
Pour in the crushed tomatoes and 1/2 cup (120 ml) water. Stir in sugar (if using), 1/2 tsp kosher salt, and 1/4 tsp black pepper.
Bring the sauce to a gentle simmer, then nestle the browned meatballs back into the skillet along with any juices on the plate. Cover and simmer on low for 18–20 minutes, stirring gently once or twice so the sauce doesn’t stick.
The meatballs are done when they reach an internal temperature of 160°F (71°C). Taste the sauce and add more salt if needed.
Step 6: Warm the rolls and set up for melting
Position an oven rack about 6 inches from the broiler element. Preheat the broiler to High.
Split the rolls lengthwise (don’t cut all the way through if you prefer them hinged). If you like a sturdier sub, lightly toast the insides under the broiler for 30–60 seconds (watch closely).
Step 7: Assemble and broil until the provolone melts
Spoon a little sauce into each roll, add 3 meatballs, then spoon more sauce over the top. Lay 2 slices of provolone over each sub.
Place the assembled subs on a sheet pan and broil for 1–2 minutes, just until the provolone is melted and bubbly (keep a close eye to prevent burning).
Finish with chopped parsley or basil if you’d like, and serve immediately while hot and saucy.
Pro Tips
- Don’t overmix the lamb: Mix just until the herbs and seasonings are evenly distributed to keep the meatballs tender.
- Brown for flavor: Even a quick sear adds depth to the meatballs and the sauce (those browned bits in the pan are pure flavor).
- Keep the simmer gentle: A low simmer helps the meatballs stay intact and juicy while they finish cooking.
- Toast strategically: Toasting the roll interior helps it stand up to the sauce without getting soggy too fast.
- Control sauciness: For thicker sauce, simmer uncovered for the last 3–5 minutes; for looser sauce, add 1–2 tbsp water.
Variations
- Spicy lamb meatball subs: Add 1/2 tsp crushed red pepper flakes to the sauce and/or 1/4 tsp cayenne to the meatballs.
- Extra-cheesy bake: Add 1/2 cup (50 g) shredded mozzarella on top of the provolone before broiling for a gooier finish.
- Greek-inspired twist: Swap mint to 1 tbsp, add 1 tsp lemon zest to the meatballs, and serve with a little chopped cucumber on the side for contrast.
Storage & Make-Ahead
Refrigerate leftover meatballs and sauce in an airtight container for up to 4 days. Reheat gently on the stovetop over low heat until the meatballs are hot throughout (add a splash of water if the sauce thickens). Store rolls separately at room temperature and assemble just before serving for best texture.
To make ahead, shape the meatballs up to 24 hours in advance and refrigerate covered. You can also freeze cooked meatballs in sauce for up to 2 months. Thaw overnight in the refrigerator, then reheat on the stovetop and assemble subs fresh.
Nutrition (per serving)
Approximate, per 1 sub (3 meatballs + sauce + roll + provolone): 780 calories, Protein: 38 g, Fat: 41 g, Carbohydrates: 55 g, Fiber: 5 g, Sugars: 9 g, Sodium: 1250 mg.

