Save this recipe!
This simple Vegetarian Butter Chicken makes a cozy weeknight dinner. The creamy sauce is flavorful but not spicy, making it a crowd-pleasing main that the whole family can enjoy. Leftovers keep well in the fridge or freezer, so it's also perfect for meal prep!
In this recipe, oven-baked tofu is the tasty and protein-packed chicken substitute. The silky sauce is made with only a few spices, tomatoes, and a bit of cream and butter (although much less than your favorite takeout option!). The combination is bursting with flavor. Serve with rice and naan for a delicious Indian-inspired meal.
Jump to:
Why you'll love this recipe
- Easy to make: No need to blend the sauce (saves on dishes!). And, no fussy tofu prep required (no need to press the tofu!).
- Minimal spices: There's no need to hunt down hard-to-find ingredients. You may already have everything on hand—and if not, they can be easily found at pretty much every grocery store.
- Vegetarian, not vegan (no coconut!): If you're okay with a bit of dairy, then make our vegetarian butter chicken. Most vegan recipes use coconut milk, which adds a strong coconut flavor that's not typical in a butter chicken curry. Our recipe will remind you of your favorite takeout—minus the chicken!
- Crowd pleasing: Butter chicken is popular for a reason! The creamy, mildly spiced sauce is a hit at the dinner table. Especially when served with rice and naan.
Ingredients (and substitutes)
- Extra-firm tofu: Extra-firm tofu will hold its shape in the creamy sauce—especially after baking in the oven. In this recipe, tearing the tofu into bite-size pieces makes it look like chicken coated in sauce!
- Cream: Adds the creaminess that everyone loves in butter chicken! In this recipe, we lighten things up by using both cream and water. It makes for a creamy and delicious sauce, without being overly heavy.
- Garam Masala: An Indian spice blend that you can buy pre-mixed at the grocery store or make yourself.
- Passata: Typically sold in tall glass jars with a screw top lid. It's made from strained uncooked tomatoes. If you can't find any, use canned crushed tomatoes (or blend canned whole peeled tomatoes until smooth).
Want more tofu recipes? Check out our Crispy Breaded Air Fryer Tofu, Sweet Chili Tofu Bowls, Crispy Tofu Sticks with Honey Mustard, and Spring Roll Salad with Peanut Glazed Tofu recipes.
How to make (step-by-step photos)
This Vegetarian Butter Chicken recipe starts by seasoning the tofu (directly in the pan, to save dishes!). Then, while the tofu bakes in the oven, you cook the sauce. Here are photos of what each step looks like:
Find the recipe card below for the complete recipe, including all ingredients and instructions.
Love Indian spices? Check out our Curry Lentil Salad, Curry Apple Salad with Spiced Chickpeas, and Curry Chickpea Salad Pitas with Apple Slaw recipes.
Recipe video
Watch us make this recipe!
Frequently asked questions
Quickly grating the yellow onion—on the large holes of a box grater—will allow the onion to brown quickly and meld into the sauce. This recipe does not call for blending the sauce after cooking. So, it's important to use grated onion (vs. diced) if you want a smooth sauce in the end.
Instead of passata, you can use an equal amount of canned crushed tomatoes (not tomato paste or tomato sauce). Or, an equal amount of canned diced tomatoes that have been blended until smooth, using a blender.
Yes, this recipe freezes well! Freeze in freezer bags or an airtight freezer-safe container. Let defrost in the fridge overnight. Reheat in a covered pot over low heat.
Love this recipe? Please leave a 5-star 🌟🌟🌟🌟🌟 review below!
📖 Recipe
Vegetarian Butter Chicken
Ingredients
- 12 oz extra-firm tofu
- 4 tablespoons butter, divided
- 4 teaspoons garam masala, divided
- 2 teaspoons cumin, divided
- 1 medium yellow onion, grated (using large holes on box grater, ½ cup tightly packed)
- 4 cloves garlic, finely grated (see note 1)
- 1 tablespoon finely grated fresh ginger (see note 1)
- 1 teaspoon ground turmeric
- 1½ cup passata (see note 2)
- 1 cup water
- ¾ cup whipping cream
- 1 tablespoon granulated sugar (see note 3)
- 1 teaspoon fine sea salt
Instructions
- Prep tofu: Pre-heat oven to 425°F (220°C). Tear tofu into bite-sized pieces. Melt 1 tablespoon of the butter in a large saute pan (see note 4) over medium heat. Add 1 teaspoon of the garam masala and 1 teaspoon of the cumin into the melted butter. Scatter in tofu and gently toss to coat. Spread tofu on a parchment-lined baking sheet. Bake until golden brown, 20 to 25 minutes.
- Cook aromatics: Meanwhile, in the same saute pan (no need to wipe clean), melt the remaining 3 tablespoons butter over medium heat. Add onion and cook, stirring occasionally, until golden and soft, 3 to 5 minutes. Add garlic, ginger, remaining 3 teaspoons garam masala, remaining 1 teaspoon cumin, and turmeric. Cook, stirring continuously, until fragrant, about 1 minute.
- Simmer: Reduce heat to medium-low. Add passata, water, cream, sugar, and salt. Stir to mix. Cover pan with a lid and simmer for 15 minutes for flavors to meld, stirring occasionally.
- Combine: Add baked tofu to the curry. Stir to mix. Simmer uncovered for 5 to 10 minutes, stirring occasionally. Serve hot (see note 5).
Notes
- Garlic & ginger: Finely grated garlic and ginger will release their flavor quickly and meld seamlessly into the sauce. Use a microplane (fine rasp) if you have one, otherwise a garlic press. Alternatively, just finely mince it as small as possible.
- Passata ("strained tomatoes"): Passata is made from strained uncooked tomatoes. It is usually packaged in tall glass jars. If you need to substitute, use crushed tomatoes (not tomato paste or tomato sauce).
- Sugar: Granulated or cane sugar. The sugar helps balance the acidity in the tomatoes. (We tested this recipe both with and without sugar—and found the tiny bit of sugar does improve the overall flavor, although minor).
- Saute pan: The tofu and sauce will be cooked in the same pan (to save on dishes). Use a large saute pan or skillet with a lid. If you don't have a lid, you can cover with a baking sheet.
- Serving suggestions: Serve with steamed rice and/or naan if you'd like! You can garnish with cilantro, green onion, or leave as is.
- Storage & reheating tips: Store in a sealed container and refrigerate for up to 3-4 days. Reheat on a covered pot, over low heat. Can be frozen for up to 3 months.
Josh says
This was my first time cooking an Indian inspired dish where it tasted anything like some of our favorite takeout spots.
bri says
Hi Josh! Hope you had a great weekend:) So happy to hear you gave this vegetarian butter chicken recipe a try...and liked it! Thank you for leaving a review, much appreciated.
Michael says
Made a tripple batch of this as family meal prep for the week and it was delicious! I didn't have a large enough pan so I browned the onions in two separate pans and then combined everything together to simmer. Worked out great.
bri says
Hi Michael - Wow, a triple batch! Good idea browning the onions in separate pans. It can get a bit tricky with big volumes, but it sounds like you totally made it work. Happy you enjoyed the recipe. Thank you so much for taking the time to share!
Tom D says
Second time making this! Really good. Safe to say it's on my family's shortlist for meatless Mondays. Thank you
bri says
Hi Tom! So glad you and your family are enjoying this dish. Hope you have a great week ahead!
Anna says
Made a double batch as meal prep for the week and it was great! Super creamy and the spice mix was very tasty
bri says
Hi Anna! We made this for meal prep last week too! Glad you enjoyed it:) Hope you have a great rest of your day! Thank you for taking the time to leave a review
Sara G says
YUM! My friend told me about this recipe. So tasty. I'm going to try leftovers in a wrap tomorrow.
bri says
Hi Sara! That's so nice of your friend to share the recipe. Please thank them for us! Glad you enjoyed it. Let us know how the wrap goes!
Justin says
Definitely adding this to the rotation, so good!
bri says
Hi Justin! So glad you enjoyed this recipe! Thanks so much for sharing
Kathleen L says
5 stars. More if I could give them. My kids are refusing to eat meat these days so its been a challenge to come up with ideas. They loved this!! Thank you for saving a tired mama!!
bri says
Awh so glad to hear you (and your kids) enjoyed this recipe, Kathleen! If you're looking for other kid-friendly meatless recipes, you might want to check out some of these: Crispy Tofu with Honey Mustard, Vegan Chicken Noodle Soup, and Crispy Avocado Tacos.
Maryann says
Thank you so much for this recipe. Absolutely delicious. My daughter is dairy free so I replaced the butter and cream with a substitute and it works beautifully.
bri says
Thanks for sharing those substitutes Maryann! Glad you and your daughter enjoyed this recipe:) Have a great rest of your week!
Nicole says
First time using passata. I always thought it was like tomato juice when seeing it before in the grocery store. Good flavor.
bri says
Hi Nicole - Haha that's too funny about the tomato juice. Glad you enjoyed passata! Thanks so much for sharing!
Liz says
OMG. So good. I just made this for dinner tonight and even my meat-loving husband was impressed!
bri says
Yay, mission accomplished! Glad this dish was a hit! Thanks so much for sharing, Liz!
Kayla says
We're doing "Meatless Mondays" in our household and this recipe was what I made tonight. Really tasty and family friendly.
bri says
Hi Kayla! Glad to hear your family enjoyed this veggie butter "chicken" recipe. Thank you so much for sharing!
Dennis says
Wowweee. This recipe is so good! Made it for dinner tonight and we both went back for seconds. Will be making this again for sure.
bri says
Hi Dennis! So happy to hear you enjoyed this Vegetarian Butter Chicken recipe. Thanks for taking the time to write in, we really appreciate the feedback!