Everyone's favorite Indian dish gets a healthy makeover with this delicious vegan butter chicken recipe. Tofu, peas, and corn are cooked in a creamy, rich, vegan butter chicken sauce with the perfect amount of curry spice. It's surprisingly easy to make this tasty dish at home and takes just 35 minutes!

Make this a meal with our favorite coconut rice, cauliflower rice, or perfectly cooked basmati rice.

Vegan Butter Chicken and rice in a bowl

This recipe was originally published in 2016. We've updated the post with some new photos and more information, but we've left the delicious recipe exactly the same.

Let's be honest, when it comes to butter chicken, what most of us are after is the irresistible sauce. This vegan version has everything we love about the classic: a rich, full flavor curry sauce and lots of it. With tender pieces of tofu, corn, and peas, it's a lightened-up dish with lots of delicious sauce to soak up with naan or rice. Adjust the heat level by using a milder chili powder for an easy better-than-takeout meal the whole family will love!


If you've always wanted to try butter chicken but meat isn't your thing, or you love butter chicken and are game for trying a healthier version, this recipe is for you! Don't let the list of ingredients turn you away. It's mostly spices that go into making the incredibly rich and flavorful sauce.

If garam masala is new to you, it's a blend of several Indian spices that add incredible flavor to dishes. It's easy to find in the spice aisle of most well-stocked grocery stores. If you don't have one or two of the spices, you can still make it and it will taste great. Here's everything you'll need:

  • Avocado oil – or another neutral-tasting oil will work.
  • Onions, ginger + garlic – traditional curry ingredients sautéed in a little oil to season the sauce.
  • Spicesgaram masala, turmeric, coriander, cumin, chili powder, and cardamom pods.
  • Crushed tomatoes – this makes the base of the sauce.
  • Almond butter – adds richness and a smooth velvety texture.
  • Coconut milk – lends its wonderful creaminess.
  • Coconut sugar – to add a bit of sweetness.
  • Frozen peas + corn – we love our veggies and these work well together in this dish.
  • Soft tofu – cut into bite-sized cubes before warming in the sauce.
making vegan Butter Chicken in a pot.

How to make the best vegan butter chicken at home

If this is your first time making vegan butter chicken with tofu, you'll be surprised at how easy it is to make. It's mostly making a sauce, then adding the tofu and veggies. Here's how to make it in a few simple steps:

  1. Start by cooking the onions in a large pot followed by the ginger and garlic. Add the spices and cook them briefly until you start to smell them.
  2. Add the sauteed aromatics to your blender with the tomatoes and almond butter and blend until it's smooth. This will be the base of the sauce.
  3. Pour this mixture back into the pot along with the coconut milk and sugar. Taste and season then the sauce is done.
  4. Add the veggies and cubed tofu to warm through. That's it!

Full recipe instructions are in the recipe card below.

Vegan butter chicken with tofu variations

It's easy to tailor this dish to your tastes. Here are a couple of ways to mix it up:

  • Swap the peas and corn for your favorite diced veggies and cook them in the sauce.
  • Make it spicy by adding cayenne powder, or a spicier chili powder.
  • Use firm tofu for a more meaty texture.
vegan tofu butter chicken in a bowl.


Can I replace the almond butter?

Yes, any smooth nut butter will work.

Can I swap the peas and corn?

Sure! It's also delicious with cauliflower, broccoli, potatoes, carrots, or even some spinach. Keep in mind you'll need to steam harder vegetables before adding them to the sauce or cook them longer in the sauce.

Can I make it ahead of time?

Yes, make the sauce ahead of time and store it in the fridge in an air-tight container for up to 3 days. When you're ready to eat it, warm the sauce in a pot on the stove and add the tofu and veggies until warmed through.

Can I freeze it?

Yes! Vegan butter chicken freezes excellently. We love to store it in a reusable Stasher freezer bag for up to 3 months. Note that tofu changes texture when frozen and will become a little grainy.

How to serve vegan butter chicken

