GeneralStovetop

Butter Tofu (Vegan Butter Chicken)

A rich, creamy vegan take on classic butter chicken that uses crispy pan-fried tofu in a spiced tomato-coconut sauce. It's comfort food with deep, mellow spices and a glossy, buttery finish — perfect for weeknights or casual dinner guests.

0.0(0 reviews)
Prep: 20m · Cook: 25m · Total45 mins
DifficultyEasy
Serves4
AuthorTopshelf Recipes
Butter Tofu (Vegan Butter Chicken)

Ingredient Spotlight

Extra-firm tofu (pressed and cubed)

A dense form of tofu made from coagulated soy milk that’s been pressed to remove most moisture so it holds shape and browns well; it comes from East Asian cuisines and is commonly used in stir-fries and braises. It has a very mild, slightly beany flavor and readily absorbs marinades and sauces. Find it in the refrigerated produce/vegetarian section or at Asian markets; if unavailable, substitute firm tofu that’s been well-pressed, tempeh, or seitan for a chewier texture.

Ingredient Spotlight

Tomato puree (or passata)

Passata (tomato purée) is sieved raw or lightly cooked tomatoes—an Italian pantry staple—with a smooth texture and bright, fresh tomato flavor without chunks or added seasonings. It’s thinner than tomato paste and more concentrated than canned crushed tomatoes, giving a clean tomato base for sauces and curries. Look for bottles labeled passata or tomato purée in the canned goods or Italian aisle; you can substitute blended canned tomatoes strained briefly, canned crushed tomatoes, or diluted tomato paste if needed.

Ingredient Spotlight

Garam masala

Garam masala is a warm, aromatic spice blend from the Indian subcontinent typically containing spices like coriander, cumin, cardamom, cinnamon, cloves, and nutmeg; blends vary regionally and by cook. It smells fragrant and sweet-warm rather than hot, and is often added at the end of cooking to perfume a dish. Find it in the spice aisle or at Indian/Asian markets, or substitute a pinch of curry powder in a pinch or make a simple mix of ground cumin, coriander, cinnamon, and a pinch of cloves/cardamom.

🛒 Buy on Amazon

(paid link) — as an Amazon Associate we earn from qualifying purchases.

TR

Author's Note

"This recipe turns humble tofu into a silky, saucy centerpiece that everyone will love — creamy enough for special occasions but quick enough for a weeknight. Pressing the tofu and browning it well gives the best texture contrast with the rich sauce."

Butter Tofu (Vegan Butter Chicken)

Butter Tofu is my weeknight answer to the irresistible comfort of butter chicken — all the glossy, mellow spice and creamy richness, but plant-based and faster. The magic is in texture contrast: extra-firm tofu, pressed and pan-seared until its edges go deep golden, meets a tomato-forward sauce smoothed with full-fat coconut milk and a hit of vegan butter for that silky sheen. A small, well-balanced ground-spice blend—garam masala for warmth, smoked paprika for depth, turmeric for color and a touch of chili for lift—keeps the sauce layered without overwhelming the clean tofu pockets.

This version works because it focuses on technique more than complexity: dry the tofu well, brown it without crowding, bloom the spices in butter-soaked onions, then gently coax creaminess from coconut milk rather than forcing heavy creams. It’s flexible — satisfying for meat-eaters, simple enough for busy cooks, and forgiving for experimenters who want to add roasted cauliflower or quick-pickled onions. Serve it when you want something that feels indulgent but comes together in under an hour and scales easily for casual dinner guests or a cozy two-person night in.

Plan your timing

6:07 pm6:15 pmPress and cube the tofu
6:15 pm6:23 pmPan-fry the tofu until golden
6:23 pm6:31 pmBuild the spiced tomato base
6:31 pm6:39 pmFinish the sauce with coconut milk
6:39 pm6:47 pmCombine tofu and finish
6:47 pm6:55 pmServe
Advertisement

Ingredients

Yield
4

Instructions

Press and cube the tofu

Wrap the block of extra-firm tofu in clean kitchen towels or paper towels and place a weighted plate on top for 15–20 minutes to press out excess water. Unwrap, cut into 1-inch (2.5 cm) cubes, and pat dry — removing moisture is key to getting a crisp exterior.

For this step

  • 14 ozExtra-firm tofu (pressed and cubed)
Press and cube the tofu

Pan-fry the tofu until golden

Heat a large nonstick or cast-iron skillet over medium-high heat and add the neutral oil. Arrange tofu cubes in a single layer and fry without moving for 3–4 minutes, then turn and brown on all sides until deeply golden and slightly crisp, about 8–10 minutes total. Transfer tofu to a plate and set aside.

For this step

  • 2 tbspNeutral oil (vegetable, canola, or sunflower)
Pan-fry the tofu until golden

Build the spiced tomato base

Lower heat to medium and add the vegan butter to the same skillet. Once melted, add the finely chopped onion and cook until soft and translucent, about 5–6 minutes. Stir in the minced garlic and the ground spice blend and cook for 30–60 seconds until fragrant, then pour in the tomato puree and simmer, stirring occasionally, for 6–8 minutes to reduce and concentrate the flavors.

For this step

  • 3 tbspVegan butter
  • 1 mediumMedium yellow onion, finely chopped
  • 3 cloveGarlic, minced
  • 1 cupTomato puree (or passata)
  • 1 tbspGround spice blend (garam masala, smoked paprika, turmeric, chili powder, salt)
Build the spiced tomato base

Finish the sauce with coconut milk

Pour the coconut milk into the tomato mixture and bring to a gentle simmer. Cook 4–6 minutes until the sauce is smooth and slightly thickened; for an extra-silky texture, use an immersion blender to puree the sauce directly in the pan or transfer to a blender and pulse until smooth (careful with hot liquids).

