Spicy Lamb Meatballs in Creamy Harissa Coconut Sauce

Spicy Lamb Meatballs in Creamy Harissa Coconut Sauce

Tender, spiced lamb meatballs sear to a deep golden crust before simmering in a velvety, fiery harissa and coconut cream sauce perfumed with mint and coriander.

1hIntermediate4 servings (16 meatballs)
Remix

Equipment

Chef knife
Cutting board
Large mixing bowl
Large high-sided skillet with lid
Tongs
Digital instant-read meat thermometer
Wooden spoon
Measuring spoons
Liquid measuring cup
Clean plate
Serving bowls

Ingredients

4 servings

Meatballs

  • 500 g ground lamb, chilled
  • 1 yellow onion, finely grated and squeezed dry
  • 4 garlic, finely minced
  • 15 g fresh mint leaves, finely chopped
  • 15 g fresh cilantro leaves, finely chopped
  • 4 g ground cumin
  • 3 g ground coriander
  • 3 g smoked paprika
  • 1 g cayenne pepper
  • 5 g fine sea salt
  • 15 ml olive oil

Harissa Coconut Sauce

  • 15 ml olive oil
  • 2 shallot, finely diced
  • 3 garlic, minced
  • 60 g harissa paste
  • 30 g tomato paste
  • 2 g ground cumin
  • 120 ml low-sodium chicken stock
  • 400 ml full-fat canned coconut milk, shaken well
  • 3 g fine sea salt
  • 15 ml fresh lemon juice

Garnish

  • 5 g fresh cilantro leaves, roughly chopped
  • 25 g pomegranate arils

Nutrition (per serving)

Nutrition is estimated per serving. Nutrients without complete source data are omitted.

679
Calories
26g
Protein
15g
Carbohydrates
59g
Fat
958mg
Sodium
Full nutrition
Calories
679 kcal
Protein
26 g
Carbohydrates
15 g
Fat
59 g
Sodium
958 mg
Saturated Fat
33 g
Potassium
827 mg
Calcium
103 mg
Iron
7.9 mg
Magnesium
94 mg
Phosphorus
346 mg
Zinc
5.2 mg
Vitamin A
199 mcg
Vitamin C
14 mg
Water
207 g

Sources: Aggregated Public Data, USDA FoodData Central

Method

01

Place ground lamb, squeezed grated onion, minced garlic, chopped mint, chopped cilantro, cumin, coriander, smoked paprika, cayenne, and fine sea salt into the large mixing bowl. Wash hands immediately after handling raw meat to avoid cross-contamination.

2mFeel: Mixture becomes sticky, cohesive, and pasty as myosin proteins develop
02

Portion the meat mixture into 16 equal pieces (roughly 38g each) and roll them between clean, damp palms into smooth, compact spheres. Sanitize work surfaces and wash hands thoroughly with warm soapy water.

5mLook for: 16 uniformly sized, smooth meatballs with no large surface fissures
03

Heat 15 ml olive oil in the large high-sided skillet over medium-high heat at 180°C (356°F) until shimmering. Carefully add the meatballs in a single layer without crowding.

6mLook for: Deep brown crust developed on at least three sides of each meatball
04

Transfer the seared meatballs using tongs onto a clean plate, leaving the rendered lamb fat in the skillet. Note that the centers remain partially raw at this stage.

2m
05

Add the remaining 15 ml olive oil, diced shallots, and remaining minced garlic to the fat in the skillet over medium heat at 160°C (320°F).

3mLook for: Shallots become translucent and soft without dark brown edges
06

Stir harissa paste, tomato paste, and 2 g ground cumin into the softened aromatics in the skillet.

2mLook for: Pastes darken slightly to a brick red shade and oil turns vibrant orange
07

Pour the low-sodium chicken stock into the skillet, stirring and scraping up all browned fond stuck to the pan bottom with the wooden spoon.

1mLook for: Bottom of skillet is clean and liquid takes on a rich, cloudy amber tone
08

Pour in the full-fat coconut milk and 3 g fine sea salt, whisking gently until the sauce blends into a uniform, creamy coral color.

