Maafe (also spelled mafé or mafe) is one of the great stews of West Africa — a deeply flavoured braise in which beef, lamb, or chicken is slow-cooked in a thick, brick-red sauce built on natural peanut butter, crushed tomatoes, and onion. As it cooks, the peanut butter loses its raw, nutty edge and transforms into something altogether more complex: rich, slightly sweet, faintly bitter, and unmistakably savoury. Sweet potatoes or regular potatoes are added halfway through cooking, absorbing the flavour of the sauce as they become tender. Maafe is one of the dishes that defines Malian household cooking, sitting alongside tigadèguèna and tô as the three pillars of the national culinary identity. It is also one of the most widely shared dishes across West Africa — versions appear in Senegal (where it may include cassava and is sometimes called 'mafé'), Guinea, Gambia, and even among diaspora communities in France, the United States, and the UK. Each country adds its own character: Senegalese versions tend to be lighter with more tomato, while Malian maafe is darker, denser, and more heavily spiced. The technique is straightforward but rewards patience. Browning the beef properly — in batches, on high heat, without crowding — creates a layer of fond (browned proteins) at the bottom of the pot that dissolves into the sauce during braising and forms the backbone of the stew's depth. The peanut butter is whisked with water into a smooth liquid before adding — do not add it directly from the jar, as it will seize and clump. The finished stew should be thick enough to coat a spoon but still pourable, a deep red-brown colour, and intensely savoury.
Serves 4
Pat the beef cubes dry with paper towels — moisture is the enemy of browning. Heat a tablespoon of vegetable oil in a large, heavy-bottomed pot (Dutch oven works best) over high heat until shimmering. Add beef in a single layer in batches, leaving space between pieces. Sear for 2–3 minutes per side until deeply browned all over, then transfer to a plate. Do not crowd the pan — cook in 2–3 batches.
The brown bits (fond) that accumulate on the pot bottom during browning are flavour gold — do not discard them. They will dissolve into the sauce and add enormous depth.
Reduce heat to medium. Add the chopped onion to the same pot (add a tiny splash of oil if it is very dry) and cook, stirring and scraping up the brown bits, for 5–6 minutes until the onion is soft and translucent. The moisture from the onion naturally lifts the fond from the pot bottom.
Add the crushed tomatoes to the onion and stir to combine. Cook over medium heat for 5–7 minutes, stirring occasionally, until the tomato paste deepens in colour slightly and the mixture reduces and thickens. You should see the oil beginning to separate at the edges — this is a sign the tomatoes have cooked down properly.
In a separate bowl, whisk the peanut butter with 1.5 cups of warm water until smooth and fully liquid. This step is critical — adding peanut butter directly from the jar causes it to seize into clumps that never fully dissolve. The mixture should be pourable, like a thin milkshake.
Pour the peanut butter mixture into the pot. Add the salt and chilli flakes and stir everything together. Return the browned beef and any collected juices to the pot. Bring to a gentle boil, then reduce heat to low, cover, and simmer for 25 minutes.
Add the peeled and cubed sweet potatoes to the pot, pushing them beneath the sauce. Cover and continue cooking for a further 20–25 minutes until the sweet potatoes are completely tender (a knife should meet no resistance) and the sauce has thickened considerably. If the sauce seems too thick, add a splash of water; if too thin, simmer uncovered for 10 minutes.
Remove the lid and skim any excess oil from the surface with a large spoon — natural peanut butter releases oil during extended cooking, and removing the excess improves the texture. Taste and adjust salt. Serve over steamed white rice or millet, garnished with a few chilli flakes if desired.
Use unsweetened natural peanut butter (just peanuts, maybe salt) — sweetened or commercial brands like Jif contain added sugar and stabilisers that change the flavour and make the sauce oily in a different, less pleasant way.
Brown the beef in very small batches with space between pieces — crowding creates steam and produces grey, flavourless boiled meat instead of properly seared beef.
Whisk the peanut butter with warm water into a liquid before adding it to the pot — adding it directly as a thick paste creates stubborn lumps that never fully incorporate.
Add okra in the final 10 minutes for extra body and a traditional texture — it thickens the sauce naturally and is commonly used in Malian home cooking.
Maafe tastes even better the next day: the flavours deepen and meld overnight. Make it a day ahead and reheat gently over low heat with a splash of water.
Lamb maafe: substitute lamb shoulder cut into 3 cm cubes — lamb's higher fat content makes the sauce even richer; skim more aggressively at the end.
Chicken maafe: use bone-in chicken pieces; reduce the initial braising time to 20 minutes as chicken cooks faster and becomes dry if overcooked.
Vegan maafe: replace meat with 400 g of firm tofu (pressed and cubed) or cooked chickpeas added at the sweet potato stage — use vegetable broth instead of water for the peanut butter mixture.
Senegalese version: add 1 cup of cubed cassava alongside the sweet potato and include a dibi spice blend (white pepper, coriander, ginger) for a lighter, more fragrant variation.
Maafe keeps in the refrigerator in an airtight container for up to 4 days and is genuinely better on day 2 and 3 as the flavours deepen. Reheat in a saucepan over low heat with 2–3 tablespoons of water, stirring to prevent the thick sauce from scorching. Maafe freezes excellently for up to 2 months — portion into freezer containers and thaw overnight in the fridge before reheating.
Maafe's culinary lineage traces back to at least the 18th century in the Bambara and Mandinka heartlands of present-day Mali and Senegal, where peanuts (groundnuts) arrived via the Columbian Exchange in the 16th century and rapidly became one of the most important cash crops and cooking ingredients across the Sahel. The combination of peanut paste with tomato and a braised protein became the signature preparation of the region. During the colonial era, maafe crossed the Atlantic with enslaved West Africans and influenced what became peanut-based stews in the American South, particularly in Virginia and the Carolinas. Today, recipes for maafe appear in Bambara cookbooks, Wolof household traditions, and diaspora community cookbooks from Paris to New York.
Both are Malian peanut-based stews and are closely related. The main distinction is that maafe typically includes root vegetables (sweet potato, cassava, or regular potato) that are cooked directly in the sauce, while tigadèguèna is more purely a chicken-and-peanut sauce without starchy vegetables. Maafe tends to be slightly darker and denser; tigadèguèna lighter and more sauce-forward. In practice, the boundary is blurry and both names are sometimes used interchangeably.
Yes — crunchy peanut butter works fine and adds small peanut pieces to the stew that some people enjoy. Whisk it just as you would smooth peanut butter. The main practical difference is that it takes slightly longer to fully dissolve into the water. Avoid sweetened varieties in either case.
Peanut butter releases its oils under extended heat, and if the sauce gets too hot or cooks too long uncovered, it can split. To fix it, add a few tablespoons of warm water, reduce the heat to the lowest setting, and stir vigorously in circles until the sauce comes back together. Keeping the heat at a gentle simmer (not a rolling boil) prevents this.
Yes — brown the beef and sauté the onions and tomatoes on the stovetop first for flavour, then transfer everything to a slow cooker. Cook on Low for 6–8 hours or High for 3–4 hours. Add the sweet potatoes halfway through. The sauce may need to be reduced on the stovetop for the last 15 minutes if it is too thin.
Per serving (420g / 14.8 oz) · 4 servings total
Ask our AI cooking assistant anything about this recipe — substitutions, techniques, scaling.
Chat with AI Chef →Join the conversation
Sign in to leave a comment and save your favourite recipes
Have feedback or need help?
We read every email and reply within 1–2 business days.
© 2026 MyCookingCalendar. All rights reserved.