My recipe for vegan palak paneer tastes authentic and delicious without any dairy. I have an important tip on making this restaurant-style. Serve with roti or vegan naan.

Table of Contents
Palak paneer, sometimes called saag paneer, is a mildly spiced north Indian curry of pureed spinach (palak) with creamy cubes of paneer, an Indian cottage cheese. It's a popular offering on Indian restaurant menus alongside other Punjabi dishes like chana masala and baingan bharta.
This is a fairly easy dish to veganize and I can confidently say that if you love palak paneer you will adore my vegan palak paneer. When I first created this recipe and shared it on the blog in 2008, I came up with the idea of using tofu as a substitute for paneer (the use of paneer to replace tofu in Indian recipes has since been widely adopted by other vegan cooks). I also like baking or air-frying the tofu cubes so they are slightly chewy on the outside and creamy inside. This way they contrast nicely with the smooth curry.
This is a simple recipe and it is quite beginner-friendly. You can make it with either fresh or frozen spinach, but using frozen spinach will save you an additional step. My most important tip is to focus more on the flavor of the spinach than the color. This is what they do in restaurants - they cook the spinach long enough, until all of its raw and grassy flavor has disappeared and the spices have fused with the spinach. Made this way, the palak paneer won't have a deep green color but it will look beautiful and taste much better.
I was looking for a good vegan palak paneer recipe and was thrilled to find this one which didn't seem too complicated. And holy cow! It packs so much flavour and cashew cream added just the right amount of richness. Will definitely be making it again soon with frozen spinach! - Xieyu
Would you like to save this recipe?
Recipe card

Vegan Palak Paneer
Equipment
Ingredients
- 14 oz baked tofu (or air-fried tofu, cut into ⅓-inch cubes)
- 2 tablespoon cashews (use pumpkin seeds if nut-free)
- 16 oz frozen spinach (substitute with two large bunches of fresh spinach. See FAQs below for more on this.)
- 1 tablespoon oil
- 4 cloves
- 1-inch piece cinnamon
- 5 green cardamom pods
- 1 teaspoon cumin seeds
- 1 large onion (finely diced)
- 3 cloves garlic (thinly sliced)
- 1 heaping tbsp ginger garlic paste (or use 4 garlic cloves and a 1-inch piece of ginger, crushed together into a paste)
- 3 medium tomatoes (finely diced)
- ½ teaspoon turmeric
- ½ teaspoon cayenne (adjust up or down based on your taste)
- 1 tablespoon ground coriander
- 1 teaspoon ground cumin
- 2 teaspoon garam masala
- 1 tablespoon kasoori methi (dry fenugreek leaves). Optional, but I strongly recommend it.
- Salt to taste
For optional tadka finish
- 1 tablespoon oil
- 1 tablespoon ginger (julienned)
Instructions
- Puree the spinach with ½ cup water. Set aside.
- Make cashew cream by blending the cashews with 3 tablespoons water until very smooth. Set aside.
- Heat oil in a large skillet over medium heat. Add the cloves, cardamom and cinnamon and, when they start to color, add the cumin seeds. Toast until the cumin seeds become aromatic, about 30 seconds.
- Add onions and garlic to the spinach. Add a pinch of salt. Saute for a few minutes until the onions start to turn golden-brown.
- Add the ginger-garlic paste, saute for a couple of minutes, then add the tomatoes.
- Also add the turmeric, cayenne, cumin and coriander powders to the skillet and mix well. Cover and let the tomatoes cook until they are very soft and pulpy.
- Add the kasoori methi, if using, and mix well.
- Add the spinach puree, mix, and let the sauce come to a boil. Lower the heat and continue cooking the spinach for 10 minutes. Add some vegetable stock or water if it looks too thick, but don't add too much liquid at this point-- you want the spinach to cook thoroughly and lose any raw flavor.
- Add the garam masala and stir it in.
- Finally stir in the tofu cubes. Let the sauce simmer a couple of minutes.
- Add the cashew cream, add salt, stir in, and turn off heat.
Make optional tadka
- In a small skillet, heat the oil over medium heat. Add the julienned or grated ginger and saute for a minute, stirring constantly. Carefully pour over the cooked palak paneer. Serve.
Notes
- Saute the onions until they begin to turn golden brown. This develops flavor and the onions will melt into the sauce.
- You can add plain tofu (without baking or air-frying) to the curry if you want a creamier texture.
- To make the palak tofu paneer oil-free, toast the spices and cumin seeds on a dry skillet, then add onions and garlic along with a quarter cup of water. Saute until the onion starts to brown.
Nutrition Information
To print recipe card without images, uncheck "instruction images" after clicking the "print recipe" button.

Frequently asked questions about vegan palak paneer
If using fresh spinach, blanch it first by putting it in boiling water for a minute, then placing the spinach in a bowl of ice. Puree and proceed with rest of the recipe.
Substitute the tofu with non-soy tofu, like chickpea tofu. You can also add potatoes as one would to make saag aloo or aloo palak.
When I first began making my vegan palak paneer I did marinate it first, but soon I realized it was an unnecessary step. The tofu is porous and absorbs the flavors of the spices in the spinach curry beautifully.
Absolutely! Heat oil and add the whole spices. Add one cup of the tomato onion sauce and the pureed spinach. Cook together until spinach no longer tastes raw. Add garam masala and cashew cream.
Use pumpkin seeds or melon seeds instead of cashews. Please don't use coconut milk to make palak paneer. I explain the reason for this in my post on how to veganize Indian recipes with appropriate substitutes, but briefly, coconut milk will give the palak paneer an inauthentic flavor.
Serve the tofu palak paneer with an Indian flatbread like roti, aloo kulcha or vegan naan. You can also serve it with a simple dal alongside basmati rice or jeera pulao.
Store palak tofu paneer in the fridge in an airtight container for up to four days. You can freeze leftovers in a freezer-safe container for up to three months. The tofu will become chewier when frozen. Reheat in a saucepan or microwave. Add water if needed to thin out the gravy and check for salt.
Recipe first published in February 2008. Updated and re-published on April 12, 2024.
Omer
Hey Vaishali, thank you so much for sharing this great recipe!
Do you have a recommendation as to how to make it with your basic tomato-onion masala sauce?
Thanks
Vaishali
Hi Omer, use 1 cup of the sauce. Heat oil and add the whole spices, if you have them, then add the tomato onion sauce and the pureed spinach and cook together until spinach no longer tastes raw. Add garam masala and cashew cream.
Omer
Thanks a lot! I'll try it and let you know
Omer
Thank you again.
It came out great!
I followed these steps:
1) Saute the whole cinnamon, cloves, cardamom and cumin seeds
2) Blend the masala sauce with the spinach together, add to the pan
3) Add kasoori methi, mix well and let it cook
4) Stir in Tofu cubes, let simmer
5) Add garam masala and cashew cream
I hope this helps other readers 🙂
Vaishali
Hi Omer, Thanks for detailing how you made this with the tomato onion sauce. I am sure it will be very helpful to other readers looking to do the same. Happy you enjoyed the recipe.
om kumar
Lovely recipe Vaishali! I have tried many many of your recipes and they all turn out lovely! My kids used to love only restaurant North Indian dishes. Being a South Indian, I could never capture that. But with your recipes, my kids are enjoying home food 😊 Thank you!!