These Moroccan Meatballs feature ground lamb (or beef, if you prefer) seasoned with Ras el Hanout, a fragrant and warming Moroccan spice mixture. The meatballs are simmered in a sweet, savory, and fragrant thick tomato sauce with plump raisins. Enjoy the meatballs over cooked rice, couscous, or quinoa for an easy, warm, and cozy meal!
This is one of those recipes that may make you sigh audibly when you take that first bite. I know I did. It’s hard to believe something so delicious and flavorful is also so easy to make!
These Moroccan meatballs have such a wonderful balance of flavors – warm, slightly spicy, and super fragrant, with the sweetness of the tomatoes and raisins and bright fresh lime juice and herbs stirred in at the end. And the texture of the meatballs is perfect– browned and crispy on the outside, and moist and fluffy on the inside.
Ingredients and Substitutions
- Ground Lamb – ground beef can also be used, or a combo. I recommend going high fat here, but if you want a healthier option you can use lean ground beef or even ground turkey or chicken.
- Ras el Hanout – this is a Moroccan spice blend you can buy in many grocery stores on online. See below for how to make it yourself with spices you probably already have!
- Onion and garlic
- Plain breadcrumbs – panko or regular are both fine, or you can use 2 slices of white bread crumbled up with the crusts removed.
- Milk – plant-based milk is fine or even water in a pinch.
- Canned diced tomatoes – crushed would work too.
- Chicken stock
- Raisins – or another sweet dried fruit, such as currants, chopped apricots, or chopped dates
- Cilantro – or parsley.
- Lime juice – or lemon juice
- Cooked rice, quinoa, or couscous for serving
- Pantry essentials- kosher salt and extra-virgin olive oil.
How to make Moroccan Meatballs
- First, make the meatball mixture. Mix together some finely diced onion, breadcrumbs, milk, egg, salt, and Ras el Hanout. Add the lamb and combine (using your hands is best to ensure it’s fully combined).
- Then, brown the meatballs. In a large skillet, heat some olive oil. Then form round meatballs (I like using a cookie scoop for this) and place them in the skillet. Brown for a couple of minutes, then flip and brown for a couple more. Remove to a plate.
- In the same skillet, make the sauce. Sauté some more onion and add garlic and more Ras el Hanout. Then, add the diced tomatoes, raisins, and chicken broth. Bring to a simmer.
- Add the meatballs back to the sauce. Simmer uncovered for about 10 minutes, allowing the sauce to reduce and thicken and the meatballs to fully cook.
- Finally, turn off the heat and stir in some chopped fresh cilantro and/or parsley and lime juice. Season to taste with more salt if needed. Serve!
Where can I buy Ras el Hanout?
You can probably find Ras el Hanout, the warm and fragrant spice mixture that makes these Moroccan Lamb Meatballs extra special, at a specialty grocery store. Unfortunately, I wasn’t able to find it in the grocery store in my town (H-E-B).
You can also find Ras el Hanout online.
But don’t worry- you can easily make your own!
How do I make my own Ras el Hanout?
For this recipe, simply mix together:
- 1/2 tablespoon ground cumin, ground coriander, and ground ginger
- 1/2 teaspoon each black pepper and ground cinnamon
- 1/4 teaspoon each ground allspice and cayenne pepper
This will yield the two tablespoons necessary for these Moroccan lamb meatballs. You can easily double, triple, or quadruple these amounts to make it in batch and store for other recipes.
Here’s more on how to make Ras el Hanout – I recommend making a big batch to keep in your pantry because you’re going to want to put it on EVERYTHING.
Other Moroccan-Inspired Recipes
- Moroccan Butternut Squash, Chickpea, and Spinach Stew
- Moroccan Roasted Butternut Squash
- Slow Cooker Moroccan Chicken
- Moroccan Couscous
Other easy meatball recipes
- Keftedes (Greek Meatballs) with herb butter
- Easy Baked all-beef Meatballs
- Spaghetti and Meatballs
- Paleo Greek Meatballs
- Gluten-free Harissa Meatballs
Did you know commenting and rating recipes is one of the best ways you can support your favorite food bloggers? If you made this recipe, please click the stars below to comment and Rate this Recipe and/or share photos on social media using the hashtag #bowlofdelicious or tagging @bowlofdelicious!
Moroccan Lamb Meatballs
- 1 yellow onion finely diced and divided
- 1/3 cup plain breadcrumbs
- 1/4 cup milk
- 1 large egg
- kosher salt as needed (see notes)
- 2 tablespoons ras el hanout divided (Moroccan spice blend- see notes)
- 1 lb. ground lamb or beef, or a mixture of both
- 2 tablespoons extra-virgin olive oil
- 2 cloves garlic minced
- 15 oz. canned diced tomatoes preferably fire roasted
- 1 cup chicken stock/broth
- 1/4 cup raisins
- 1/4 cup chopped fresh cilantro or parsley
- juice of one lime
- cooked rice, couscous, or quinoa, plus extra cilantro/parsley for serving (optional)
- In a large mixing bowl, mix together half the diced yellow onion, the breadcrumbs (1/3 cup), milk (1/4 cup), egg, 1 teaspoon kosher salt (see notes), and 1 tablespoon of the ras el hanout.
- Add the ground lamb to the bowl and mix until everything is just combined (try not to over mix- using your hands is a good way to combine everything but you can use a spoon if you prefer).
- Heat the olive oil (2 tablespoons) in a 12" skillet over medium-high heat. Roll the lamb mixture into 1-inch balls (I like using a cookie scoop to measure them equally into my hands, then give them a gentle roll) and place directly in the skillet. When all the meatballs have been added, sear for 1 more minute undisturbed. Flip to the other side (starting with the meatballs that were added to the skillet first) and allow to sear for 2 more minutes. Remove to a plate.
- Add the other half of the diced onions to the skillet and sauté until softened and starting to brown (about 3 minutes- there should be plenty of oil and fat left in the skillet but if it's dry you can add some more olive oil). Turn down the heat to medium and add the minced garlic (2 cloves) and the other 1 tablespoon of ras el hanout and sauté for 30 seconds to 1 minute longer, until spices and garlic are fragrant. Add the canned diced tomatoes (15 oz.), the chicken broth (1 cup), and the raisins (1/4 cup), stir together, and bring to a gentle simmer.
- Place the meatballs and any juices from the plate into the sauce and simmer uncovered without stirring too much for 10 minutes, or until meatballs are cooked through and sauce has reduced and thickened a bit.
- Turn off heat and stir in the chopped fresh cilantro or parsley (1/4 cup) and juice of one lime. Taste and season with more salt if needed. Serve the meatballs and sauce on cooked rice, couscous, or quinoa, with extra herbs sprinkled on top if desired.
- If you don’t have pre-mixed Ras el Hanout, you can make your own! Mix together 1/2 tablespoon ground cumin, 1/2 tablespoon ground coriander, 1/2 tablespoon ground ginger, 1/2 teaspoon black pepper, 1/2 teaspoon ground cinnamon, 1/4 teaspoon ground allspice, and 1/4 teaspoon cayenne pepper. This will yield the 2 tablespoons needed for this recipe. Here’s how to make your own Ras el Hanout.
- Check if your Ras el Hanout already has salt. Some pre-mixed versions contain salt; others do not. If yours does, omit the added kosher salt in this recipe and adjust seasoning to taste when you are finished.
- This recipe is a great make ahead meal. It reheats well in the microwave or on the stovetop, so you can make it for meal prep, or cook the meatballs and sauce and reheat and make a fresh batch of rice to serve with for dinner. You can also freeze the meatballs in an airtight container for up to 6 months – I recommend defrosting before reheating so the meatballs don’t get too overcooked.
- This recipe was inspired by Evi Aki’s North African Meatballs in her cookbook, Flavors of Africa.
Nutrition Information Disclaimer
The provided nutrition information is my best estimate and does not include any added sodium from seasoning to taste, any optional ingredients, and it does not take brands into account. I use an automatic API to calculate this information. Feel free to calculate it yourself using one of these tools: