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!
Recipe Highlights
- Vegetarian and vegan (dairy-free).
- Gluten-free.
- Ready in 30 minutes.
- Easy to make.
- Creamy, luxirious tomato butter sauce.
- Perfect served with rice and/or naan.
- Stores and reheats well.
Ingredient Notes
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.
Variations
- 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.
Serving Tips
- 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.
Storing Instructions
- 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
Description
This incredible vegan butter chicken features tofu in a silky cashew tomato sauce and is delicious served over rice.
Ingredients
- 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
Instructions
- 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.
Notes
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.
Nutrition
- 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
This recipe as originally published January 19, 2015. It was updated December 2019 with new photos and text.
Incredibly delicious !!
I used soy milk because I didn’t have almond milk and skipped the maple syrup.
Thanks so much 🙂
So glad you enjoyed it!
This was super easy to do. It was delicious! We added some frozen peas and mixed in some rice we had pre-cooked and frozen couple of days ago. We served it on a bed of spinach greens, which wilted nicely from the heat of the curry. Highly recommend this recipe! Thanks.
Sounds delicious with those additions! So glad you enjoyed it.
I love this recipe. I didn’t have cumin, so I substituted about a half teaspoon of coriander. I also baked the firm tofu previously and then added it to the sauce. So good!! Thank you!
Can you use cashew butter for this, if so how much should I add, please?
I haven’t tried that so I’m not sure how much would be needed, maybe 4 tbsp blended into the milk? I would suggest using full-fat canned coconut milk in place of the cashews and almond milk if you don’t have raw cashews on hand.
Ginger isn’t my favorite. How do you think this would be without it?
My new favourite tofu recipe! It was so easy to make and the flavour was just amazing! Made some cauliflower rice to have with it to make it low carb and some fresh tomatoes for a little extra salad and it was perfection! x
Could someone tell me how much cashews to use?
You’ll see the cashew cream instructions in the Notes section of the recipe card. Enjoy!
I used fresh salad tomatoes instead of canned, and served over arugula. I will definitely be making this again!!
Yum! I’ve never tried it with fresh tomatoes..good to know! Thanks for the feedback!
I just made this dish and it is delicious. BEYOND delicious. I didn’t have enough tofu so I added some cauliflower. Otherwise I followed your recipe exactly. It will be on my rotation for a long time. My husband was a bit blown away with the flavor as well. Thank you!
My family is not Vegan. I repeat, not Vegan. I made it the exact way in the recipe and everyone enjoyed it, they even had 2nd’s. The whole pan was gone at the end of dinner. Absolutely delicious and I felt so good and light afterwards, so much flavor!
That’s wonderful to hear! I’m so glad everyone enjoyed it. Thanks for the review!