For this step

  • 1 cupFull-fat coconut milk
Finish the sauce with coconut milk

Combine tofu and finish

Return the browned tofu to the sauce, gently spooning it to coat. Simmer 2–3 minutes so the tofu absorbs the sauce; taste and adjust seasoning (salt, a squeeze of lemon, or a pinch of sugar if desired). Stir in most of the chopped cilantro, reserving a little for garnish.

For this step

  • 2 tbspFresh cilantro, chopped (for garnish)
Combine tofu and finish

Serve

Spoon the butter tofu into shallow bowls or a serving dish, garnish with the remaining cilantro, and serve hot with steamed basmati rice, naan, or your favorite grain. Each serving is about 1 serving (about 350g).
Serve

Tips from the kitchen

Press tofu thoroughly

Pressing for at least 15–20 minutes removes water so cubes brown instead of steam; pat them dry again right before frying for the best crust.

Don’t crowd the pan

Cook tofu in a single layer with room between pieces so each side can form a deep golden crust; work in batches if necessary.

Bloom spices in fat

Add the ground-spice blend to the melted vegan butter and softened onions for 30–60 seconds to wake up aromatic oils and avoid gritty raw spice flavors.

Use full-fat coconut milk

Full-fat coconut gives the glossy, buttery mouthfeel this dish needs; thin varieties will taste watery and separate more easily.

Finish with acid

A squeeze of lemon or a teaspoon of vinegar at the end brightens the sauce and balances the richness without changing the creamy texture.

Variations & substitutions

Crispy oven-baked tofu

Toss cubed tofu in a little oil and cornstarch, then bake at 220°C/425°F until golden for an easier hands-off alternative to pan-frying.

Cashew cream swap

For a coconut-free option, blend 3/4 cup soaked cashews with 1/4–1/2 cup water to a smooth cream and stir into the tomato base in place of coconut milk.

Veggie-forward mix

Add roasted cauliflower florets or sautéed spinach and peas to the sauce in step 5 for more texture and bulk without losing the dish’s character.

Smoky char tomato

Roast or char the tomato puree briefly on high heat or over a flame before adding to the pan for a deeper, slightly smoky finish.

Storage & make-ahead

Store leftovers in an airtight container in the refrigerator for up to 3–4 days; the sauce will thicken and the tofu will soften over time. Reheat gently on the stovetop over low heat with a splash of water or coconut milk to loosen the sauce and avoid rubbery tofu; microwave in short bursts, stirring between, if needed. You can freeze the sauce (without tofu) for up to 2 months, then thaw and add freshly browned tofu when reheating for best texture.

What to serve with it

Serve with steamed basmati rice or cumin-scented jeera rice and warm naan or paratha to mop up the glossy sauce; a scatter of chopped cilantro and a lemon wedge add immediate brightness. For drinks, pair with a crisp, off-dry Riesling or a citrusy IPA, and offer a simple cucumber-tomato salad or quick mango chutney to cut the richness.

Frequently asked questions

My tofu turned out soggy — what went wrong?

Most likely it wasn't pressed or patted dry enough, or the pan was overcrowded and the pieces steamed. Press longer, dry cubes thoroughly, and fry in a single layer over medium-high heat to build a crust.

Can I make the sauce ahead?

Yes — the tomato-coconut sauce keeps very well in the fridge for 3–4 days and can be frozen for about 2 months; reheat and add freshly crisped tofu so it keeps its texture.

How do I prevent the coconut milk from splitting?

Bring the sauce to a gentle simmer rather than a hard boil, stir frequently, and finish over low heat; if it looks grainy, a quick blitz with an immersion blender will re-emulsify it.

Can I use silken or firm tofu instead?

Extra-firm is best because it crisps and holds shape; firm tofu can work if pressed well, but silken will fall apart and become too soft for pan-frying.

How can I make this less spicy for kids?

Reduce or omit the chili powder in the spice blend and emphasize smoked paprika and garam masala instead; add a small pinch of sugar or a squeeze of lemon at the end to balance flavors without heat.

Ratings & Reviews

Made this recipe?

Share your thoughts and a photo — be the first to review this recipe.

Ingredients

4 servings
Step 1: Press and cube the tofu
  • Extra-firm tofu (pressed and cubed)14 oz
Step 2: Pan-fry the tofu until golden
  • Neutral oil (vegetable, canola, or sunflower)2 tbsp
Step 3: Build the spiced tomato base
  • Vegan butter3 tbsp
  • Medium yellow onion, finely chopped1 medium
  • Garlic, minced3 clove
  • Tomato puree (or passata)1 cup
  • 🛒 BuyGround spice blend (garam masala, smoked paprika, turmeric, chili powder, salt)1 tbsp
Step 4: Finish the sauce with coconut milk
  • Full-fat coconut milk1 cup
Step 5: Combine tofu and finish
  • Fresh cilantro, chopped (for garnish)2 tbsp

🛒 = paid link — as an Amazon Associate we earn from qualifying purchases.

Nutrition Facts

Per serving: 1 serving (about 350g)

Calories374
Total Fat22g
Saturated Fat12.9g
Trans Fat0g
Polyunsaturated Fat0.5g
Monounsaturated Fat0.9g
Total Carbohydrates38.5g
Dietary Fiber3.9g
Total Sugars26.2g
Protein10.2g

Nutrition values are estimated from USDA ingredient data and may vary based on preparation, brands, and portion sizes. Values are provided for informational purposes only.

Sous-chef
Butter Tofu (Vegan Butter Chicken)

Ask me anything about this recipe — substitutions, scaling, techniques, timing.

Powered by AI · Answers may not always be perfect