I absolutely love sharing this Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe because it perfectly balances bold, comforting flavors with an easy, approachable cooking method. This dish has become one of my go-to choices when I want something richly satisfying but completely plant-based. The creamy coconut sauce infused with warming spices complements the crispy, golden tofu so beautifully that every bite feels like a little celebration of flavor and texture.
Why You'll Love This Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe
Whenever I make this recipe, the first thing that impresses me is the incredible flavor profile. The spices come together harmoniously, lending warmth and depth without overwhelming the palate. The garam masala, turmeric, and cumin create a fragrant base, while the creamy coconut milk adds a luscious richness that rounds everything out. I find the tomato paste and crushed tomatoes add just the right tang and balance, making it feel indulgent but fresh at the same time.
Besides tasting amazing, this dish is surprisingly simple to prepare. I love that the tofu requires minimal handling—no pressing needed—so the texture stays tender and a little bit chewy, which pairs beautifully with the creamy sauce. Baking the tofu rather than frying keeps everything lighter and less messy. I think this recipe is perfect for a cozy weeknight dinner but elegant enough to serve when friends are over, or even for a special holiday vegan meal. It’s one of those dishes that really stands out on the table.
Ingredients You'll Need
I've kept this recipe straightforward by focusing on essential ingredients that bring the dish to life. Each element contributes something special—whether it's the creamy body of coconut milk, the vibrant spices, or the satisfying texture of the tofu—making this dish beautifully balanced from start to finish.
- Firm or extra-firm tofu (2 x 14-ounce blocks): The star protein that soaks up all the delicious sauce flavors beautifully.
- Garam masala (2 teaspoons total): Adds warmth and complexity; I love its aromatic profile.
- Coconut oil (1-2 tablespoons melted + 2 teaspoons): Gives a subtle richness and helps crisp up the tofu in the oven.
- Salt (½ teaspoon + 1 teaspoon, more to taste): Enhances all the flavors and balances the spice.
- Shallot (½ cup, chopped): Provides a sweet, mild onion flavor that caramelizes nicely.
- Garlic (2 tablespoons, minced): Gives a pungent kick that melds perfectly with the spices.
- Ginger (1 tablespoon, grated or minced): Adds freshness and a subtle spiciness that wakes up the sauce.
- Serrano chili (1, chopped, optional): Perfect for a little heat, but omit if you prefer milder flavors.
- Ground coriander (1 teaspoon): Adds a bright citrusy note to the spice blend.
- Ground cumin (1 teaspoon): Brings earthiness and depth to the sauce.
- Ground turmeric (½ teaspoon): Offers vibrant color and subtle warmth.
- Paprika (1 teaspoon): Contributes smoky sweetness; you can swap for Kashmiri chili powder or cayenne if you want more spice.
- Tomato paste (1 tablespoon): Concentrates the tomato flavor and adds body to the sauce.
- Vegetable broth (½ cup): Keeps the sauce flavorful and balances richness.
- Crushed tomatoes (¾ cup): Fresh or canned, they provide bright acidity and texture.
- Dried fenugreek leaves (1 teaspoon, optional): Adds a unique, slightly sweet herbal note that elevates the sauce.
- Full-fat coconut milk (14-ounce can): Makes the sauce creamy and luscious.
- Fresh lemon juice (to taste): The final touch that brightens and balances the dish.
Directions
Step 1: Drain the tofu well and pat it dry with paper towels. I skip pressing because I want to keep a bit of chewiness in the tofu instead of it becoming too dry. Slice the blocks into half-inch slabs, then tear each slab into bite-sized chunks and place them in a large bowl.
Step 2: Drizzle melted coconut oil over the tofu along with ½ teaspoon salt and 2 teaspoons garam masala. Gently toss everything until the tofu pieces are evenly coated. This light seasoning step starts building flavor right into the tofu itself.
Step 3: Lay the tofu pieces on a baking sheet lined with parchment paper in a single layer. Bake at 425°F for 25 minutes. About halfway through, I like to give them a gentle toss to help them crisp evenly and develop gorgeous golden edges.
Step 4: While the tofu bakes, heat 2 teaspoons coconut oil or vegan ghee in a large heavy-bottomed pot or Dutch oven over medium-high heat. Add chopped shallot, minced garlic, grated ginger, and chopped serrano chili if using. Reduce heat to medium to avoid burning and stir frequently for about 2 minutes, until everything softens and becomes fragrant.
Step 5: Stir in 1 teaspoon each of garam masala, ground coriander, ground cumin, ½ teaspoon turmeric, paprika, and 1 teaspoon salt. Cook for about 1-2 minutes until the spices bloom and release their rich aromas, stirring constantly to prevent sticking.
Step 6: Add the tomato paste, vegetable broth, crushed tomatoes, and dried fenugreek leaves if using, followed by the entire can of coconut milk. Stir well to combine everything into a smooth sauce. Let it simmer gently for 5 to 10 minutes to thicken and deepen in flavor. If you prefer a silky texture, feel free to blend the sauce at this point.
Step 7: Add the baked tofu pieces into the sauce and gently stir. Let everything warm together for a few minutes so the tofu soaks up some sauce flavor.
Step 8: Taste the sauce and adjust seasoning by adding more salt, spices, or a squeeze of fresh lemon juice to brighten the dish. This final step really lets you make it your own.
Step 9: Serve hot over fluffy basmati rice or alongside sautéed baby spinach. Naan or roti is perfect for scooping it all up. Garnish with fresh cilantro and a lemon wedge for a fresh finish.
Servings and Timing
This Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe makes approximately 5 hearty servings. Prep time is about 10 minutes since most ingredients just need chopping and mixing. The tofu bakes for 25 minutes, and simmering the sauce takes another 10 minutes, so total cook time is 35 minutes. Altogether, expect about 45 minutes from start to finish for a delicious, wholesome meal with no resting time necessary.
How to Serve This Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe
I love serving this dish piping hot, right from the stove, to appreciate the full warmth and aroma of those spices. It pairs beautifully with fluffy basmati rice, which soaks up that rich coconut tomato sauce perfectly. For greens, I often add a side of sautéed spinach or steamed veggies like broccoli or green beans to bring color and freshness to the plate. The sauce is so flavorful that simple sides work wonderfully.
For a more festive presentation, I’ll often serve this with warm naan or roti bread to scoop everything up, making the meal feel a little more interactive and fun. I like sprinkling chopped fresh cilantro on top and serving with lemon wedges so everyone can add their preferred amount of brightness. Drizzle a little extra coconut oil before serving if you want an indulgent touch.
As for drinks, a chilled crisp white wine such as Sauvignon Blanc pairs nicely, cutting through the richness. If you prefer non-alcoholic, a sparkling water with a splash of lime or a lightly sweetened iced tea complements the spices well. This dish shines at family dinners, casual get-togethers, or even special occasions where you want an impressive vegan main that everyone will rave about.
Variations
One thing I love about the Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe is how easy it is to customize. If you want a gluten-free meal, this recipe naturally fits since no wheat-based ingredients are involved. Just be sure to check that your veggie broth or stock is gluten-free too. For those avoiding coconut, substituting full-fat cashew cream for the coconut milk works well to maintain richness without the coconut flavor.
If you're craving a different flavor profile, try swapping the garam masala for a curry powder blend or adding a pinch of smoked paprika to introduce a smoky dimension. If you like it spicy, I highly recommend increasing the serrano chili or adding a bit of cayenne, but feel free to keep it mild for a family-friendly version.
For a different texture, sometimes I pan-fry the tofu cubes in coconut oil until crisp instead of baking, which gives a crunchy exterior that's delicious but a bit more hands-on. Additionally, blending the sauce completely makes it ultra smooth and elegant, while leaving it chunky with tomatoes gives it more rustic charm. I like to experiment based on mood and occasion!
Storage and Reheating
Storing Leftovers
I always store leftovers of this Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe in airtight glass containers to keep flavors fresh and prevent moisture buildup. It will keep well in the fridge for up to 4 days. The tofu softens a bit over time, but the sauce stays beautifully thick and flavorful.
Freezing
You can definitely freeze this dish if you want to prepare it ahead of time. I recommend portioning it into freezer-safe containers or heavy-duty freezer bags. Be sure to cool the food completely before freezing to maintain quality. It keeps well up to 2 months. When ready to eat, thaw overnight in the fridge for best results.
Reheating
For reheating, I prefer warming it gently on the stovetop over low heat, stirring occasionally until heated through. This method helps restore the creamy texture and prevents the sauce from separating. Microwaving is an option but can cause the tofu to become a bit rubbery or the sauce to split, so I avoid it when I can. Add a splash of vegetable broth or water as needed to loosen the sauce while reheating.
FAQs
Can I use silken tofu instead of firm or extra-firm tofu?
Silken tofu is much softer and delicate, so it won’t hold its shape during baking and will likely become mushy in this recipe. I recommend sticking with firm or extra-firm tofu to get that nice texture contrast with the creamy sauce.
Is this recipe spicy? Can I adjust the heat?
The recipe has a mild to medium level of spice thanks to the serrano chili and spices like paprika. If you prefer it milder, just omit the chili and use sweet paprika. For more heat, increase the chili amount or add cayenne powder. It’s very adaptable to your spice preference.
Can I make this recipe oil-free or low-fat?
Yes, you can reduce or omit the coconut oil for a lighter version. Baking the tofu without oil will result in less crispiness, but still tasty. You can also use light coconut milk instead of full-fat, though the sauce will be less creamy. Adjust seasoning accordingly to keep flavor balanced.
What can I serve instead of rice or naan?
This vegan butter tofu also pairs wonderfully with quinoa, millet, or cauliflower rice. For a low-carb option, steamed or roasted vegetables like asparagus or zucchini noodles work great to keep it light yet satisfying.
Can I prepare parts of this recipe ahead of time?
Definitely! You can bake the tofu in advance and refrigerate it separately. The sauce can also be made a day ahead — just warm gently before adding tofu to avoid it turning mushy. This makes weeknight meal prep very convenient.
Conclusion
I can’t recommend this Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe enough if you’re craving something packed with flavor yet plant-based and approachable. It’s become one of my favorites for how effortlessly comforting and delicious it is, plus it feels special enough to share with family and friends. Give it a try—you’ll love how the rich, spiced sauce and tender tofu come together to create a meal that’s both nourishing and totally crave-worthy!
Print
Vegan Butter Tofu with Spiced Tomato Coconut Sauce Recipe
- Prep Time: 15 minutes
- Cook Time: 50 minutes
- Total Time: 1 hour 5 minutes
- Yield: 5 servings
- Category: Main Course
- Method: Baking
- Cuisine: Indian-inspired Vegan
- Diet: Vegan
Description
This Vegan Butter Tofu recipe is a rich, creamy, and flavorful plant-based dish inspired by classic Indian butter chicken. It features tender tofu baked to perfection and simmered in a luscious spiced coconut milk sauce infused with garam masala, ginger, garlic, and aromatic herbs. Perfectly balanced with fragrant spices and a hint of heat, this dish is ideal served over basmati rice or with naan for a comforting vegan meal.
Ingredients
Tofu Marinade and Baking
- 2 x 14-ounce blocks firm or extra firm tofu
- 2 teaspoons garam masala
- 1-2 tablespoons coconut oil, melted
- ½ teaspoon salt
Aromatics and Sauce
- 2 teaspoons coconut oil, or ghee
- ½ cup shallot, chopped small
- 2 tablespoons garlic, minced
- 1 tablespoon ginger, grated or minced
- 1 serrano chili, chopped (optional)
- 1 teaspoon garam masala
- 1 teaspoon ground coriander
- 1 teaspoon ground cumin
- ½ teaspoon ground turmeric
- 1 teaspoon paprika (or for spicier: ½ teaspoon Kashmiri chili powder or ¼ teaspoon cayenne)
- 1 teaspoon salt (more to taste)
- 1 tablespoon tomato paste
- ½ cup vegetable broth (or chicken stock)
- ¾ cup crushed tomatoes, canned or fresh with juices
- 1 teaspoon dried fenugreek leaves (optional, but elevates flavor)
- 14-ounce can coconut milk
- fresh lemon juice to taste
Instructions
- Prepare tofu: Drain the tofu and pat it dry with paper towels. To maintain a pleasant texture, skip pressing the tofu. Slice each block into ½-inch slabs, then tear each slab into bite-sized chunks and place them in a large bowl.
- Bake tofu: Drizzle the melted coconut oil over the tofu chunks, then sprinkle with salt and 2 teaspoons garam masala. Toss gently to evenly coat the tofu. Arrange the tofu pieces in a single layer on a lined sheet pan. Bake in a preheated oven at 425°F (220°C) for 25 minutes until the tofu is golden and slightly crisp around the edges.
- Sauté aromatics: Heat 2 teaspoons of coconut oil or ghee in a large heavy-bottom pot or Dutch oven over medium-high heat. Add the chopped shallots, minced garlic, grated ginger, and optional serrano chili. Reduce heat to medium to prevent burning and stir frequently for about 2 minutes, until the mixture becomes fragrant and golden.
- Add spices: Add 1 teaspoon garam masala, ground coriander, cumin, turmeric, paprika, and 1 teaspoon salt to the pot. Stir continuously for 1-2 minutes to allow the spices to bloom and release their flavors.
- Simmer sauce: Stir in the tomato paste, vegetable broth, crushed tomatoes along with their juices, and dried fenugreek leaves if using. Pour in the full can of coconut milk and stir to combine. Let the sauce simmer gently for 5-10 minutes to meld the flavors together. You may choose to blend the sauce at this stage for an ultra-smooth texture.
- Add tofu and finish: Add the baked tofu chunks into the simmering sauce and stir gently to coat. Cook for an additional 2-3 minutes to heat the tofu through and allow flavors to meld.
- Adjust flavor: Taste and adjust seasoning with more salt, spices, or a squeeze of fresh lemon juice to brighten the dish.
- Serve: Serve the vegan butter tofu hot over basmati rice or baby spinach, accompanied by naan or roti. Garnish with fresh cilantro and a wedge of lemon for added freshness and vibrant presentation.
Notes
- Pressing tofu is skipped here to keep a tender, moist texture. For firmer tofu, pressing can be experimented with but may result in drier pieces.
- Using coconut oil keeps the recipe vegan; alternatively, use ghee for a non-vegan option.
- Serrano chili is optional and can be adjusted based on your spice preference.
- Blending the sauce before adding tofu results in a smoother curry but is not mandatory.
- Dried fenugreek leaves add a distinct aroma typical of Indian butter dishes; omit if unavailable.
- For gluten-free, make sure to use gluten-free broth and naan or omit bread accompaniment.

Leave a Reply