Menu

Moroccan Kefta Meatball Tagine with Eggs

Quick Recipe Version (TL;DR)

  • Yield: 4 servings
  • Prep Time: 25 minutes
  • Cook Time: 40 minutes
  • Total Time: 1 hour 5 minutes

Quick Ingredients

  • 1 lb (450 g) ground beef or lamb
  • 1/3 cup (15 g) fresh breadcrumbs + 2 tbsp milk
  • 2 tbsp grated onion; 3 garlic cloves, minced (divided)
  • 2 tbsp each chopped parsley and cilantro (plus extra to finish)
  • Spices: cumin 2.5 tsp, sweet paprika 4 tsp, coriander 1 tsp, cinnamon 1/4 tsp, cayenne 1/4 tsp; smoked paprika 1/2 tsp optional
  • 2 tbsp olive oil
  • 1 medium onion and 1 red bell pepper, thinly sliced
  • 1 tbsp tomato paste
  • 1 can (28 oz / 800 g) crushed tomatoes + 1/2 cup (120 ml) water
  • 4 large eggs
  • 1 tbsp lemon juice; salt and black pepper
  • Warm crusty bread or flatbread, for dipping

Do This

  • 1. Mix meat with breadcrumbs, milk, grated onion, 1 garlic clove, herbs, and half the spices; salt and pepper. Form 20–24 small meatballs; chill 10 minutes.
  • 2. Sauté sliced onion and pepper in olive oil (medium heat) 6–8 minutes. Add remaining garlic and spices; cook 30 seconds.
  • 3. Stir in tomato paste, then tomatoes and water. Simmer 10 minutes; season with salt.
  • 4. Nestle meatballs into sauce. Cover and simmer gently 12–15 minutes, turning once, until cooked through (160°F / 71°C).
  • 5. Make 4 wells; crack eggs into wells. Cover and cook 4–6 minutes until whites set and yolks are still runny.
  • 6. Finish with lemon juice, herbs, and a drizzle of olive oil. Adjust salt and pepper.
  • 7. Serve hot with torn warm bread for dipping.

Why You’ll Love This Recipe

  • All-in-one skillet or tagine meal: tender kefta meatballs in a bold, cumin–paprika tomato sauce.
  • Silky, just-set eggs add richness and turn the sauce into the perfect dip for warm bread.
  • Flexible: use beef or lamb, dial the heat, and choose your favorite bread.
  • Weeknight-friendly technique with weekend-level flavor.

Grocery List

  • Produce: 2 onions, 1 red bell pepper, garlic, parsley, cilantro, lemon
  • Dairy/Eggs: Milk (2 tbsp), 4 large eggs
  • Pantry: Ground beef or lamb (1 lb), crushed tomatoes (28 oz), tomato paste, olive oil, breadcrumbs, ground cumin, sweet paprika, smoked paprika (optional), ground coriander, cinnamon, cayenne, salt, black pepper, warm bread

Full Ingredients

Kefta Meatballs

  • 1 lb (450 g) ground beef or lamb (or a 50/50 mix)
  • 1/3 cup (15 g) fresh breadcrumbs
  • 2 tbsp (30 ml) milk
  • 2 tbsp grated onion (from a yellow onion)
  • 1 garlic clove, minced
  • 2 tbsp finely chopped fresh parsley
  • 2 tbsp finely chopped fresh cilantro
  • 1 1/2 tsp ground cumin
  • 2 tsp sweet paprika
  • 1 tsp ground coriander
  • 1/4 tsp ground cinnamon
  • 1/4 tsp cayenne pepper (or to taste)
  • 3/4 to 1 tsp fine sea salt
  • 1/2 tsp freshly ground black pepper

Tomato–Pepper Sauce

  • 2 tbsp extra-virgin olive oil, plus more to finish
  • 1 medium yellow onion (about 200 g), thinly sliced
  • 1 red bell pepper, cored and thinly sliced
  • 3 garlic cloves, minced (reserve 2 for the sauce if using 1 in meatballs)
  • 1 tsp ground cumin
  • 2 tsp sweet paprika
  • 1/2 tsp smoked paprika (optional, for a subtle smokiness)
  • 1 can (28 oz / 800 g) crushed tomatoes or passata
  • 1 tbsp tomato paste
  • 1/2 cup (120 ml) water or low-sodium chicken broth
  • 1 tsp fine sea salt, plus more to taste
  • 1/4 tsp freshly ground black pepper
  • Pinch of sugar (optional, to balance acidity)

Finishing & Serving

  • 4 large eggs
  • 1 tbsp fresh lemon juice, plus wedges for serving
  • 2 tbsp chopped fresh parsley and/or cilantro (for garnish)
  • Warm crusty bread, Moroccan khobz, or pita, for dipping
  • Harissa or Aleppo pepper, optional for extra heat
