This Moroccan-inspired soup combines tender, oven-baked mini meatballs seasoned with cumin, cinnamon, and paprika alongside fluffy couscous and a vibrant mix of diced vegetables.
The fragrant broth, built on a base of sautéed onions, carrots, celery, and bell pepper with warm North African spices, delivers layers of comforting flavor in every spoonful.
Ready in about 55 minutes, it makes a satisfying main dish that serves four and pairs beautifully with warm flatbread.
The smell of cumin and cinnamon toasting in olive oil has a way of pulling everyone into the kitchen before dinner is even close to ready. This Moroccan inspired soup came together on a rain soaked Tuesday when nothing but something warm and spiced would do. Tiny meatballs, golden from the oven, bobbing in a tomato flecked broth over fluffy couscous, it is the kind of bowl that makes you close your eyes after the first spoonful.
My neighbor wandered over while I was rolling meatballs and ended up staying for three bowls. She claimed she came to borrow an egg, but I noticed she brought her own spoon.
Ingredients
- Ground beef or lamb (300 g): Lamb gives a richer, deeper flavor but beef is easier to find and still delicious.
- Onion (1 small, finely grated for meatballs, 1 medium, diced for soup): Grating the onion for meatballs keeps them incredibly moist inside.
- Garlic (5 cloves total): Five might seem generous but Moroccan cooking rewards generosity with garlic.
- Fresh parsley and cilantro: Use both if you can, as they each bring something different to the meatballs and the finish.
- Ground cumin: The backbone spice here, so make sure yours has not been sitting in the cupboard for three years.
- Ground cinnamon: Just a half teaspoon in the meatballs adds warmth without tasting sweet.
- Paprika and smoked paprika: The smoked version in the soup base adds a subtle campfire depth that regular paprika cannot match.
- Ground coriander: A quiet supporting player that rounds out the spice blend beautifully.
- Turmeric: Gives the broth its golden glow and an earthy bitterness that balances the tomatoes.
- Cayenne pepper (optional): A quarter teaspoon is gentle warmth, not fire, so do not be afraid.
- Olive oil: Used for sautéing the vegetables and building flavor from the first moment.
- Carrots, celery, red bell pepper: A colorful trinity that adds sweetness, crunch, and brightness to every spoonful.
- Chicken or vegetable broth (1.5 L): Homemade is lovely but a good quality boxed broth works perfectly.
- Chopped tomatoes (1 can, 400 g): They dissolve into the broth and give it body and a gentle acidity.
- Couscous (100 g): It cooks right in the soup, absorbing flavor and thickening the broth as it swells.
- Lemon juice: Added at the end to wake everything up, never skip this step.
- Salt and black pepper: Season gradually and taste as you go.
Instructions
- Preheat and prepare:
- Set your oven to 200 degrees Celsius (390 degrees Fahrenheit) and line a baking tray with parchment paper so the meatballs release effortlessly.
- Roll the meatballs:
- In a large bowl, combine the ground meat, grated onion, two minced garlic cloves, parsley, cilantro, cumin, cinnamon, paprika, coriander, salt, and pepper. Mix with your hands until just combined, then roll into small balls about two centimeters across and arrange them on the tray.
- Bake until golden:
- Slide the tray into the oven for twelve to fifteen minutes until the meatballs are cooked through and lightly browned on the bottoms, then set them aside while you build the soup.
- Build the soup base:
- Heat olive oil in a large pot over medium heat and add the diced onion, carrots, celery, and red bell pepper. Sauté for five to seven minutes, stirring occasionally, until everything softens and the kitchen smells incredible.
- Bloom the spices:
- Stir in the remaining three cloves of minced garlic along with the cumin, smoked paprika, turmeric, and cayenne. Cook for one minute, stirring constantly, until the spices darken slightly and become deeply fragrant.
- Simmer the broth:
- Pour in the broth and chopped tomatoes, bring to a boil, then reduce the heat, cover the pot, and let it simmer gently for ten minutes so the flavors marry.
- Add couscous and meatballs:
- Stir in the couscous and baked meatballs, then simmer uncovered for five to seven more minutes until the couscous is tender and the soup has thickened to a cozy, stewy consistency.
- Finish and serve:
- Remove from heat, stir in the lemon juice, and taste for salt and pepper. Ladle into deep bowls and scatter fresh cilantro or parsley over the top.
The second time I made this, my teenager who usually survives on toast alone asked for seconds, then quietly packed the leftovers for lunch the next day.
Serving Suggestions
Warm flatbread torn into pieces is the only accompaniment this soup really needs, perfect for mopping up the spiced broth at the bottom of the bowl.
Storing and Reheating
This soup keeps well in the refrigerator for up to three days and the flavors actually deepen overnight. For freezing, leave out the couscous and add it fresh when you reheat, otherwise it turns mushy.
Making It Your Own
Once you know the basic structure, this recipe is endlessly adaptable to what you have on hand. The spice blend is forgiving and the vegetables are flexible.
- Swap sweet potato for carrot if you want a heartier, sweeter soup.
- Use chickpeas instead of meatballs for a vegetarian version that still feels substantial.
- A dollop of yogurt on top at the end adds a cool creaminess that balances the warmth beautifully.
Some recipes become staples because they are easy, and some earn their place because they make people linger at the table a little longer. This one does both.
Frequently asked questions about this recipe
- → Can I use lamb instead of beef for the meatballs?
-
Yes, ground lamb works wonderfully and adds a richer, more authentic Moroccan flavor. You can substitute it at a 1:1 ratio for the ground beef.
- → How do I store leftovers?
-
Let the soup cool completely, then transfer to an airtight container and refrigerate for up to 3 days. Reheat gently on the stovetop, adding a splash of broth if it has thickened too much.
- → Can I freeze this soup?
-
Yes, it freezes well for up to 2 months. For best results, freeze without the couscous and add freshly cooked couscous when reheating, as couscous can become mushy after freezing.
- → What can I substitute for couscous to make it gluten-free?
-
Gluten-free couscous or cooked white rice are excellent alternatives. Quinoa also works well and adds a nutty flavor that complements the Moroccan spices.
- → How spicy is this soup?
-
The soup is mildly spiced with warm, aromatic flavors rather than intense heat. The cayenne pepper is optional, so you can adjust the spice level to your preference by adding more or omitting it entirely.
- → Can I make the meatballs ahead of time?
-
Absolutely. You can prepare and bake the meatballs up to a day in advance. Store them covered in the refrigerator and add them to the simmering broth when ready to serve.