Creamy butter beans simmered with onion, garlic, ginger, tomatoes, and garam masala, then finished with cream or Greek yogurt. Use coconut cream and omit the optional butter for the vegan version.
A Note on Tomatoes: Use the best quality tomatoes you can find. You can either grate or chop fresh tomatoes, or use tomatoes from a can. Make sure it's a good quality one, preferably one from Italy (I like Mutti). Canned tomatoes can be very acidic, so they can really make or break the dish. If you find your tomato sauce is too acidic, balance it out with a drizzle of maple syrup. It gives it such a beautiful flavor.
In a pan over medium-high heat, warm the oil. Add the onions and cook, stirring occasionally, until they start to soften, about 5 minutes.
Reduce heat to medium. Add the garlic and ginger and cook, stirring occasionally, until the onions, ginger, and garlic are lightly brown, 5 minutes. Add the butter (if using), then add the garam masala and turmeric and let cook for 1 minute.
Add the drained beans and the canned tomatoes. Season to taste with salt. Cook at medium heat to allow the flavors to meld, 5 minutes.
Turn off the heat. Stir in the heavy cream and garnish with cilantro (if using). Serve with rice or naan, and lemon wedges for squeezing.
A quick note from the heart: We’ve moved our recipe cards right to the top so that it's easier on you. However, doing this impacts our site's health and visibility 😢. If you have an extra minute, scrolling down to read our Q&A, tips, and variations helps our blog immensely. And as always, if you love a recipe, leaving a review means the world to us. Thank you for supporting me.
Notes
Bean substitutions: Butter beans are a less popular bean variety. They are white, creamy, meaty, and hold their structure better than cannellini. If you can’t find butter beans, feel free to use cannellini or chickpeas instead.
Fresh garlic substitution: If you don’t have fresh garlic, you can use 1 teaspoon packaged garlic paste or ½ teaspoon garlic powder.
Fresh ginger swap: You can also replace the ginger 1 teaspoon packaged ginger paste or ½ teaspoon ginger powder.
Homemade garam masala: You can make your own garam masala by combining 1 tablespoon ground coriander, ½ tablespoon ground cumin, ½ teaspoon ground chile powder, and ¼ teaspoon cracked black pepper. Optionally, you can also add a pinch of ground cloves, cardamom, and/or cinnamon.
Make it spicy: If you want this dish spicy, add ¼ teaspoon chile powder along with the garam masala.
Coconut cream swap: I prefer this recipe with coconut cream; it's so divine.
A Note on Tomatoes: Use the best quality tomatoes you can find. You can either grate or chop fresh tomatoes, or use tomatoes from a can. Make sure it's a good quality one, preferably one from Italy. (I like Mutti.) Canned tomatoes can be very acidic, so they can really make or break the dish.
If you find your tomato sauce is too acidic, balance it out with a drizzle of maple syrup. It gives it such a beautiful flavor.