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.
Chessie
There aren't enough thumbs in the house to give this recipe the "thumbs up" it deserves, unless I used my big toes. What a wonderful gravy with all those spices--heaven!
This would probably work just as well with lentils or even kidney beans in place of the tofu, wouldn't it? I'm definitely going to make this again, and I may try that variation the next time.
Vaishali Honawar
Hi Catherine, so thrilled you liked the Tofu Makhani-- definitely one of my favorite recipes to cook and eat. Thanks for letting me know!
Yes, it would definitely work with lentils or beans or both. There is a version of this called Dal Makhani which is very similar, and that's made with beans and lentils.
Chessie
I made this yesterday for a couple of friends, using lentils this time, and it was delicious. We all feasted on it. The flavorful gravy is so, so good. I have a feeling that I will return to this recipe many more times.
Vaishali Honawar
Hi Catherine, so glad you tried it with the lentils. I love Dal Makhani too, one of my all-time favorites. Thanks for letting me know! 🙂
Martha Palomino
Holy Cow is right! this dish was amazing! I have been cooking Indian food for the last two months and this has been the best recipe. Thank you!
Vaishali
Martha, so glad you liked it!
Rachana
Hi Vaishali,
How are you? Thanks for giving such wonderful recepies,I made tofu Makhani came out really nice. Tofu is good sub for Paneer.
Thanks once again.
Vaishali
Hi Rachana, lovely to hear that-- so glad you tried the makhani! Tofu definitely makes a good Paneer substitute. Have a great weekend! 🙂
Laina
Okay, thanks so much. Do you know of an online source?
Vaishali
Amazon should have it. Search for green cardamom. Good luck!
lainaeLaina
Thanks, I found some local. What about the fenugreek, can I use seeds and how much? Also, can I use powdered cinnamon?
Vaishali
Seeds have a very different flavor from the leaves-- they are much more bitter, so don't use them. Just leave it out. And if you're using powdered cinnamon, use no more than 1/2 a teaspoon and don't roast it-- just add it to the other spices before blending. Cheers.
Laina
I will look, but will it change the flavor a lot if I can't find green cardamom pods?
Vaishali
Laina, cardamom adds a great, distinct flavor. You can leave it out and it would be delicious still, although if you can find it I'd definitely recommend adding it.
harjeet
it was awsome
Selah N O
This looks/sounds amazing! Have you ever used eggplant instead of the tofu?
Vaishali Honawar
I haven't. But I love eggplant enough to say that even if it is not delicate enough to be a natural makhani ingredient, it would still taste awesome with all of these spices. Mushroom would perhaps work even better.
Veganopoulous
Hi Vaishali, I made this dish and it's great 🙂 Blogged about it with the addition of potato and beans. I found it tasted better the next day. Thank you!
Anonymous
I liked d pic so much that i brought tofu for the 1st time & tried this recipe. I skipped some things n simply stir fried d tofu instead of marinating.I had less time n not all ingridients. But it turned out to b good. Thank you so much
Raj
This tasted really good except I blended the cinnamon sticks as well. Was I supposed to take them out? The recipe didn't say to. Now my quadruple batch has the texture of wood 🙁
Other than that, it tastes great!
Vaishali Honawar
Raj, How much cinnamon did you use? You just need a 1-inch piece which, even if you blend it (it needs to be added whole in the recipe) should not create the "texture of wood" in the recipe.
Raj
Vaishali, thanks for replying!
Sorry, I've never used cinnamon stick before - didn't really know what I was doing.
I quadrupled (x4) the batch, so I used 2 cinnamon sticks. Each stick was about 2 inches in length.
I blended for about 10 minutes with a high speed immersion blender, but I can still feel the tiny woody bits between my teeth.
I still loved the recipe, but next time I will either fry the cinnamon for longer to make it more brittle, or instead just remove it before blending.
Vaishali Honawar
Raj, 2 cinnamon sticks is fine, but as you guessed the immersion blender did not puree them well enough. Also don't use the big, thick cinnamon sticks you get here in the US, but preferably the thinner bark you find at Indian stores which is softer. If you use the big round ones, add only half as much.
Alison
I just tried this recipe tonight. It was delicious! I have a question though - probably a stupid question, but I am relatively new to cooking curries. Do you grind your spices (i.e. the cardamom and cinnamon) or just put them in as is? And if so, is there any point in the cooking process when you remove them, or do you just blend them in when you blend the onions, etc.?
Thanks so much for your blog!
Vaishali Honawar
Alison, it's not a stupid question-- you add the spices whole but you blend them up with the onions. Hope that helps. 🙂
tess
I just made this (minus the tomato paste, so mine wasn't as red) and it was SO good! Thank you for the recipe - I will definitely use it again! 🙂
Deepa
I'm making this for dinner tonight! It looks amazing so far!!
michael
I made this last night with some store bought marinated tofu and it was absolutely delicious! I didn't have any fenugreek leaves so I just used a good pinch of fenugreek seeds in with the jeera. Look forward to cooking more from your blog, might try the Patia tonight :)Thanks for the delicious recipes!
Vaishali
Michael, thanks for the feedback-- glad you liked the makhani.
gastro-doc
Hi Vaishali! I found your website & it looks great! I made the tofu makhani this weekend and I REALLY love it (I left out the sweet element). I followed your directions but mine doesn't look as vibrant as yours :o(
Will definitely make this again -- tofu is good for you & so is your site!
All the best 😀
Vaishali
Anneka, glad you like it, and thanks for letting me know. I'm also glad you reminded me to post the recipe. 🙂