Warming spices, rich cream, ghee, aromatics and tofu make this vegetarian butter chicken recipe simply irresistible! Toss those take-out menus and make your very own tofu butter chicken at home!

If you’re looking for a homemade butter chicken recipe, you’ve come to the right place!
This vegetarian butter chicken has the flavours of a traditional butter chicken recipe but is meatless.
Instead of chicken, you’ll find tofu. There are still all the regular players you’d expect to find, like garam masala, cream and butter.
This butter tofu recipe is seriously good and a great way to enjoy more meatless meals.
Serve with rice to soak up all that flavourful sauce and you won’t be disappointed.
Also (what I love to do when I make this), is throw on my comfiest clothes, pin my hair up, glasses on, big blanket, wine and turn on whatever show we’re binging on at the moment. It seriously makes for the best kinda evening. Who needs take-out anyway?
Fan of tofu recipes? Check out these crispy tofu bowls!
Why We Love This Vegetarian Butter Chicken Recipe
- This butter tofu is made in about 30 minutes.
- It’s easy to prepare.
- It’s a fun alternative to traditional butter chicken.
- Of course, it tastes delicious!
How To Make Butter Tofu
Full details on how to make this butter tofu are in the recipe card below, but here are the basics:
- In a pan, cook some onion in a little oil.
- Add garlic and ginger and cook for just a little.
- Stir in tomato paste.
- Pour in tomato puree, cream, seasonings and sugar (if using).
- Stir to combine and cook for a little.
- Allow the butter chicken sauce to cool slightly. Then transfer the sauce to a blender, cover and blend until smooth.
- Pour the sauce back into the pot, along with the tofu. Cover and heat through.
- Serve and enjoy!

Do I Have To Press the Tofu?
Nope! Use firm or extra firm tofu in this recipe. We’re not frying or baking it or anything, so there’s no need to press any moisture out.

Do I Have To Use Tofu?
Not at all!
If you’d rather use something else instead of tofu, paneer is a great option.

Tips for Making This Recipe
- I didn’t add any cayenne pepper to this vegetarian butter chicken recipe as butter chicken is not overly spicy. However, if you’d like a little spice (perhaps with some fresh chili pepper or crushed red pepper flakes), feel free to add some.
- Though not traditional, if you want to add a pop of colour (and some veggie factor) to this dish, feel free to mix in & warm through some frozen peas or baby spinach.
- Ghee was used as the butter component of this tofu butter recipe. Ghee is basically clarified butter. That just means that the milk solids are removed. You know how when you heat butter, there’s a foamy milk layer that floats to that top? That! Those are milk solids and they are removed. You can use regular butter here, though, if that’s what you have on hand.
- This vegetarian butter chicken recipe (or butter tofu) goes great with rice and naan. Quinoa or cauliflower rice would also be yummy sides to soak up all that butter chicken sauce!

More Easy Curry Recipes
If you try this tofu butter chicken recipe, be sure to leave a comment below!

Vegetarian Butter Chicken Recipe (Butter Tofu)
Ingredients
Butter Chicken Sauce
- 1 tablespoon olive oil
- 1 yellow onion, peeled and diced
- 3 cloves garlic, minced
- 1 tablespoon minced fresh ginger
- 3 tablespoons tomato paste
- 2 cups tomato puree
- 1 cup heavy cream (whipping cream)
- 2 teaspoon garam masala
- 1 teaspoon ground cumin
- 1 teaspoon chili powder
- 1 teaspoon salt
- 1 teaspoon freshly ground black pepper
- ½ teaspoon ground turmeric
- 2 tablespoons ghee (clarified butter), or use regular butter
- 1 tablespoon brown sugar, or to taste (depending on your tomato puree or how sweet you want to balance the tomato flavour)
- 14 ounces extra firm or firm tofu, cut into small squares, about the size of some dice (about 400 grams)
- Freshly chopped cilantro leaves (coriander), garnish to taste (optional)
- Fresh lime wedges, for serving with (optional)
- Rice, for serving with (optional)
Instructions
- Heat olive oil in a 12-inch heavy-bottomed sauté (or deep) pan over medium heat.Note: The pan should have a lid for use later.
- Add onion and cook, stirring often, until tender, about 3 to 5 minutes.
- Add garlic and ginger, stir, and cook 1 minute.
- Stir in tomato paste and cook for 1 minute.
- Pour in tomato puree, cream, garam masala, cumin, chili powder, salt, black pepper, turmeric, ghee and brown sugar (if using). Heat through about 5 minutes or so until the flavours come together and the sauce thickens a little.
- Allow to cool slightly. Then, transfer the sauce to a blender, cover and blend until smooth. You can loosely cover the vent in your blender lid with a clean tea towel to allow steam to escape.
- Pour butter chicken sauce back into pan and add tofu.
- Bring to a simmer, cover and cook 10 to 12 minutes.
- Garnish with cilantro and serve with rice and lime wedges (if desired). Enjoy! Yields 4 large servings or 6 smaller servings.
Notes
Nutrition (estimate only)
Nutrition information is provided as a courtesy and should be considered an estimate only. Ingredients can vary and Girl Heart Food makes no guarantees to the accuracy of this information. It should not be considered a substitute for a professional nutritionist’s advice.
A note on times provided: appliances vary, any prep and/or cook times provided are estimates only.
Tried this recipe?
If you do make this recipe, thank you!! It would mean so much if you could leave a comment below. Love to know how you enjoyed it, and it helps other readers too!