Moroccan Kefta Meatball Tagine with Eggs – Closeup

Step-by-Step Instructions

Step 1: Prep the aromatics and set up

Thinly slice the onion and red bell pepper. Mince the garlic. Chop the parsley and cilantro. Grate 2 tablespoons of onion for the meatballs (use the sliced onion for the sauce). Set out a wide, heavy skillet or tagine base (10–12 inches), a tight-fitting lid, and a small bowl of water for wetting your hands while forming meatballs.

Step 2: Mix and form the kefta meatballs

In a bowl, combine the ground beef or lamb, breadcrumbs, milk, grated onion, 1 minced garlic clove, parsley, cilantro, cumin, sweet paprika, coriander, cinnamon, cayenne, salt, and black pepper. Mix just until evenly combined—avoid overworking to keep the meatballs tender. With damp hands, form 20–24 small meatballs (about 1 heaping tablespoon each). Chill for 10 minutes to help them hold their shape.

Step 3: Build the cumin–paprika tomato base

Warm 2 tablespoons olive oil over medium heat. Add the sliced onion and bell pepper; cook, stirring, until softened and lightly golden at the edges, 6–8 minutes. Add the remaining minced garlic, cumin, sweet paprika, and smoked paprika (if using). Stir for 30–45 seconds to bloom the spices until fragrant. Stir in the tomato paste and cook 30 seconds more.

Pour in the crushed tomatoes and water. Add 1 teaspoon salt, 1/4 teaspoon black pepper, and a small pinch of sugar if your tomatoes are very acidic. Bring to a lively simmer, then reduce to medium-low and cook 10 minutes to thicken slightly.

Step 4: Simmer the meatballs in the sauce

Nestle the chilled meatballs into the sauce in a single layer. Cover and maintain a gentle simmer (small, steady bubbles) over medium-low heat until the meatballs are cooked through, 12–15 minutes, turning once halfway. The internal temperature should reach 160°F (71°C) for beef/lamb.

Step 5: Adjust consistency and seasoning

Uncover and check the sauce. It should be spoonable and cling to the meatballs; if it is too thin, simmer uncovered 2–4 minutes to reduce. If it is too thick, add a splash of water. Taste and adjust salt and pepper as needed.

Step 6: Poach the eggs until just set

Use a spoon to make 4 small wells in the sauce. Crack an egg into each well. Cover and cook over medium-low until whites are set but yolks are still runny, 4–6 minutes. For firmer yolks, cook 7–8 minutes. Avoid boiling; a gentle simmer prevents tough whites.

Step 7: Finish and serve with torn bread

Turn off the heat. Drizzle with a little olive oil, squeeze over 1 tablespoon lemon juice, and shower with chopped parsley and cilantro. Bring the skillet or tagine to the table and serve immediately with warm, torn bread for dipping into the tomato sauce and egg yolks.

Pro Tips

  • Chill formed meatballs briefly; it helps them stay round and tender while simmering.
  • Keep the simmer gentle. A rolling boil can toughen meatballs and overcook the eggs.
  • Bloom spices in oil for deeper flavor—30 to 45 seconds is enough.
  • Size matters: smaller meatballs (about 1 inch) cook evenly and leave more sauce for dipping.
  • Add a pinch (1/8 tsp) baking soda to the meat mixture for extra tenderness if your meat is very lean.

Variations

  • Olive and Preserved Lemon: Add 1/2 cup green olives (pitted) and 1 tbsp finely chopped preserved lemon peel to the sauce during the last 5 minutes before adding eggs.
  • Spicy Harissa: Stir 1–2 teaspoons harissa into the sauce with the tomatoes for a slow-building heat.
  • Leafy Greens: Fold in 2 cups chopped spinach or Swiss chard during Step 5 for a hearty, veggie-packed version.

Storage & Make-Ahead

Refrigerate cooled meatballs and sauce (without eggs) in an airtight container for up to 4 days; reheat gently on the stovetop, then poach fresh eggs directly in the reheated sauce just before serving. Fully cooked leftovers with eggs are best within 1–2 days; reheat gently until warm (yolks will firm). Freeze meatballs and sauce (no eggs) for up to 2 months; thaw overnight in the fridge before reheating and adding eggs. Formed, uncooked meatballs can also be frozen on a tray, then bagged for up to 3 months.

Nutrition (per serving)

Approximate values (with beef, excludes bread): 450 calories; 28 g fat; 14 g carbohydrates; 28 g protein; 3 g fiber; 900 mg sodium.

Leave a Reply

Your email address will not be published. Required fields are marked *


Promotional Banner X
*Sponsored Link*