Vegan Butter Chicken (Butter Tofu)
This vegan butter chicken is easy to make and features tofu in place of chicken for delicious plant-based version of the popular Indian dish.
About Butter Tofu
This butter tofu “chicken” recipe features tofu in a rich and creamy tomato and cashew-based sauce with spices like turmeric, cumin and cinnamon. You’ll need just 30 minutes to prepare it.
The recipe is simple with no preparation for the tofu, though you could bake or pan-fry it separately to give it a meaty texture. We’ll cover how to do that below.
The dish is rich, creamy, high in protein and packed with flavour and nutrition. The creaminess comes from blending raw cashews with plant-based milk, making the perfect dairy-free replacement for heavy cream.
You’ll love this recipe any night of the week for a satisfying and comforting meal but it’s great for entertaining too, especially if you’re serving guests with dietary restrictions. The final dish is not spicy, so it’s suitable for the whole family too. Serve with rice and naan and it’s sure to be a hit!
- Vegetarian and vegan (dairy-free).
- Ready in 30 minutes.
- Easy to make.
- Creamy, luxirious tomato butter sauce.
- Perfect served with rice and/or naan.
- Stores and reheats well.
The ingredient list might seem a bit long but most of it is spices, so don’t be intimidated! Here are a fews notes on the ingredients and substitutions you can make:
- Cashews: You’ll need raw cashews with no added oil or salt to make the cream. You can substitute coconut cream or thick coconut milk if you like.
- Coconut Oil: Use coconut oil to saute or substitute water or broth for an oil-free recipe.
- Garlic & Ginger: Fresh garlic and ginger are best for flavour here.
- Onion: You can use white onion, yellow onion or shallot.
- Spice Blend: You’ll need a mild chili powder, ground turmeric, ground coriander, ground cumin and cinnamon. It’s best to use all of these in the amounts listed for the best flavour profile.
- Maple Syrup: Just a little sweetener to balance the acidity. You can substitute brown sugar or coconut sugar.
- Diced Tomatoes: You’ll need a large can of diced tomatoes and will use the whole can, including the juices. For a smoother sauce, you can also use crushed tomato.
- Tofu: Use firm or extra-firm tofu or substitute plant-based chicken, cauliflower or chickpeas.
How to Make Butter Tofu
Step 1: Press the tofu and soak the cashews.
This step is technically optional so feel free to skip it if you just want to get into the recipe. However, if you do not have a high-speed blender, I would recommend soaking the cashews in boiled water for at least 30 minutes up to overnight.
If you’re soaking the cashews, place in a bowl and cover with boiled water. Let sit for 20-30 minutes then drain.
To press the tofu, use a tofu press or wrap it in a dish cloth and place a heavy object like a skillet on it for 20-30 minutes. After pressing, cut the tofu into cubes.
Quick Note: I did not do any tofu preparation for this recipe but if you’d like to add texture and crispiness, you can pan-fry or bake the tofu before adding to the sauce at the end.
To pan-fry the tofu, use this cashew tofu stir fry recipe, to bake the tofu, use this peanut tofu bowl recipe.
Step 2: Make the cashew cream.
Add the drained cashews and milk to a high-speed blender and blend on high until completely smooth and creamy. I used almond milk for an extra-creamy consistency but you can also just use water.
You may need more than 1/2 cup of liquid. We’re looking for a heavy cream consistency.
Quick Tip: To substitute coconut milk, replace the cashews and milk with about 1-1.5 cups of full-fat coconut milk. Coconut milk is not traditionally used in butter chicken but it can be used if you can’t do cashews.
Step 3: Cook the onion, garlic and ginger.
Heat the coconut oil, or another cooking oil of choice, in a large skillet over medium heat. When you’re ready, add the onion, garlic and ginger and cook for 4-5 minutes, stirring often.
Step 4: Toast the spices.
Add all of the spices to the pan and cook for 1-2 minutes to toast, stirring constantly.
Step 5: Finish the sauce.
Add the maple syrup and canned diced or crushed tomato to the pan. Add the cubed tofu and pour in the cashew cream.
Simmer the butter chicken for about 10 minutes over medium-low heat.
Serve your delicious butter tofu over your favourite rice and topped with fresh cilantro.
- To use cauliflower instead of tofu, roast 1 small head of cauliflower in 2 tsp olive oil with a pinch of salt and pepper until tender and golden then mix it into the sauce when you would have added the tofu.
- To use chickpeas instead of tofu, drain and rinse a 19 oz can of chickpeas then add it at the end and stir until heated through.
Frequently Asked Questions
Yes. To make this recipe without tofu, substitute 1 19 oz. can or about 2.5 cups of cooked chickpeas for the tofu.
Yes. To use coconut milk instead of cashew cream, substitute 1 cup of full-fat coconut milk for the cashews and milk.
- Butter tofu can be enjoyed on its own but it’s best served over fresh jasmine or basmati rice. Brown rice works too!
- It’s delicious served with fresh naan or roti for dipping.
- Sprinkle with freshly chopped cilantro before serving.
- Let cool before storing.
- Butter tofu stores well in the fridge in a sealed container for up to 5 days.
- Reheat in a saucepan on the stovetop over low heat or in the microwave until heated through.
Did you make this butter tofu?
I’d love to hear about it! Click here to leave a review and don’t forget to post a pic to social and tag @runningonrealfood so I can check it out!
Easy Vegan Butter Chicken
- Prep Time: 10 mins
- Cook Time: 15 mins
- Total Time: 25 minutes
- Yield: 4
- Category: Main Dish
- Cuisine: Indian
- Diet: Vegan
This incredible vegan butter chicken features tofu in a silky cashew tomato sauce and is delicious served over rice.
- 1/2 cup raw cashews + 1/2 cup unsweetened almond milk or water
- 1 tbsp coconut oil (use vegetable stock or water if you prefer)
- 1 tbsp fresh ginger, minced
- 3 clove garlic, minced
- 1 medium white onion, finely diced
- 2 tsp mild chili powder
- 1 tsp ground turmeric
- 1 tsp ground coriander
- 1/2 tsp cumin
- 1/2 tsp cinnamon
- 1 tbsp pure maple syrup
- 1 – 28 oz can diced tomatoes, with the juice
- 1 package organic firm or extra firm tofu, pressed and cubed
- salt and pepper, to taste
- Press Tofu (Optional): Press the tofu for 20-30 minutes. You can either wrap the block of tofu in a dish cloth and place a heavy object on it or use a tofu press. This step is optional but helps to squeeze out excess liquid so the tofu can absorb more flavour.
- Soak Cashews: While the tofu is soaking, add the cashews to a bowl and cover with boiled water. Let them soak for 20-30 minutes. This can also be done ahead of time and soaked as long as overnight.
- Blend Cashew Cream: Drain the cashews to a high-speed blender with the plant-based milk. Blend on high until completely smooth and creamy. You may need more than 1/2 cup liquid. We’re looking for a heavy creamy consistency. You should be able to pour it from the blender, so adjust accordindly.
- Saute Aromatics: Heat the coconut oil over medium heat in a large skillet. Add the ginger, garlic and onion and cook for 4-5 minutes, stirring frequently, until softened.
- Toast Spices: Add all of the ground spices: chili powder, turmeric, coriander, cumin and cinnamon. Stir constantly for another 1-2 minutes to “toast” the spices.
- Add Liquids and Tofu: Add the diced tomatoes, maple syrup, cubed tofu and cashew cream mixture from the blender. Mix well and simmer uncovered for 10 minutes over medium-low heat.
- Season and Serve: Taste and season with salt and pepper, if needed. Serve over rice and topped with chopped fresh cilantro and lime wedges on the side.
If you have a high-speed blender like a Vitamix or Blendtec, you can skip soaking the cashews but I’d still recommend at least a quick soak for the creamiest result. If you do not have a powerful blender, I’d recommend soaking them for at least 30 minutes in boiled water up to overnight to achieve a smoother texture. The cashew and milk mixture can be substituted with 1 cup full-fat coconut milk.
To keep this recipe simple, there is not preparation for the tofu. If you’d like to bake or pan-fry the tofu for more texture, break into small chunks after pressing and toss with 1 tbsp cornstarch, salt and pepper. Either pan-fry in a bit of oil over medium-high heat until crispy on all sides or bake spread out on a baking sheet at 400 F for 25-30 minutes until brown and crispy.
- Serving Size: 1/4 of recipe
- Calories: 307
- Sugar: 7.5 g
- Sodium: 377 mg
- Fat: 20 g
- Carbohydrates: 18 g
- Fiber: 4 g
- Protein: 15 g
Keywords: vegan butter chicken, butter tofu
This recipe as originally published January 19, 2015. It was updated December 2019 with new photos and text.
I’ve made this recipe many times. My daughter requests it regularly claiming she can’t make it like I do. She and her Hubby love it.
Thanks for the recipe, this is super flavorful for minimal effort!
I know this wouldn’t be vegan, but could you sub paneer for the tofu? Any idea if it would change the cook time?
Glad you enjoyed it! I don’t think so, it should be about the same! Enjoy.
I have tried many vegan butter chicken recipes but this sauce is our favourite. Great recipe that we keep coming back to. I’ll be making it nut-free for the first time soon (serving to someone with a nut-allergy) so I am going to try substituting soy milk and vegan butter for the cashew cream. Wish me luck!
Let me know how it turns out!
Sounds delicious! Would coconut milk be a substitute for the
cashew cream? I have made another recipe using soy curls…probably a different texture but very good.
Yep, you can use coconut milk. Enjoy!
This looks great & I wanted to know if I could use chickpeas instead of tofu. If so, is 1 – 15 oz can good?
Sure. It wouldn’t have to be an exact amount so I’d say somewhere between 1-2 15 oz cans or 1.5-3 cups. It’s meant to be 4 servings, so I would probably do 2 cans. Depends how sauce you want it too!
Personally I didn’t like it very much. Couldn’t taste anything. I had to add dried fenugreek, garam masala and a few other spices to make it taste better
Hi! There are various different kinds of chili powder used around the world. Could you please tell me which type is intended for this recipe? Thank you!
The one I used is made form paprika, chili pepper, cumin, coriander, dried garlic, oregano and cloves, so any chili powder along those lines would be perfect. If you don’t have access to North American-style “chili powder” you can look up a recipe to make your own. Thanks!
It is delicious!! I like it spicy so I added more chili powder.
Served over a bed of white rice and a green salad. So comforting in the winter months.
So glad you enjoyed it!
Yum! My first time pressing tofu- definitely makes a difference. I didn’t have fresh ginger so just used that. Had it with a side of green veggies. Thanks Derryn!!
This was an amazing dish as it is starting to get colder. I didn’t have fresh garlic or ginger so I used ground and it was just as flavorful and delicious. Will definitely be making this again!
Perfect! So glad you enjoyed it. Thanks for the review!
I made this today following your recipe except for the spices I used a packaged Shah spice mix for butter chicken that I purchased at a wonderful Indian grocer. It’s a bit too hot for my palate so next time, I’ll follow your recipe 100%. Everything about this recipe was simple and delicious!
So glad you enjoyed it, Bob!
Just wondering, one picture makes the dish look very golden and the image at the end of the video makes the dish look more red due to the tomatoes. Which one is more accurate?
I would say it’s more on the golden side. It’s just different lighting, cameras and editing so it looks a little different in the video and photos.