Kefta Tagine (Meatballs in Tomato Sauce)
Why this recipe works
- Warm, layered flavour: Cumin, paprika, garlic and coriander season both the meatballs and the tomato sauce, so the dish tastes integrated rather than simply sauced.
- Built in one pan: The onions, spices, tomatoes and meatballs cook in the same tagine or Dutch oven, giving the sauce depth while keeping the method streamlined.
- Rich but balanced: The tomato sauce reduces around the kefta for a hearty finish, while fresh coriander adds brightness at the end.
Get the most out of this recipe
Texture tips
- Keep the simmer gentle: A steady, gentle simmer helps the meatballs stay tender as they cook through in the sauce.
- Reduce the sauce before adding the kefta: Letting the tomatoes cook down first gives the sauce body, so it clings to the meatballs instead of tasting thin or raw.
Ingredient swaps
- Use lamb for a richer version: Minced lamb can replace beef for a fuller flavour and a more traditional kefta-style result.
- Swap the herbs if needed: Flat-leaf parsley works well in place of coriander for a milder, greener finish.
Make-ahead tips
- Good for making ahead: The sauce and meatballs hold well in the fridge, and the flavour often deepens after resting overnight.
- Reheat gently: Warm in a covered pan over low heat until piping hot, loosening the sauce with a small splash of water if it has thickened.
- Freezes well: Cool completely before freezing, then defrost in the fridge overnight before reheating gently.
Serving ideas
- Serve with something to catch the sauce: Warm flatbread, couscous or rice are all practical pairings for the rich tomato sauce.
- Finish with fresh herbs: A final scatter of coriander lifts the tomato sauce and adds freshness just before serving.
Equipment you'll need
Ingredients
Instructions
- Finely chop the onion. Grate or crush the garlic, then roughly chop the coriander, keeping a small handful back for serving.
- In a mixing bowl, combine the minced beef with half the garlic, 1 tsp ground cumin, 1 tsp sweet paprika, 1 tsp fine sea salt, 0.25 tsp black pepper, and half the chopped coriander. Roll into small meatballs, about walnut-sized.
- Set a tagine or Dutch oven over medium heat and warm the extra virgin olive oil. Add the onion with the remaining fine sea salt and cook for 8 to 10 minutes, stirring, until soft and lightly golden.
- Stir in the remaining garlic, ground cumin, sweet paprika, and black pepper. Cook for 30 to 60 seconds until fragrant.
- Add the canned chopped tomatoes and bring to a gentle simmer. Cook for 10 to 12 minutes, stirring occasionally, until the sauce thickens slightly and tastes less raw.
- Nestle the meatballs into the sauce in a single layer. Cover and simmer gently for 15 to 18 minutes, turning the meatballs once, until cooked through and the sauce is rich and thick.
- Stir in the remaining chopped coriander and cook for 1 minute. Taste and adjust with a pinch more fine sea salt or black pepper if needed, then scatter over the reserved coriander to serve.
Recipe notes
Tips
- Keep the sauce at a gentle simmer so the meatballs stay tender and the tomatoes reduce without catching.
- If the sauce thickens too quickly, loosen it with a small splash of water and continue simmering until glossy.
- For vulnerable groups, make sure the meatballs are cooked all the way through with no pink remaining.
Substitutions
- Replace minced beef with minced lamb for a more traditional, richer kefta.
- Replace fresh coriander with fresh flat-leaf parsley for a milder herbal finish.
Storage
- Refrigerate up to 3 days
- Cool completely, then refrigerate in a sealed container for up to 3 days. Reheat gently in a covered pan over low heat until piping hot, adding a splash of water if the sauce has thickened; freeze for up to 3 months and defrost overnight in the fridge before reheating.
Ratings & reviews
Liked this recipe? Share your feedback to support our cooking community.
Tried this recipe?
Choose 1–5 stars. A comment is optional.
Stay inspired
Discover new recipes, seasonal favourites and cooking inspiration every day. Follow JustRecipes on Pinterest and Spillt.
Recipe overview
- Servings: 4 servings
- Total time: 55min (25min active)
- Difficulty: Medium
- Cuisine: Moroccan
Plan your meals and get a complete grocery list automatically.
Add to meal plannerEquipment you'll need
Got ingredients left?
Find recipes using ingredients from this recipe or what you already have at home.
Find recipes with these ingredients →Make this recipe easier next time
AdvertisementThese tools help you get better results with less effort.
KitchenAid Stainless Steel Mixing Bowls
- Non-slip base
- Stainless steel
- Not microwave safe
Pyrex Glass Mixing Bowls with Lids
- Microwave safe
- BPA-free lids
- Glass is heavier
OXO Good Grips Stainless Mixing Bowl Set
- Non-slip base
- Comfort grip
- Higher price
Enjoy cooking with JustRecipes?
Add JustRecipes as one of your preferred Google sources to discover our recipes more easily across Google Search.
Add JustRecipes to GoogleEvery recipe on JustRecipes follows the same structured editorial process. Learn how recipes are created, validated, translated, illustrated, and continuously improved across the platform. How we create recipes.

























