In the mood for something Indian, creamy and absolutely delicious? This tofu makhani, with its richly colored curry and chunks of tofu, will satisfy that craving. The tofu absorbs the delicately spiced tomato onion gravy and becomes puffy, smooth and creamy while still holding its shape.
Serve the tofu makhani with vegan naan or roti for a delicious Indian meal.
![Tofu makhani in bowl with cilantro.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-3.jpg)
Tofu is a fantastic substitute for the Indian cottage cheese, paneer, in creamy Indian curries like my tofu curry and vegan butter chicken. This tofu makhani, which I first created and shared with you in 2011, is another recipe that uses tofu effectively and deliciously. It is a recipe many readers have fallen in love with over the years and I am updating it today with new photos and text.
Table of Contents
What is makhani?
Indian-restaurant-goers are likely familiar with dishes like chicken makhani, dal makhani and paneer makhani, with their signature orange, velvety sauce. I created this tofu makhani to riff off those dishes, while keeping this recipe fully vegan.
The word "makhan" translates from Hindi and Punjabi to butter, and a "makhani" is a butter-based dish. A makhani curry gets its silky texture from a combination of cream and a bit of butter added at the end of cooking. The flavor is a pleasant surprise: the curry is mildly, delicately spicy, not fiery hot as curries can often be, and extremely creamy. Eating a makhani is truly a special, even exalted, experience, and a memorable one.
For my dairy-free tofu makhani, I substitute the cream and butter with cashew cream and vegan butter, resulting in a makhani that's very authentic tasting. Although Indian cooks often add color to achieve the vibrant orange-red color of a makhani sauce, all of the color in this recipe comes from a combination of tomatoes, tomato paste and Kashmiri chilli powder, a pepper powder known for its mild heat and brilliant red color (much like paprika).
A simple but craveable Indian curry
- This tofu makhani is an easy recipe and it's just perfect for anyone who loves Indian food but doesn't have hours to create a complicated, restaurant-style dish. The makhani is ready in just over 30 minutes.
- A complex but mild curry. There are layers of flavor in the makhani curry sauce, achieved by the use of a few spices, fresh tomatoes and onions. Tomato paste adds umami.
- Serve it for dinner or to guests. Everyone will be impressed, guaranteed. As easy as it is, this tofu makhani is also delicious enough to make everyone think you spent hours making it!
Unbelievably delicious with depth and layers of flavours coming through - the best ever! - Susan
![Tofu makhani in bowl with cilantro garnish and roti.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-4-1.jpg)
Ingredients for tofu makhani
The list may seem long but many ingredients are repeated in the tofu marinade and in the sauce. Marinating the tofu first results in an exceptionally flavorful makhani.
For the tofu marinade
- Tofu. Extra firm tofu is the best choice for this recipe. The tofu becomes porous after the water is pressed out, absorbs the orange curry sauce and becomes puffy and creamy. Super firm tofu (also known as high protein tofu) would work at a pinch, but it is rather dense and will not absorb the sauce as well.
- Spices: ground coriander, ground cumin, Kashmiri red chilli powder (or paprika), and turmeric
- Lemon juice. A makhani sauce includes ingredients spanning every flavor - sweet, tangy, bitter, salty and umami - which makes it so aromatic and appetizing. The lemon adds tang, along with tomatoes and tomato paste used in the sauce.
For the makhani curry sauce
- Whole spices: green cardamom pods, cloves, peppercorns and cinnamon. You need just a small quantity of each because the sauce needs to be mild, not spicy-hot. The spices get blended up in the sauce.
- Powdered spices: ground coriander, ground cumin and Kashmiri chilli powder (or paprika)
- Onions. You can use red onions, which I typically recommend for Indian recipes, but yellow or white onions work well in this sauce too. Onions add both a bit of heat and sweetness to the makhani.
- Ginger garlic paste. Ginger and garlic, the holy trinity of north Indian cooking along with onions, add more complexity and flavor to the tofu makhani.
- Tomatoes and tomato paste. You will need just one large tomato for this quantity of makhani. The tomato paste adds tang and umami as well as some of that desirable color to the curry.
- Herbs: kasoori methi (dried fenugreek leaves) and fresh cilantro (for garnish). The kasoori methi contributes a mild, rich bitterness, which you won't notice in the dish after the flavors have melded.
- Raw cashews. This is the "cream" for the recipe. You don't need to make a separate cashew cream because the cashews just get blended up with the rest of the sauce ingredients, keeping this recipe simple.
- Sugar. Just a teaspoonful, to add some sweetness. You won't notice it but it will make all the difference.
- Vegan butter. A bit of vegan butter at the end ties all of the makhani flavors together.
How to make tofu makhani
![Spices and lemon juice in bowl.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-tofu-marinade-ingredients.jpg)
- Place spices for tofu marinade -- turmeric, ground coriander, ground cumin and Kashmiri chili powder or paprika - in bowl along with lemon juice.
![Tofu marinade mixed in glass bowl with whisk.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-tofu-marinade-mixed.jpg)
- Whisk the marinade to mix.
![Marinated tofu in bowl.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-tofu-marinated.jpg)
- Add tofu slices to the bowl and coat each slice on all sides with the marinade.
![Tofu roasting for tofu makhani.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-tofu-roasted.jpg)
- Heat a tablespoon of oil in a large pot or Dutch oven (use an enameled pot or non-stick pot to ensure tofu doesn't stick). Add the tofu slices and sear them on all sides until a light crust forms. This should take no more than two minutes per side. Remove the tofu to the bowl you made the marinade in and let it cool.
![Cubed tofu in bowl.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-tofu-cubes-after-roasting.jpg)
- Cut the tofu into ½-inch cubes. Set aside.
![Spices added to pot for makhani.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-whole-spices.jpg)
- In the same Dutch oven heat a teaspoon of oil over medium heat. Add the whole spices: peppercorns, cinnamon bark, cloves and cardamom. Saute for a minute.
![Onions added to pot with spices.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-onions.jpg)
- Add the onions along with a pinch of salt. Saute the onions until soft, not brown, 2-3 minutes.
![Spices added to tomatoes and onions in pot.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-spices.jpg)
- Add the tomatoes, tomato paste, ginger garlic paste, ground coriander, ground cumin and Kashmiri red chilli powder or paprika to the pot. Mix and cook, covered, until the tomatoes break down and are very soft, about 3-4 minutes.
![Cashews added to tomato onion sauce.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-cashews.jpg)
- Stir in the cashews.
![Spices, tomatoes, onions and cashews cooking in pot.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-cashews-tomatoes-onions.jpg)
- Mix the cashews into the spices and warm through for a couple of minutes.
![Water added to cashews and tomato-onion sauce in Dutch oven.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-kasoori-water.jpg)
- Add a cup of water to the pot, mix, and turn off heat. Once the sauce has cooled further, remove it to a blender and blend it into a smooth sauce. You can also do this with an immersion blender.
![Kasoori methi and sugar added to makhani sauce.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-kasoori-methi-sugar.jpg)
- Pour the blended sauce back into the pot. Stir in sugar and kasoori methi. Bring the sauce to a boil over medium heat. Continue to cook for 5 minutes, stirring frequently. The gravy will thicken, so add another cup of water to thin it out.
![Tofu cubes added to the makhani sauce in pot.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-tofu-cubes.jpg)
- Stir in the tofu cubes and warm through for 2-3 more minutes.
![Butter added to makhani in pot.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-sauce.jpg)
- Stir in the vegan butter, add cilantro, and turn off heat.
![Tofu makhani in pot with cilantro garnish.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-cooked.jpg)
Top tips
- Marinating the tofu might seem like an extra step, but it is not a lengthy process and the payoff in flavor is tremendous.
- It is important to slice the tofu (I cut four slabs) and roast them first to get a bit of a sear on them, then cut the slabs into cubes. This firms up the tofu but the soft, creamy sides, exposed after the tofu is diced into smaller pieces, soaks up the sauce and helps the tofu puff up and become creamy inside while still having a bit of a bite on the outside. If you cut the tofu in cubes before roasting you wouldn't get the same, delicious texture.
- The tomato paste adds umami, which is key in a recipe where we are substituting animal ingredients.
- You can use vegetable stock instead of water to make the curry, adding another layer of flavor to the curry.
Tweaks for special diets
- Soy-free: If soy-free, you can use this makhani sauce with chickpea tofu or another protein that is soy-free, including vegan chicken chunks. Or you can skip the meat substitutes and use veggies like mushrooms or eggplant.
- Nut-free: Use the same quantity of pumpkin seeds instead of cashews in the sauce.
- Low-carb: This recipe has just 13 net carbs, making it a great inclusion in a low-carb, high-protein diet. If you are looking for more protein, use high-protein tofu instead of extra-firm. Serving the tofu makhani with quinoa will bump up the protein and fiber content of the meal.
Serving suggestions
Tofu makhani is lovely scooped up with an Indian flatbread like naan, roti or paratha. For a high-protein meal, pair it with this high-protein roti.
You can also serve tofu makhani with dal tadka and basmati rice.
Serve vegan cucumber raita on the side.
For a true dhaba experience, sip on vegan mango lassi alongside the makhani. And I can't think of a better dessert to pair this dish with than my Indian-inspired cardamom turmeric cake.
Recipe FAQs
You can add 1 teaspoon or more of garam masala to the makhani gravy instead of the whole spices, and it will taste fine. I prefer adding the whole spices though because the makhani has a very delicate flavor from just a few spices, and a garam masala, as you know, is a blend of more than a dozen spices.
You can air-fry the tofu to cut down on the tablespoon of oil needed to sear it. To do so, marinate the tofu and then air-fry the slabs of tofu for 15 minutes at 375 degrees Fahrenheit/190 degrees Celsius. Once the tofu is cool enough to handle cut it into cubes and proceed with the recipe.
The Kashmiri chili powder, and the quantity you use, will play a big role in making the curry darker or paler. I find that the color of Kashmiri chili powder often varies a lot even in different batches of the same brand. If your curry does have a lighter color, don't sweat it--it will still taste amazing.
![Tofu makhani in bowl with cilantro garnish and roti on the side.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-1.jpg)
More delicious Indian tofu recipes
![Photo of tofu makhani with cilantro garnish and spoon.](https://holycowvegan.net/wp-content/uploads/2011/12/tofu-makhani-11-360x360.jpg)
Tofu Makhani
Ingredients
For the tofu
- 14 ounces extra-firm tofu (press out all water and cut the tofu into four slabs)
- 1 teaspoon ground coriander
- ¼ teaspoon Kashmiri chilli powder (or paprika)
- ¼ teaspoon turmeric
- 1 tablespoon lemon juice
- Salt to taste
- 1 tablespoon avocado oil or any neutral oil
For the makhani curry
- 1 teaspoon avocado oil or any neutral oil
- 4 green cardamom pods
- 4 cloves
- 10 peppercorns
- 1-inch piece cinnamon
- 1 onion (diced)
- 1 large tomato (diced)
- ¼ cup tomato paste
- 1 tablespoon ginger garlic paste
- 1 tablespoon ground coriander
- 1 teaspoon ground cumin
- ½ to 1 teaspoon Kashmiri chilli powder (or paprika)
- ¼ cup raw cashews
- 2 cups water (or vegetable stock)
- 2 tablespoons kasoori methi (dry fenugreek leaves. Crush them between your palms when you add them to the sauce)
- 1 teaspoon sugar
- 1 tablespoon vegan butter
- 2 tablespoons cilantro (chopped, for garnish)
Instructions
- Prep the tofu
- Place spices for tofu marinade -- turmeric, ground coriander, ground cumin and Kashmiri chili powder or paprika -- in a bowl along with lemon juice. Whisk to mix.
- Add tofu slices to the bowl and coat each slice on all sides with the marinade.
- Heat a tablespoon of oil in a large pot or Dutch oven over medium heat (use an enameled pot or non-stick pot to ensure tofu doesn't stick). Add the tofu slices and sear them on all sides until a light crust forms. This should take no more than two minutes per side.
- Remove the tofu to the bowl you made the marinade in and let it cool enough to handle, then cut the tofu into ½-inch cubes. Set aside.
- Make the makhani curry
- In the same pan or Dutch oven that you fried the tofu, heat a teaspoon of oil over medium heat. Add the whole spices: peppercorns, cinnamon bark, cloves and cardamom. Saute for a minute.
- Add the onions along with a pinch of salt. Saute the onions until soft, not brown, 2-3 minutes.
- Add the tomatoes, tomato paste, ginger garlic paste, ground coriander, ground cumin and Kashmiri red chilli powder or paprika to the pot. Mix and cook, covered, until the tomatoes break down and are very soft, about 3-4 minutes.
- Stir in the cashews and continue sauteing for a couple of minutes. Then add a cup of water, mix, and turn off heat. Once the mixture has cooled a little, remove it to a blender and blend it into a smooth sauce. You can also do this right in the pot using an immersion blender.
- Pour the blended sauce back into the pot. Stir in sugar and kasoori methi. Bring the sauce to a boil over medium heat. Continue to cook for 5 minutes, stirring frequently. The gravy will thicken, so add another cup of water to thin it out.
- Stir in the tofu cubes and warm through for 2-3 more minutes. Stir in the vegan butter, add cilantro, and turn off heat.
Anneka
I've made this twice now, I was unable to find the fenugreek leaves so left them out but it still tasted so amazing! I'm not a big tofu fan so I use chickpeas or potatoes in place, it's sooo good! It's a big hit here, both mum and I are big fans especially cause it's hard to find good indian food where we live. Thank you so much for this recipe!! 😀 It's nice to make from scratch, to know exactly what is in it unlike store bought ones etc. 😀
Vaishali
Chitra, thanks for the feedback. Glad you liked it. 🙂
Anonymous
Hey vaishali can i use fresh tomatoes only instead of the tomatoe paste ? i tried ur recipe and it was a bit in the tangy side as my tomato patse was a bit tangy so had to add lotsa syrup. But it was super yummy everyone loved it.
Vaishali Honawar
Yes, fresh tomatoes would be fine! Glad you tried it.
Chitra Vivek
OMG, I am not a Vegan but a great fan of Tofu, I tried this receipe and was big hit. Did modify a few ingredients and still tasted the best. Now this will be a regular in my house. Thanks.
Spandana
Looks so rich and creamy!! Delicious!!
anthony stemke
This gravy is fantastic. I alresdy love dal makhani but your sauce has a spice profile that I find most palatable.
Your stuff is good, I want to try this with tofu. I make Italian stuffed shells with tofu but have never thought of marinating them. Thanks for this.
Anneka
Thank you so much for posting this! It looks and sounds delicious, I can't wait to try it myself. I'll let you know how it goes <3 Thank you!
Manasi
Looks just like the non-vegan version! Rich, luxurious and yet a delicate blend of spices, umm! Mouth watering!
Maayeka
Nice and delicious... This is really too good and I must try this...
Kalpana Sareesh
Superr rich creamy n yum dish.. with tofu..
Poornima Nair
Love the rich n creamy gravy. Drool!
divya
Looks so tempting and delicious.. Yummy 🙂
ANU
wow Tofu in the place of paneer...awesome...
Richa
love the texture of the gravy! both my and hubbs's parents cant live without a good paneer makhani.. i taught ma my vegan version when she visited in october.. she already made some new vegan stuff she picked up here esp some laddoos! so i a hoping she wills tick to some non paneer non makhan makhani too:)
Rajee Mani
Yummy and vibrant looking makhani. I love the creaminess that cashew gives to the gravy.
cumincoriandercardamom
Just send me that bowl 🙂
Priya
Super rich looking,very much inviting tofu makhani..