Chakalaka (South African Vegetable Relish)
Updated Aug. 19, 2025

- Total Time
- 40 minutes
- Prep Time
- 15 minutes
- Cook Time
- 25 minutes
- Rating
- Comments
- Read comments
Ingredients
- ½cup vegetable oil
- 1large red onion, peeled and chopped small
- 3garlic cloves, peeled and grated
- 1(1-inch) piece ginger, grated
- 2 to 3green bird’s-eye chiles, stemmed and halved
- 1teaspoon garam masala, homemade or store-bought
- 1teaspoon fine sea salt, plus more as needed
- ½teaspoon freshly ground black pepper, plus more as needed
- 3large beefsteak tomatoes, chopped (about 3½ cups)
- 2large bell peppers, any color, stem and core removed, chopped (2½ cups)
- Juice of 1 lime
- 2large carrots, trimmed and grated on a box grater, about 3 cups
- 1(15½-ounce) can pinto beans, drained and rinsed (optional)
Preparation
- 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.
- 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.
- 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
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.
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…!
Made this for dinner tonight. Delicious (if a bit time consuming). One humble suggestion: I used green tomatoes that were just starting to pinken, as I had no ripe ones, and I think they really worked in this dish.