3mLook for: Gentle bubbles emerge around the rim with no visible fat separation
09

Nestle the seared meatballs and any accumulated juices from the clean plate into the simmering sauce in a single layer.

1m
10

Cover the skillet with the lid, reduce heat to low at 85°C (185°F), and simmer until the thickest part of the meatballs registers at least 71°C (160°F) on a digital instant-read meat thermometer.

12mLook for: Sauce thickens slightly and coats the back of a spoonFeel: Meatball centers reach a minimum safe temperature of 71°C (160°F)
11

Remove skillet from heat and gently swirl in 15 ml fresh lemon juice, avoiding breaking the meatballs.

1mLook for: Sauce appears glossy and vibrant
12

Distribute four meatballs per portion into shallow serving bowls, ladle warm sauce generously over the top, and scatter with fresh cilantro leaves and pomegranate arils if desired.

2m

Chef's Notes

  • Squeezing out onion moisture is the secret to egg-free meatball integrity. Grated onion introduces essential flavor and sweetness, but excess liquid will dilute natural meat proteins and cause meatballs to disintegrate in hot oil.
  • Kneading ground meat triggers myosin protein extraction. Mixing for 2 full minutes creates an emulsified protein network that binds the meat firmly without needing breadcrumbs or egg binders.
  • Full-fat canned coconut milk is essential here. Light coconut milk contains too much water and too few natural emulsifying fats, leading to a watery sauce that splits rapidly when exposed to the acid in harissa and lemon juice.
  • Do not skip browning the harissa and tomato paste in the rendered lamb fat. This step mellows harsh raw chili sharpness and creates deep caramelized flavor undertones that anchor the rich coconut cream.

Storage

Refrigerator: 4 daysCool leftovers rapidly and refrigerate in an airtight container within 2 hours of cooking at or below 4°C (40°F).

Freezer: 3 monthsFreeze meatballs fully submerged in sauce in an airtight freezer-safe container to prevent freezer burn.

Reheating: Transfer thawed meatballs and sauce to a covered saucepan over medium-low heat; reheat until simmering and the center of the meatballs reaches an internal temperature of 74°C (165°F).

Troubleshooting

Meatballs break apart or crumble during searing or simmering

Cause: The meat mixture was not worked sufficiently to extract bind-forming myosin proteins, or grated onion retained too much water

Fix: Cannot be fixed into intact spheres; continue simmering the mixture into a rich spiced lamb ragu and serve over grain bowls

Prevention: Squeeze all moisture from the grated onion using a kitchen towel, and vigorously knead the seasoned meat mixture until tacky before shaping

Coconut sauce splits into a greasy, curdled surface layer

Cause: The sauce boiled rapidly at excessive heat instead of gently simmering, breaking the coconut fat emulsion

Fix: Remove meatballs to a clean plate with tongs, remove skillet from heat, add 30 ml warm stock or water, and whisk vigorously until smooth before returning meatballs

Prevention: Maintain low heat once coconut milk is added, keeping the pan at a gentle bubble rather than a rolling boil

Meatballs are tough and dry inside

Cause: Meatballs were simmered beyond the safe 71°C (160°F) internal ground meat target

Fix: Cannot be reversed; bathe the meatballs generously in the creamy sauce to restore perceived juiciness

Prevention: Check the internal temperature at the 10-minute simmer mark using a digital instant-read thermometer and pull from heat as soon as it reaches 71°C (160°F)

Cultural Context

This dish blends North African culinary traditions with coastal East African and Indian Ocean spice routes. While fiery harissa-spiced lamb meatballs draw heavily on Maghrebi kefta traditions, simmering them in a spiced coconut milk base reflects coastal Swahili influences where chilis, warm spices, and tropical coconut converge. The result is a vibrant cross-cultural main course balancing bold chili heat with soothing coconut cream.

More Like This

Find your next meal

Dinner2,315Dessert753Side Dish505Appetizer476Soup368Salad367Condiment171Breakfast155Baked Good136Sauce122Lunch113Main Course76Base71Brunch61Bread57Snack51Beverage36Preserve32Confection23Hot Drink3Stew2Smoothie2Main Dish1Main1Sandwich1