Chakalaka (South African Vegetable Relish)

Updated August 18, 2025

Media 1 of 1
Total Time
40 minutes
Prep Time
15 minutes
Cook Time
25 minutes
Rating
5(47)
Comments
Read comments

Chakalaka is an easy way to make the best of seasonal ingredients. A versatile dish, forgiving in all the right ways, this quick South African staple is hearty on its own, yet it can accompany almost anything, and can last for 10 days in the fridge. But all that generosity comes with some constraint: Balancing flavors here is a discovery, as you figure out how to adjust ingredients to your preference. Typically served with grilled meats or fish, it can be an easy way to have vegetables with every meal. Serve on toast, alongside a jammy egg, over pita with hummus or enjoy spoonfuls in a bowl by itself.

Featured in: This Easy Relish Is the Best Way to Use Up Any Produce

  • or to save this recipe.

  • Subscriber benefit: Give recipes to anyone

    As a subscriber, you have 10 gift recipes to give each month. Anyone can view them - even nonsubscribers. Learn more.

  • Share this recipe

  • Print this recipe

    or to print this recipe.

Advertisement


Ingredients

Yield:7 cups
  • ½ cup vegetable oil

  • 1 large red onion, peeled and chopped small

  • 3 garlic cloves, peeled and grated

  • 1 (1-inch) piece ginger, grated

  • 2 to 3 green bird’s-eye chiles, stemmed and halved

  • 1 teaspoon garam masala, homemade or store-bought

  • 1 teaspoon fine sea salt, plus more as needed

  • ½ teaspoon freshly ground black pepper, plus more as needed

  • 3 large beefsteak tomatoes, chopped (about 3½ cups)

  • 2 large bell peppers, any color, stem and core removed, chopped (2½ cups)

  • Juice of 1 lime

  • 2 large carrots, trimmed and grated on a box grater, about 3 cups

  • 1 (15½-ounce) can pinto beans, drained and rinsed (optional)

Ingredient Substitution Guide
Nutritional analysis per serving

24 grams carbs; 241 calories; 10 grams monosaturated fat; 3 grams polyunsaturated fat; 1 gram saturated fat; 15 grams fat; 7 grams fiber; 444 milligrams sodium; 6 grams protein; 7 grams sugar

Note: The information shown is Edamam’s estimate based on available ingredients and preparation. It should not be considered a substitute for a professional nutritionist’s advice.

Powered by

Preparation

  1. Step 1

    Heat the oil in a large saucepan or heavy pot set over medium. Cook the onion until softened, 3 to 4 minutes. Add the garlic, ginger, chiles, garam masala, 1 teaspoon salt and ½ teaspoon pepper. Cook, stirring constantly, until just fragrant, 1 to 2 minutes.

  2. Step 2

    Turn heat up to high. Add the tomatoes, bell peppers and lime juice. Stir and allow to come to a simmer. Taste and add more salt and pepper, if needed.

  3. Step 3

    Add carrots and cook, stirring constantly, until any liquid thickens, 12 to 15 minutes. Carrots should be cooked through, and the bell peppers and tomatoes softened. Add the beans, if using, and stir and cook until warmed through, about 2 minutes. Remove from heat and allow to cool; transfer to a storage container and refrigerate. (Chakalaka can be refrigerated for up to 10 days or frozen for up to 3 months. Thaw in the refrigerator once frozen.)

Private Notes

Leave a Private Comment on this recipe and see it here.

Ratings

5 out of 5
47 user ratings
Your rating

or to rate this recipe.

Have you cooked this?

or to mark this recipe as cooked.

Comments

Thank you for this! Just seeing the recipe brings back happy memories of my time at a wonderful wildlife preserve/lodge in South Africa, at which Eggs Chakalaka quickly became my favorite at the brunch that followed our early-morning wildlife outings. Now I will try it at home.

It will taste nothing like chakalaka at a SA game reserve. The authentic recipe does not contain beans, garam masala, carrots, ginger, lime or peppers.

For a little more authenticity, I’d swap the garam masala for curry powder and bay leaves - that will get you a better flavour profile. Yellow onions are more commonly used, but red onions would probably be delicious! Whatever you have can work honestly, as long as it’s tomatoey and spicy and simple and moreish! It’s not one exact dish, everyone has their own recipe. That said I’ve never heard of adding limes haha - I should try it. Can recommend hollowing out a bread roll and filling it with chakalaka as a snack/lunch while camping.

This was great. I added curry as well as garum masala and skipped the beans. It's great with any meat, on toast with an egg on top or as a zippy sandwich enhancement. We all need more of this in our lives

Very good! With a tip of the hat to Sly and the Family Stone, BOOM, chakalaka! (Sorry, I couldn't resist.)

Made 1/2 the recipe tonight - as directed, with Pinto beans - dry pinto beans, not soaked overnight, stovetop with herbs, bayleaf, garlic, lightly salted…served with Yolanda’s Bratwurst with Caramelized Onions and Chakalaka…so very delicious…we used sweet potatoes chips to dip the Chakalaka - its so good - amazing…!

Private comments are only visible to you.

or to save this recipe.