This post contains affiliate links.
With zesty ginger and our homemade garam masala seasoning, this vegan butter chicken is the perfect quick weeknight Indian-inspired classic. Our easy method for preparing the tofu gives it the same taste and texture as chicken.

You might not know it yet, but tofu makes the perfect replacement for chicken because, when cooked right, the texture and shape mimic chicken. (Need proof? See my baked tofu nuggets and BBQ tofu!)
So, if you love Indian recipes like I do, I highly recommend you try this butter chicken with tofu! It’s a dinner recipe with firm tofu that comes together in under an hour and is packed with flavor.

My cozy go-to
After a long day skiing in the Colorado cold, this is the meal we always come home to. It’s rich, cozy, and layered with flavor—the kind of dinner that warms you from the inside out. I used my sensory science background to give the tofu that perfect chewy, chicken-like texture (tearing it by hand is key!). The sauce? Creamy coconut, punchy ginger, and garam masala that hits every warm, savory note. It’s comfort food with depth, and it never lasts long.

Reader rating
“This sauce is so delicious, I could drink it. It converted my tofu-hating husband!” —Priskilla
Key Ingredients
Most of these ingredients for this tofu curry can be found easily in the store. Jump to the recipe card for the measurements.
- Tofu: Firm tofu is crucial so that its texture can withstand the awesome butter sauce.
- Cornstarch: This helps the outside of the tofu become crispy.
- Spices: Adding a little curry powder and salt to the tofu helps to really layer on those flavors. For the curry, you’ll need garam masala, coriander seed, Kashmiri chili powder, cumin, and salt. If you don’t have Kashmiri chili powder, you can substitute sweet paprika and cayenne pepper.
- Aromatics: Yellow onion, ginger, and garlic! While I don’t recommend powdered ginger or garlic, you can use pre-minced ginger and garlic.
- Coconut Milk: Grab full-fat coconut milk for the most decadent vegan sauce. This variety is usually found in a can near the Asian items in the store.
- Tomato Paste: Tomato adds a natural sweetness and slight acidity to cut through the fat from the coconut milk and oil.
Know Your Spices
Garam masala vs curry powder–what’s the difference? Curry powder has lots of turmeric in it, giving it that stark orange/yellow color, while garam masala is much more flavorful. They each offer specific flavor profiles to this butter tofu!


Homemade Butter Tofu with Coconut Milk (Vegan)
Ingredients
Crispy Tofu
- 2 14-oz blocks firm tofu
- 2 Tbsp cornstarch
- 1 tsp each curry powder and salt
Vegan Butter Chicken Sauce
- 2 Tbsp coconut oil, or any oil you have on hand
- 1 medium yellow onion, finely diced, about 1 ½ cups
- 1 Tbsp freshly grated ginger
- 4 cloves garlic, minced
- 1 Tbsp garam masala
- 1 tsp ground coriander seed
- 1 tsp kashmiri chili powder, or use ¾ tsp sweet paprika and ¼ tsp cayenne
- ½ tsp each salt and cumin
- 1 13-oz can full-fat coconut milk
- 1 6-oz can tomato paste
- To serve: basmati rice and naan
Instructions
- Rice: If you'll be serving this with rice, start that now, and cover to keep warm when finished.
- Prep Tofu: Preheat oven to 425°F (218°C). Drain the 2 14-oz blocks firm tofu then wrap it in clean towels and set something heavy on it for 20 or so minutes (if you have a tofu press, use that). Pat dry and tear into bite-sized chunks.In a large bowl, combine 2 Tbsp cornstarch and 1 tsp each curry powder and salt. Toss in the tofu, gently stirring to evenly coat.

- Bake: Arrange tofu on a greased baking sheet and cook for 25 to 30 minutes, flipping each piece halfway through cooking. You can leave the tofu in longer for a chewier finished texture.

- Onions: Meanwhile, heat 2 Tbsp coconut oil in a large saute pan or pot over medium heat. Add 1 medium yellow onion (finely diced) and cook, stirring often, until onion is soft and translucent, about 10 minutes.

- Flavor Base: Stir in 1 Tbsp freshly grated ginger and 4 cloves garlic (minced) and continue cooking for 1 minute. Stir in 1 Tbsp garam masala, 1 tsp ground coriander seed, 1 tsp kashmiri chili powder, and ½ tsp each salt and cumin.

- Sauce It: Stir in 1 13-oz can full-fat coconut milk and 1 6-oz can tomato paste. Cover and gently simmer for 15 minutes, stirring occasionally, to reduce the acidity from the tomato paste. It will be dark orange when done. Optionally blend your sauce (either with a handheld immersion blender or by carefully transferring to a counter top blender – never put the lid on tightly when blending hot liquids, leave it slightly cracked to allow steam to escape!)

- Serve: Spoon crispy tofu into the sauce and serve warm with naan and rice.

Notes
Nutrition
Nutrition information calculated by Sarah Bond, degreed nutritionist.
If you aren’t already rummaging through your pantry for the ingredients for this vegan butter chicken, here are a few more reasons why it works so well!
- Torn tofu really makes all the difference in texture and appearance!
- You can meal prep the sauce and serve it with tofu, roasted cauliflower or anything else that sounds good!
- Everyone loves this dish even if they have never had Indian food. It has the perfect combination of comforting and exciting flavors to keep you coming back bite after bite.
Serve It With
Butter chicken can be paired with many staple side dishes. Here are a few of my favorite ways to serve it.
- With Rice: Serve it over warm jasmine rice.
- Add a Dipper: Add a side of fresh naan bread for dipping.
- Veggies: Pair it with roasted vegetables for more colors of the rainbow on your plate!

















Although I never eat tofu I love Indian food so I thought I would give this nice easy recipe a shot it was fabulous I am now a tofu eater you have got to try this
So happy to hear you liked it, Evelyn! 😀
Wow! This butter tofu recipe is bursting with flavor. This will be a weekly recipe. Very simple to make.
I’m so happy to hear you loved it, Debra! 😀
Last recipe I tried for the 31 day Vegetarian challenge -Delicious, silky, spicy flavors. Amazing! So yummy I am licking up the pan with naan!
Yay!! So happy you loved it, Kari! Enjoy!
Really yummy.
Sooooo delicious and comforting. This is a great way to cook tofu!
I’m so happy to hear it! Enjoy!! 😀
I love this recipe, it’s so delicious and I make it every 4 to 6 weeks!
This makes me so happy to hear! Enjoy! 😀
Is the nutrition info for 4 servings? I calculate way more calories for 1/4… maybe the nutrition listed is for 1/6?
Also, do you recommend firm or extra firm tofu?
Thanks.
Nutrition was calculated for 4 servings 🙂 And you can use firm or extra firm here!
Made this the night after my hubbie made butter chicken, and truthfully I thought your recipe was better. Thank you Sarah!
This sauce is so delicious, I could drink it. It converted my tofu-hating husband!
YAY! I’m so thrilled to hear it. Happy eating! 🙂
Made this tonight and me and my partner loved it! He said it tasted just like out of a restaurant
I’m thrilled to hear it was such a hit! Happy eating! 😀
I made the Vegan Butter Chicken with Tofu for dinner last night and it was delicious. The only thing I left out was the chili powder/cayenne pepper as we aren’t into “hot” food. Served it with basmati rice and vegetables on the side. Am looking forward to leftovers for lunch! 😉
I’m so happy to hear it was a hit, Bonnie! 😀