This is the perfect dish to serve family-style with a big bowl of rice or naan bread to soak up all the delicious flavors. Basmati rice is traditionally served with Indian food. Here's everything you need to know about cooking perfectly fluffy basmati rice. It also tastes great topped with plain dairy-free yogurt and minced cilantro.

If you're cooking for a crowd, serve it with a couple of other vegetable curries like our coconut black lentil curry and chickpea, tofu, and eggplant curry.

Vegan Butter Chicken and rice on a plate
Vegan Butter Chicken and rice on a plate

Loaded Vegan Butter Chicken

Everyone's favorite Indian dish gets a healthy makeover with this delicious vegan butter chicken recipe. Tofu, peas, and corn are cooked in a creamy, rich, vegan butter chicken sauce with the perfect amount of curry spice. It's surprisingly easy to make this tasty dish at home and takes just 35 minutes!

If you love this recipe as much as we do, let us know with a 5-star rating!

4.80 stars (20 ratings)
Print Recipe Rate Recipe Pin Recipe


  • 1 tablespoon avocado oil, or another neutral-flavored oil
  • 2 medium yellow onions, roughly chopped
  • 3 tablespoons chopped ginger
  • 6 cloves garlic, crushed
  • 1 tablespoon garam masala
  • 1 teaspoon ground turmeric
  • 1 teaspoon ground coriander
  • 1 teaspoon ground cumin
  • 1 teaspoon chili powder
  • Seeds from 4 cardamom pods, optional
  • 28 ounce can crushed tomatoes
  • 2 tablespoons almond butter
  • 2 tablespoons coconut milk
  • 2-4 tablespoons coconut sugar, to taste (can sub maple syrup or brown sugar)
  • Sea salt, to taste (we like about 2 teaspoons)
  • 1 cup frozen peas
  • 1 cup frozen corn
  • 1 package soft tofu, cut into squares


  • Heat the avocado oil in a large-sized pot over medium-high heat. Add the onions and cook, stirring frequently, until they are quite brown, about 10 minutes. Add the ginger and garlic and cook for 1 more minute. Add the garam masala, turmeric, coriander, cumin, chili powder, and cardamom seeds to the pot and stir until fragrant, about 1 minute.
    1 tablespoon avocado oil, 2 medium yellow onions, 3 tablespoons chopped ginger, 6 cloves garlic, 1 tablespoon garam masala, 1 teaspoon ground turmeric, 1 teaspoon ground coriander, 1 teaspoon ground cumin, 1 teaspoon chili powder, Seeds from 4 cardamom pods
    image for recipe instruction
  • Transfer the onions to your blender then add the can of tomatoes and almond butter and blend on high until smooth.
    28 ounce can crushed tomatoes, 2 tablespoons almond butter
    image for recipe instruction
  • Return the sauce to the pot and stir in the coconut milk, sugar, and season to taste with salt.
    2 tablespoons coconut milk, 2-4 tablespoons coconut sugar, Sea salt
    image for recipe instruction
  • Add the frozen peas, corn, and tofu to the pot and stir gently. Let them heat through then serve immediately.
    1 cup frozen peas, 1 cup frozen corn, 1 package soft tofu
    image for recipe instruction


Pair with steamed basmati rice or cauliflower rice

Perfect basmati rice in a pot.cauliflower rice in a pan with a wooden spoon.
Serving: 1 serving = ¼ of the recipe, Calories: 310kcal, Carbohydrates: 33g, Protein: 15g, Fat: 15g, Saturated Fat: 3g, Polyunsaturated Fat: 5g, Monounsaturated Fat: 7g, Sodium: 1191mg, Potassium: 431mg, Fiber: 7g, Sugar: 9g, Vitamin A: 326IU, Vitamin C: 23mg, Calcium: 192mg, Iron: 3mg
DID YOU MAKE THIS RECIPE?If you love this recipe as much as we do, be sure to leave a review or share it on Instagram and tag @TheEndlessMeal.