Tofu Masala
Silky tofu cubes simmered in a rich, spiced tomato-onion gravy with a whisper of cream. This vegan twist on the classic paneer masala delivers all the comforting, bold flavors you crave — perfect for scooping up with warm naan or steamed rice.
For 4 servings
- prep · ~10 min
Press and cube the tofu.
Wrap the tofu block in a clean kitchen towel. Place a flat plate on top with a light weight and let it rest for 10 minutes to remove excess moisture. Cut into 1-inch cubes.
TIPPressing tofu is crucial — it helps the cubes hold their shape and fry up beautifully without crumbling. - fry · ~8 min
Pan-fry the tofu until golden.
1.Heat 2 tbsp oil in a non-stick pan over medium heat.2.Add tofu cubes in a single layer and fry for 3-4 minutes.3.Flip carefully with a spatula and fry the other side until golden (another 3-4 minutes).4.Remove with a slotted spoon and set aside on a plate.TIPDon't overcrowd the pan — fry in batches if needed. Crowding makes the tofu steam instead of sear. - temper · ~1 min
Bloom the whole spices in ghee.
1.Heat 1 tbsp ghee in a heavy-bottomed pan or kadai over medium heat.2.Add bay leaf and crushed green cardamom pods.3.Sizzle for 30 seconds until fragrant. - saute · ~8 min
Cook the onion base.
1.Add finely chopped onions to the pan.2.Sauté for 5-7 minutes until golden brown, stirring occasionally.3.Add ginger-garlic paste and slit green chilies.4.Sauté for another minute until the raw smell disappears. - saute · ~8 min
Cook the tomato masala.
1.Add fresh tomato puree to the onion mixture.2.Cook on medium heat, stirring often, for 6-8 minutes until the tomatoes lose their raw tang and the masala thickens.3.The mixture will darken slightly and ghee will start to separate at the edges.TIPCook the tomato puree well — this step is the secret to a rich, non-acidic gravy. Rushing it leaves a sour, raw taste. - saute · ~1 min
Bloom the ground spices.
1.Lower the heat and add coriander powder, cumin powder, turmeric, red chili powder, and garam masala.2.Stir continuously for 45-60 seconds until the spices release their aroma — don't let them burn.TIPKeep the flame low. If the spices burn even a little, the gravy will turn bitter. - simmer · ~10 min
Simmer the gravy with water.
1.Pour in 1 cup of water and stir well to deglaze the pan.2.Add salt and sugar. Mix and bring to a gentle boil.3.Reduce heat, cover, and let the gravy simmer for 8-10 minutes until it thickens slightly and the flavors meld. - simmer · ~5 min
Add tofu and finish the dish.
1.Gently slide the fried tofu cubes into the simmering gravy.2.Crush kasuri methi between your palms and sprinkle it in.3.Stir gently, cover, and simmer for 4-5 minutes so the tofu soaks up the gravy.4.Swirl in fresh cream and turn off the heat.TIPDon't boil after adding cream — it can split. Just a gentle swirl and serve immediately. - garnish
Garnish with coriander leaves and serve hot.
Transfer to a serving bowl, scatter with fresh coriander leaves, and serve alongside naan or steamed rice.
What to keep in mind.
7 tips from the recipe — small details that make a real difference to the final dish.
- 1Press tofu for at least 10 minutes to remove excess water — this prevents crumbling during frying and helps it absorb the gravy better.
- 2Fry tofu in a single layer over medium heat; overcrowding the pan causes steaming instead of searing.
- 3Cook the tomato puree until the ghee visibly separates at the edges — this eliminates raw acidity and deepens the gravy's flavor.
- 4Bloom the ground spices on low heat for no more than 60 seconds to avoid bitterness.
- 5Crush dried fenugreek leaves (kasuri methi) between your palms before adding to release their full aroma.
- 6Stir in cream only after turning off the heat to prevent curdling, and do not re-boil the gravy.
- 7Make ahead: prepare the gravy a day in advance, then fry and add tofu just before serving for freshest texture.
Adapt it for your goals.
Low-oil / oil-free
Skip pan-frying the tofu and add the pressed cubes directly to the simmering gravy; omit the initial 2 tbsp oil and use a non-stick pan for the gravy with just 1 tsp water instead of ghee.
high proteinHigh-protein
Replace half the tofu with steamed chickpeas or add a handful of cooked lentils for an extra protein boost and a heartier texture.
jainJain
Omit garlic, onion, and ginger from the recipe; instead use asafoetida (hing) in the tempering, and replace ginger-garlic paste with a paste made from fresh ginger (if allowed) or a pinch of asafoetida.
veganVegan
The recipe is already vegan if you swap ghee for additional vegetable oil or a vegan butter, and replace fresh cream with cashew cream (soaked cashews blended with water).
extra spicyExtra-spicy
Increase the green chilies to 4 and add ½ tsp Kashmiri red chili powder extra; finish with a pinch of cayenne for those who love serious heat.
Why this is on our healthy list.
High-Quality Plant Protein
Tofu provides all nine essential amino acids, making this dish an excellent source of complete plant protein for muscle repair and satiety.
Rich in Antioxidants
Tomatoes are packed with lycopene, an antioxidant linked to reduced inflammation and heart health; turmeric and cumin add additional anti-inflammatory compounds.
Good Source of Iron
Tofu and cumin both contribute iron; the vitamin C from tomatoes and green chilies enhances absorption.
Low in Saturated Fat
When made with oil instead of ghee, this dish is naturally low in saturated fat, supporting heart-friendly eating.
Contains Digestive Aids
Ginger, cumin, and cardamom are traditional digestive spices that can help reduce bloating and improve nutrient assimilation.
Frequently asked questions
Soft tofu will break apart in the gravy. For best results, use extra-firm tofu, pressed well. If only soft tofu is available, skip frying and gently fold it in at the very end.



