Moroccan Meatball Couscous Soup

Steaming bowl of Moroccan meatball couscous soup topped with fresh cilantro and lemon Save to Pinterest
Steaming bowl of Moroccan meatball couscous soup topped with fresh cilantro and lemon | whiskandwok.com

This Moroccan-inspired soup brings together tender spiced mini beef meatballs, diced carrots, celery, and zucchini in a richly seasoned tomato and broth base.

Warm cumin, paprika, turmeric, and ginger infuse every spoonful with North African flair, while instant couscous adds satisfying heartiness.

Ready in under an hour, it makes a complete and comforting meal for four, finished with fresh cilantro and a squeeze of lemon.

A damp Tuesday evening, rain streaking the kitchen windows, and I had nothing planned for dinner except a vague craving for something warm and complicated enough to distract me from the weather. I rummaged through the spice drawer and found cumin, cinnamon, and turmeric huddled together like old friends waiting to be useful. Forty minutes later, the whole house smelled like a Marrakech market, and I was hunched over the stove, fishing out a tiny meatball to test if it was done, burning my fingers in the process. Entirely worth it.

I made a double batch of this soup for a neighbors potluck last winter, fully expecting leftovers for the week. The pot came back scraped clean, and three people texted me for the recipe before noon the next day. One of them had never cooked with cinnamon in a savory dish before and called me mid grocery run, slightly panicked, asking if I was sure that part was correct.

Ingredients

  • 300 g ground beef or lamb: Lamb gives a deeper, gamier flavor but beef is easier to find and still wonderful.
  • 1 small onion, finely grated: Grating rather than chopping keeps the meatballs tender and helps everything bind without needing eggs.
  • 1 garlic clove, minced: One is enough for the meatballs since the broth carries plenty more garlic later.
  • 1 tbsp chopped fresh parsley and 1 tbsp chopped fresh cilantro: Use both if you can, but either herb alone works fine in a pinch.
  • 1/2 tsp ground cumin, 1/2 tsp ground coriander, 1/4 tsp ground cinnamon: The cinnamon is what makes people pause, taste again, and ask what the secret is.
  • 1/2 tsp salt and 1/4 tsp black pepper: Straightforward seasoning for the meat mixture.
  • 1 tbsp olive oil: Just enough to get the vegetables sweating without overpowering the spices.
  • 1 small onion, diced, 2 garlic cloves, minced: The soup base starts here, building sweetness and depth.
  • 1 large carrot, 1 celery stalk, 1 small zucchini, all diced: A colorful trio that adds texture and makes the soup feel like a full meal.
  • 1 tsp ground cumin, 1 tsp ground paprika, 1/4 tsp turmeric, 1/2 tsp ground ginger, 1/4 tsp cayenne pepper: Toast these briefly in the pot and your kitchen will smell incredible.
  • 1.2 liters chicken or vegetable broth: Homemade is lovely but a good quality boxed broth works perfectly here.
  • 400 g canned diced tomatoes: Their juices add acidity and body to the broth.
  • 120 g instant couscous: It steams in the hot broth off the heat, so no separate pot needed.
  • Fresh cilantro or parsley and lemon wedges: A squeeze of lemon at the end brightens every single bowl.

Instructions

Roll the tiny meatballs:
Combine all the meatball ingredients in a bowl and mix with your hands until everything is evenly distributed. Wet your palms to keep the mixture from sticking, then roll into small balls about 2 cm across, setting them on a plate as you go.
Build the soup base:
Heat the olive oil in a large pot over medium heat and cook the diced onion for about 3 minutes until it softens and turns translucent. Add the garlic, carrot, celery, and zucchini, stirring occasionally for another 5 minutes until everything begins to soften and smell sweet.
Bloom the spices:
Stir in the cumin, paprika, turmeric, ginger, and cayenne if you are using it. Let them toast in the oil for about a minute, stirring constantly so nothing burns, until the fragrance hits you.
Add the liquids:
Pour in the broth and the canned diced tomatoes with all their juices, then bring everything to a rolling boil.
Simmer with the meatballs:
Gently lower the meatballs into the bubbling broth one by one, then reduce the heat to low. Cover the pot and let it simmer for 20 minutes until the meatballs are cooked through and the vegetables are completely tender.
Steam the couscous:
Stir the couscous into the soup, take the pot off the heat entirely, and clap the lid back on. Let it sit undisturbed for 5 to 7 minutes until the couscous has absorbed the broth and turned fluffy.
Finish and serve:
Taste the broth and add salt and pepper as needed, then ladle into deep bowls. Scatter fresh cilantro or parsley over the top and serve with a fat wedge of lemon on the side.
Golden spiced mini meatballs and tender vegetables floating in aromatic Moroccan couscous soup Save to Pinterest
Golden spiced mini meatballs and tender vegetables floating in aromatic Moroccan couscous soup | whiskandwok.com

There is something about a bowl of this soup that makes people slow down. I noticed it the first time I served it to friends, how the conversation dipped to a comfortable murmur while everyone focused on spooning up those tiny meatballs and chasing them with broth.

Choosing Between Beef and Lamb

Ground lamb brings a richness that works beautifully with the warm spices, giving the broth an almost velvety quality. Ground beef is leaner and more neutral, which lets the spice blend shine a bit more clearly. I have tried mixing the two half and half, and honestly that might be the sweet spot if you want depth without too much gaminess.

Making It Your Own

A handful of drained chickpeas tossed in with the broth adds a lovely creaminess and bumps up the protein. If you need to keep it gluten free, skip the couscous and stir in cooked quinoa or rice at the very end instead. A friend of mine adds a big spoonful of harissa paste to her bowl and swears it changes the entire dish.

