
North African flavors come alive in this fragrant Moroccan Meatball Tagine. Tender, spiced kefta swim in a luscious tomato sauce topped with soft-cooked eggs for an unforgettable meal that's both simple and impressive.
I first tried making this dish after taking a cooking class while visiting Marrakech. I've tweaked it over the years for family meals. The first time I put those soft eggs on top, everyone at my table couldn't stop raving about it.
Ingredients
- Ground lamb: Gives that classic taste, though beef works great too
- Warm spice blend: Cumin, coriander, paprika and cinnamon work together for amazing depth
- Fresh herbs (cilantro and parsley): Bring that true Moroccan flavor you can't skip
- Grated tomatoes: Create a smoother sauce than you'd get with chopped ones
- Quality olive oil: Adds that Mediterranean touch to everything
- Fresh eggs: Turn this into a full meal with their rich creaminess
Step-by-Step Instructions
- Develop the sauce:
- Mix in tomato paste and cook for a moment until it darkens slightly, then add your grated tomatoes, herbs, water and salt. Let everything bubble away for about 25 minutes, giving it a stir now and then. This long simmer lets all those flavors get friendly and the sauce thickens up nicely.
- Cook the meatballs:
- Gently place your shaped meatballs into the bubbling sauce. Put the lid on and let them cook until just done, watching that they don't overcook and get tough. The steam under the lid helps them cook evenly all around.
- Add the eggs:
- Make little pockets between the meatballs and crack eggs right into those spaces. Cover again and cook just until the whites set but the yolks stay runny. This final touch takes the dish from great to absolutely amazing.
- Prepare the meatballs:
- Mix ground meat with grated onion, herbs, garlic and spices just until combined. Shape into small 1¼ inch balls. Don't mix too much or they'll get tough. Pop them in the fridge while making the sauce so they keep their shape better.
- Create the aromatic base:
- Cook diced onions in olive oil until they turn see-through and start to brown a bit at the edges. This brings out their sweetness and starts building flavor. Add garlic at the very end so it doesn't burn.
- Bloom the spices:
- First mix all your dry spices in a small bowl, then toss them into the hot oil. This quick hot oil bath wakes up their flavors and releases their oils. Your kitchen will suddenly smell just like a Moroccan market.

When I traveled through Morocco, I fell in love with how they mix these warm spices with rich egg yolks. There's something magical about breaking that yolk into the spiced sauce that creates pure joy at the dinner table, a feeling I've tried to capture at home ever since.
Make Ahead Options
You can fix the meatball mix up to a day before and keep it in the fridge. The meatballs can even be shaped ahead and stored covered in the refrigerator. The sauce base works great made a day early and kept separate. When you're ready to eat, just warm up the sauce, drop in the meatballs, and follow the rest of the steps. This setup works great for having friends over since most of the work's done before they arrive.
Perfect Pairings
Most Moroccans enjoy this with a crusty bread for scooping up all that yummy sauce and egg. Fluffy couscous makes a great base too, soaking up every bit of flavor. Add a simple side of cucumber, tomato and red onion tossed with some lemon juice and olive oil for freshness. Going full Moroccan? Finish with some mint tea after dinner.
Spice Adjustments
What makes this dish special isn't burning heat but warm, aromatic spices. Want it spicier? Add more cayenne or throw in some chopped jalapeño. Making it for kids? Just skip the cayenne altogether. You can use sweet or hot paprika based on what you like. If you happen to have ras el hanout (a Moroccan spice blend) in your cupboard, you can use that instead of the individual spices for an authentic touch.

This Moroccan meatball tagine will soon become a dish your family asks for time and time again.
Frequently Asked Questions
- → Can I prep these Moroccan meatballs before I need them?
Absolutely! You can make the meatballs a day early and keep them raw in the fridge. The sauce works great made ahead too. When you're ready to eat, just warm up the sauce, drop in the meatballs, and follow the rest of the steps. Just remember to crack in fresh eggs right before you plan to serve it.
- → Which meat works best for kefta meatballs?
Lamb is the classic choice for kefta because it's got a rich taste that goes really well with Moroccan spices. But beef is totally fine too. Try to get meat with around 15-20% fat in it. If you go too lean, your meatballs might end up dry and not as tasty.
- → Do I really need to add eggs to this dish?
You don't have to use eggs, but they really make the dish special. They add this creamy richness that goes so well with the spicy tomato sauce. When you break those runny yolks and mix them into the sauce - that's where the magic happens! If runny eggs aren't your thing, you can always cook them longer.
- → What's the best way to enjoy this Moroccan meatball dish?
Most Moroccans serve this family-style, right from the cooking pot. Grab some warm bread for dunking into that amazing sauce, or pour it all over couscous which soaks everything up wonderfully. Add a simple green salad with some lemon juice for a perfect meal. Don't forget to sprinkle on some extra fresh herbs and a little good olive oil before eating!
- → Can I freeze these Moroccan meatballs?
Sure thing! The meatballs and sauce freeze great for up to 3 months - just don't add the eggs yet. When you want to eat them, thaw in your fridge overnight, then warm everything up slowly on the stove until it's bubbling. Add fresh eggs while reheating and finish cooking as the recipe says. It might look a tiny bit different after freezing but will still taste amazing.
- → What if I can't find fresh herbs for this recipe?
If you can't get fresh parsley and cilantro, you can use dried herbs instead - about 1 teaspoon of dried for every tablespoon of fresh called for. But honestly, fresh herbs add a brightness that's hard to get any other way. If you can only find one fresh herb, use that one and go with dried for the other.