Vegan Peanut, Sweet Potato, and Kale Soup With Coconut Recipe

Photographs: J. Kenji Lopez-Alt

Why It Works

  • Pounding the aromatics in a mortar and pestle develops more flavor than simply blending them.
  • Toasted, pounded peanuts give a deeper, nuttier flavor than peanut butter without the cloying sweetness.

The version of West African groundnut soup I ate in my youth was a thick, peanut-packed broth made with chicken, spices, and tomatoes, but recipes for maafe (as it's called in Mali) vary hugely. I'm taking that as free license to stray as far from tradition as I'd like, so this recipe takes a quick trip to Thailand for added flavor. Want to come along with me?

Recipe Facts



Active: 45 mins
Total: 45 mins
Serves: 4 to 6 servings

Rate & Comment


  • 6 medium cloves garlic

  • 1 1/2-inch knob of ginger, peeled and roughly chopped

  • 1 small bunch cilantro (about 1 1/2 ounces; 45g), thick stems reserved separately from leaves and tender small stems

  • 1 Serrano or jalapeño chile, stemmed and halved, divided

  • Kosher salt

  • 2 (14-ounce; 400ml) cans full-fat coconut milk (see note)

  • 2 tablespoons vegetable oil, divided (90ml)

  • 6 scallions, whites and pale green parts only, thinly sliced, divided

  • 1 teaspoon ground turmeric

  • 1 quart water or homemade vegetable stock (see note)

  • 8 ounces sweet potatoes, peeled and cut into 1/2-inch dice (about 2 small sweet potatoes; 225g)

  • 8 ounces roasted shelled peanuts (about 2 cups; 225g)

  • 2 teaspoons sugar

  • 1 (5-ounce; 140g) bunch lacinato kale, thick stems discarded, leaves very roughly chopped

  • 1 tablespoon (15ml) fresh juice from 1 to 2 limes

  • Freshly ground black pepper

  • Hot sauce, such as Frank's Red Hot, to taste

  • Rice, for serving (I like using red or black rice)


  1. Combine garlic, ginger, thick cilantro stems, and half of the chili in the bowl of a mortar and pestle (see note). Sprinkle with about 1 teaspoon of salt. Pound into a rough paste and set aside. Thinly slice remaining half chili and set aside for garnish.

  2. Open 1 can of coconut milk and carefully spoon off about 3 tablespoons of the solid fat from the surface and place it in a large Dutch oven. Add 1 tablespoon of vegetable oil. Heat over medium-high heat, stirring frequently, until coconut fat separates and solids start to sizzle, about 4 minutes. Continue cooking, stirring constantly, until solids turn pale golden brown, about 1 minute longer. Add the pounded garlic/ginger mixture and cook, stirring, until aromatic, about 30 seconds. Add half of sliced scallions and turmeric and cook, stirring, until lightly softened, about 1 minute.

  3. Add the remaining contents of both cans of coconut milk along with 1 quart of water or stock. Add sweet potatoes. Bring to a boil, and reduce to a bare simmer. Cook until sweet potatoes are totally softened, about 15 minutes.

  4. Meanwhile, combine peanuts and remaining tablespoon oil in a medium skillet set over medium heat. Cook, tossing and stirring frequently, until peanuts are a deep golden brown, about 8 minutes. Immediately transfer to a bowl to prevent scorching.

  5. Transfer 1/2 cup of peanuts to a cutting board and roughly chop. Reserve for garnish. Transfer half of the remaining peanuts to the now-empty mortar and pestle. Sprinkle with 1 teaspoon sugar and a pinch of salt. Pound to form a rough paste, then transfer to pot of soup. Repeat with the other half of the remaining peanuts.

  6. When potatoes are fully softened, blend soup until mostly smooth but a little texture remains using a hand blender directly in the pot or by transferring to a countertop blender in batches. Bring to a simmer, stir in kale, and cook until kale is completely wilted and tender, about 5 minutes. Stir in lime juice. Season soup to taste with salt, pepper, and hot sauce. Stir in cilantro, reserving some for garnish. Serve soup with rice, sprinkled with cilantro, chopped peanuts, scallions, and sliced chilies.

Special equipment

Mortar and pestle


Do not shake the cans of coconut milk before opening them, you want the fat inside to remain separated. Do not use store-bought vegetable stock; if you don't have homemade on hand, use water or a high quality vegetable base like Better Than Bouillon vegetable base, diluted according to manufacturer's instructions. A heavy-duty granite mortar and pestle will give you better flavor than a food processor or mini chopper, but a food processor can be used in place of a mortar and pestle it you do not own one.

This Recipe Appears In

Nutrition Facts (per serving)
698 Calories
61g Fat
34g Carbs
14g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 4 to 6
Amount per serving
Calories 698
% Daily Value*
Total Fat 61g 78%
Saturated Fat 29g 145%
Cholesterol 0mg 0%
Sodium 546mg 24%
Total Carbohydrate 34g 12%
Dietary Fiber 6g 21%
Total Sugars 6g
Protein 14g
Vitamin C 23mg 116%
Calcium 108mg 8%
Iron 6mg 36%
Potassium 851mg 18%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)