What to Serve Alongside

This soup is hearty enough to stand alone, but a chunk of crusty bread for dipping never hurts. A glass of Moroccan rosé or a pot of sweet mint tea turns a weeknight dinner into something that feels like an occasion.

  • Warm the bread, because cold bread against hot soup is a sadness.
  • If you go the mint tea route, brew it strong and sweeten it generously.
  • Always put extra lemon wedges on the table, because someone will want more.
Close-up of Moroccan meatball couscous soup with fluffy grains diced carrots and herbs Save to Pinterest
Close-up of Moroccan meatball couscous soup with fluffy grains diced carrots and herbs | whiskandwok.com

This is the kind of soup that earns a permanent spot in your winter rotation, the one you reach for when the forecast looks grim and you need the kitchen to smell like somewhere far away. Keep the lemon wedges close and the bread closer.

Recipe FAQs

Yes, lamb works beautifully and adds an authentic Moroccan depth of flavor. You can also use a 50/50 mix of beef and lamb for a balanced taste.

Aim for about 2 cm in diameter, roughly the size of a large marble. Keeping them small ensures they cook evenly in the broth and are easy to eat with a spoon.

Absolutely. Simply swap the instant couscous for an equal amount of cooked quinoa or rice. Add it at the same stage and adjust the resting time accordingly.

Chickpeas are a natural addition that pairs perfectly with the Moroccan spices. Drain and rinse a can, then add them along with the broth for a heartier bowl.

Store in an airtight container in the refrigerator for up to 3 days. Reheat gently on the stovetop or in the microwave. The couscous will absorb more broth, so add a splash of water or stock when reheating.

The soup is warmly spiced rather than hot. The cayenne pepper is optional, so you can control the heat level. Without it, the dish is family-friendly and richly aromatic.

Moroccan Meatball Couscous Soup

Spiced mini meatballs, tender veggies, and fluffy couscous in a fragrant North African-style broth.

Prep 25m
Cook 30m
Total 55m
Servings 4
Difficulty Medium

Ingredients

Spiced Mini Meatballs

  • 10.5 oz ground beef or lamb
  • 1 small onion, finely grated
  • 1 garlic clove, minced
  • 1 tbsp chopped fresh parsley
  • 1 tbsp chopped fresh cilantro
  • 1/2 tsp ground cumin
  • 1/2 tsp ground coriander
  • 1/4 tsp ground cinnamon
  • 1/2 tsp kosher salt
  • 1/4 tsp freshly ground black pepper

Soup Base

  • 1 tbsp extra-virgin olive oil
  • 1 small yellow onion, diced
  • 2 garlic cloves, minced
  • 1 large carrot, peeled and diced
  • 1 celery stalk, diced
  • 1 small zucchini, diced
  • 1 tsp ground cumin
  • 1 tsp ground paprika
  • 1/4 tsp ground turmeric
  • 1/2 tsp ground ginger
  • 1/4 tsp cayenne pepper (optional, adjust to taste)
  • 5 cups chicken or vegetable broth
  • 14 oz canned diced tomatoes with juices
  • 2/3 cup instant couscous
  • Kosher salt and freshly ground black pepper, to taste
  • Fresh cilantro or parsley, for garnish
  • Lemon wedges, for serving

Instructions

1
Prepare the Meatball Mixture: In a mixing bowl, combine the ground beef or lamb with the grated onion, minced garlic, parsley, cilantro, cumin, coriander, cinnamon, salt, and black pepper. Mix thoroughly until evenly incorporated. With dampened hands, roll the mixture into small meatballs approximately 3/4 inch in diameter. Set aside on a plate.
2
Sauté the Aromatics and Vegetables: Heat olive oil in a large heavy-bottomed pot over medium heat. Add the diced onion and cook for 3 minutes until softened and translucent. Add the garlic, carrot, celery, and zucchini, stirring occasionally, and cook for an additional 5 minutes until the vegetables begin to soften.
3
Toast the Spice Blend: Add the cumin, paprika, turmeric, ginger, and cayenne pepper to the pot. Stir continuously for 1 minute until the spices become fragrant and coat the vegetables evenly.
4
Build the Broth: Pour in the broth and canned diced tomatoes with their juices. Bring the mixture to a rolling boil over medium-high heat, scraping up any browned bits from the bottom of the pot.
5
Simmer with Meatballs: Gently lower the prepared meatballs into the simmering broth one at a time. Reduce the heat to low, cover the pot, and simmer for 20 minutes until the meatballs are cooked through and the vegetables are tender.
6
Add Couscous and Finish: Stir in the instant couscous. Remove the pot from heat, cover tightly, and let stand for 5 to 7 minutes until the couscous has absorbed the liquid and is tender. Season with salt and pepper to taste.
7
Serve: Ladle the soup into warmed bowls. Garnish generously with fresh cilantro or parsley and serve immediately with lemon wedges on the side.
Additional Information

Equipment Needed

  • Large heavy-bottomed pot with lid
  • Mixing bowl
  • Sharp chef's knife
  • Cutting board
  • Ladle
  • Measuring spoons and cups

Nutrition (Per Serving)

Calories 410
Protein 21g
Carbs 45g
Fat 16g

Allergy Information

  • Contains gluten from couscous
  • Contains meat
  • Check bouillon and couscous packaging labels for additional allergens such as soy, dairy, or sesame
Monica Zhou

Passionate home cook sharing easy, wholesome recipes and practical tips for everyday cooking.