Vegan Palak Paneer with Tofu

Jump to Recipe
Enjoy gourmet restaurant-style Indian food at home with this Vegan Palak Tofu Paneer! A fragrant, creamy spinach curry made healthier with tofu instead of cheese. An easy yet impressive vegan Indian dinner!
Prep Time: 30 mins
Cook Time: 45 mins
Total Time: 1 hr 15 mins
5 from 51 votes

I don’t think there’s any dish that combines health and indulgence quite like this Vegan Palak Paneer with Tofu. It’s not only packed with healthy spinach and protein from tofu, but it’s also so flavorful and tasty thanks to mix of Indian spices. How bad does that sound?

What is Palak Paneer and is it vegan?

Palak paneer is a popular north Indian dish typically made with a spiced yet mild curry or gravy with spinach (palak) and cubes of soft Indian cheese (paneer). The sauce often contains a bit of heavy cream as well. It’s typically served with white basmati rice or an Indian flatbread, such as roti, or naan. It’s flavorful, aromatic, and a good way to eat a lot of spinach.

But, it’s not vegan (hi cheese, hi heavy cream).

vegan palak paneer with tofu in a silver grey serving bowlHow to Make Vegan Palak Paneer

To replicate the texture of paneer, veganized Indian recipes often rely on tofu, as I do in my Restaurant-Style Malai Kofta. Similarly, in this vegan Palak Paneer recipe, I swap out the paneer for tofu, but I give you two different options for how to make the tofu (more on that in the next section).

And the spinach gravy is just as creamy as the traditional, but it’s thickened with cashews, not milk or cream. You won’t miss the dairy, I promise!

This vegan palak paneer tastes indulgent but is actually very healthy. You’re eating a ton of spinach, there’s a minimal amount of oil, and it’s made with wholesome ingredients. If you do want to add a bit more decadence, feel free to add some full-fat coconut milk or coconut cream into the spinach gravy when you add the tofu.

Watch! How to veganize Palak Paneer

Two ways to prepare the tofu

When I first tested this recipe, I tried it with baked tofu, primarily because I love crispy baked tofu. It was delicious and very flavorful (I tossed the tofu with spices), but as Max remarked, it didn’t taste/feel that much like paneer, which is the soft, slightly chewy Indian cheese typically used in this dish.

vegan palak paneer with crispy baked tofu on top

So, I retested this recipe, using boiled tofu instead. To be honest, I didn’t have high hopes for this method because I figured boiling tofu would be quite sad. But I was wrong! I love being wrong when the result equals delicious food!

Boiling the tofu keeps the tofu soft but brings a chewiness to the tofu, akin to the texture of paneer. Think of it as chewy-yet-soft tofu. And if you generously salt your boiling water, it adds even more chewiness to the tofu!

vegan palak tofu in bowl (boiled tofu)

I think both versions of this Vegan Palak Paneer are delicious, which is why I provide both tofu methods in the recipe. Here’s how to decide which version you want to make.

Use the Boiled Tofu Method if:

  • You want a more authentic-tasting palak paneer where the tofu really mimics the texture of the paneer

  • You want a shorter prep and cook time for the tofu (you don’t need to press the tofu and it takes just 2 minutes to boil)

  • You want to minimize the amount of oil in your cooking (the baked tofu is coated in a bit of oil)

Use the Baked Tofu Method if:

  • You prefer your tofu to be crispy

  • You want two different, distinct textures in this dish (creamy spinach curry + crispy tofu)

  • You want to add extra flavor (the tofu is coated in spices and then baked)

How to press tofu

If you opt for the baked tofu method, you will need to press the tofu to remove all the excess water; otherwise, it won’t crisp up in the oven. Place the tofu on a cutting board lined with paper towels; place more paper towels on top of the tofu and weight them down with a heavy cookbook or a heavy skillet filled with a few cans of beans. Let sit for 20-30 minutes to remove excess water.

baked tofu palak paneer in a bowl with rice and other fixings

Ingredient Spotlight: Spinach (aka Palak)

Palak paneer is typically made with fresh mature spinach. That said, if you can’t find regular spinach, you can substitute baby spinach (though it is more expensive) or frozen spinach. If you use frozen spinach, you don’t need to blanch it because it’s already been blanched or boiled, but you will want to thaw it.

First, wash the spinach thoroughly. Spinach is quite dirty and sandy, so it’s important to rinse it a few times. Otherwise, you’re likely to bite down on some sand, which is never a pleasant experience.

Next, blanch the spinach in boiling water and then immediately submerge it in an ice bath until it has cooled down. The blanching serves a few roles. It softens the spinach, so your sauce is smooth and creamy and doesn’t have raw bits. It also removes the bitter flavor of spinach (mature spinach is quite bitter in contrast to mild baby spinach). And blanching, as opposed to just boiling, also helps retain the spinach’s vibrant green color.

I’ve seen recipes that don’t call for blanching/boiling the spinach, and honestly, it confuses me. I tried just sautéing the spinach once and it tasted *so* bitter that I had to add several spoons of sugar to calm down the bitterness (and I’m not even someone who’s that sensitive to bitter food…I love me some radicchio)!

After blanching, squeeze out as much water as you can from the spinach. I usually let it dry out a bit on a paper towel or clean kitchen towel while I do any other prep work.

Then, make the spinach sauce. Add the blanched spinach to a blender with raw soaked cashews, garlic, ginger, serrano peppers, tomatoes, water, and salt. Yes, this is an incredibly healthy sauce! Blend until creamy and completely smooth. If you’re using a high-powered blender like a Vitamix, you can go easy on the prep work and not do too much chopping, as the blender will do it all for you.

After you cook the aromatics, pour the spinach sauce into the pan and let it cook for about 5 minutes. This helps slightly thicken up the curry, allows the flavors to meld together, and mellows out the somewhat intense grassy flavor of spinach.

Close up shot of finished dish

Tips for making this weeknight-friendly

Work efficiently and multitask! While your cashews are soaking, start on everything else: prep, cut, and cook your tofu; clean and then blanch spinach; chop up the aromatics for the masala and spinach sauce.

To save extra time, as noted above, stick with the boiled tofu method. It doesn’t require you to press the tofu for 20-30 minutes and the boiling takes just 2 minutes. Plus, you can use the same saucepan to boil the tofu and blanch the spinach (fewer dishes to wash!).

If you have a powerful blender, such as a Vitamix, you won’t have as much chopping to do for the spinach sauce because the Vitamix will pulverize all the ingredients for you.

By following these steps and working quickly, you can make this meal in 45 minutes. If you work more slowly or take a break to have an evening glass of wine (always a good thing), it’ll take about an hour.

overhead shot of finished dish

Serving Suggestions

I like to finish this vegan palak paneer with a squeeze of fresh lemon or lime juice—which helps brighten up the cooked spinach flavors—and a garnish of chopped cilantro. If I have coconut yogurt at home, I like to little add just a few spoons of that into the finished dish for a nice tangy balance.

And as mentioned above, if you want to make this dish more indulgent, add a few splashes of full-fat coconut milk or a scoop of coconut cream to the spinach gravy when you add the tofu.

To make this dish a full meal, serve over a bed of white basmati rice (or brown rice) or serve with an Indian flatbread such as paratha, roti, or naan (keep in mind that most store-bought naan breads are not vegan).

baked tofu resting on top of spinach curry

If you give this recipe a try, be sure to tag me on Instagram with your recreations and please comment with your feedback below!

Vegan Palak Paneer with Tofu

5 from 51 votes
Enjoy gourmet restaurant-style Indian food at home with this Vegan Palak Tofu Paneer! A fragrant, creamy spinach curry made healthier with tofu instead of cheese. An easy yet impressive vegan Indian dinner!
Prep Time: 30 mins
Cook Time: 45 mins
Total Time: 1 hr 15 mins
Course: Dinner
Cuisine: Indian
Diet Vegan
Keyword: gluten-free, nut-free, tofu
Serving size: 4



  • 1 (14-ounce or 16-ounce / 400-454g) block of extra firm tofu

For the Baked Tofu Method

  • 4 teaspoons neutral-flavored oil, such as grapeseed oil
  • 1 teaspoon kosher salt
  • 1 teaspoon ground cumin
  • ½ teaspoon garam masala
  • ¼ teaspoon cayenne pepper
  • 1 tablespoon nutritional yeast (optional)

Spinach Sauce*

  • 8-10 ounces (225-285g) spinach, washed well and tough stems removed
  • ½ cup (70g) raw cashews, soaked in boiling water for 1 hour (if your blender isn’t high-powered, I recommend soaking in cool water overnight or for 8 hours)
  • 1 ¼ (300 mL) cups water
  • 2 garlic cloves, peeled but left whole
  • 1.5 inch (~3.5 cm) piece of fresh ginger, peeled and roughly chopped
  • 1 serrano pepper, stem removed (remove seeds and membranes for a mild heat)
  • 2 small tomatoes, roughly chopped
  • ¾ teaspoon kosher salt


  • 1 tablespoon coconut oil, or oil of choice
  • 1 teaspoon whole cumin seeds
  • 1 medium yellow onion, diced
  • 4 cloves garlic, minced
  • ¼ teaspoon ground turmeric
  • 1 teaspoon ground coriander
  • ¾ teaspoon kosher salt
  • Freshly cracked black pepper
  • 1 bay leaf (optional)
  • 1 teaspoon garam masala
  • ½ tablespoon fenugreek leaves, also known as kasoori methi (optional)

For Finishing

  • Freshly squeezed lemon juice or lime juice
  • Chopped cilantro
  • White rice or Indian flatbread such as roti, naan, or paratha


  • Soak the cashews in boiling water. If you’re using a Vitamix-style blender, 20-30 minutes is enough time. Otherwise, soak at least 1 hour. Then drain.
  • Prepare tofu - baking method only. Preheat the oven to 400°F/200°C and line a baking tray with parchment paper. Drain the tofu and press it (“how to press tofu” instructions are in the blog post). Chop the tofu into cubes.
    1. In a bowl, gently toss the tofu cubes with the 4 tsp oil, 1 tsp kosher salt, 1 tsp cumin, 1/2 tsp garam masala, 1/4 tsp cayenne, and 1 TBSP nutritional yeast (if using).
    2. Bake on the prepared tray for 20-25 minutes, or until crispy and browned.
  • Prepare tofu - boiling method only. Bring a large pot of salted water to a boil. Drain the tofu and pat with paper towels to remove excess water. Chop the tofu into cubes.
    Add the cubed tofu to the boiling water and boil for 2 minutes. Use a strainer to remove the tofu from the water and drain immediately. Set aside.
  • Blanch the spinach. Bring a large pot of water to a boil (use the same pot if you boiled the tofu). Meanwhile prepare an ice bath (a large bowl of ice water). Submerge the spinach leaves in the boiling water and blanch for 2 minutes, or until wilted yet still bright green. Immediately transfer to the ice bath to stop cooking. Once the water is cool, squeeze out as much water as you can. Transfer spinach to a clean dish towel to dry out while you prepare any remaining ingredients.
  • Make the spinach sauce. Add the blanched spinach to your blender with the soaked and drained cashews and all remaining Spinach Sauce ingredients. Puree until totally smooth, scraping down the sides as needed.
  • Make the masala. Heat a large deep pan over medium heat with the oil. Once the oil is shimmering, add the cumin seeds and fry for 1 minute, or until a bit darker and very fragrant, tossing frequently. Add the onion and cook for 4-5 minutes, or until translucent. Add the garlic and cook 1-2 minutes until golden. Add the turmeric, coriander, 3/4 teaspoon kosher salt, a black pepper to taste, and bay leaf (if using). Cook for 30 seconds, stirring the spices into the onions.
  • Reduce the heat to medium-low. Pour in the Spinach Sauce and cook for about 5 minutes, until the mixture is thick, stirring occasionally and adding more water if the sauce appears to be drying out.
  • Stir in the garam masala and, if using, crush the fenugreek leaves into the gravy. If using boiled tofu, add that now Stir gently to combine and cook for 2-3 minutes or until the mixture is heated through. Season to taste with salt and pepper and squeeze a little lemon or lime juice on top. If using baked tofu, serve it on top of the spinach curry at the end.
  • Add cilantro to garnish and serve with white rice or Indian flatbread.


*If you have a powerful blender like a Vitamix, you can soak the cashews in boiling water just 20-30 minutes. You can also do very little chopping of the ginger, pepper, and tomatoes and let the blender do most of the work.

Did you make this recipe?

Tag @rainbowplantlife and hashtag it #rainbowplantlife

Leave a Comment & Rating

If you enjoyed this recipe, please consider giving it a star rating along with your comment! It helps others discover my blog and recipes, and your comments always make my day :) Thank you for your support!

Your email address will not be published. Required fields are marked *

Rate this recipe

103 comments on Vegan Palak Paneer with Tofu

  1. Marna

    Would Fenugreek Seed ground work to sprinkle on at the end?

  2. Molly

    This was really good! I was a little skeptical of the boiling tofu part, but I did it and it worked! it was not difficult/high effort but I did end up making a mess of the kitchen. Worth it though! Very delicious.

  3. Lindy

    Absolutely delicious! Worth the effort.

  4. Ryan

    Before going vegan this was my favorite dish! Thank you so much for posting this recipe it was so good.

  5. Hannah Mathew

    the boiled garlic and the soaked cashew trick was a wonderful one! I tweaked the recipe by making it a bit more spicy – doubled the spices. Turned out to be soo delicious!

    check out my Instagram @foodswithh for recipes and tryouts!!

  6. Gabrielle Campagna

    Forgot to rate!

  7. Gabrielle Campagna

    This was absolutely delicious! Just the perfect amount of creaminess and spices. I left out the serrano pepper because my 3 years old doesn’t eat spicy food. He’s usually really picky and he ate it all! Thanks for the recipe!

  8. Maya

    This is Amazing! I’m making it for the second time tonight and doubling the recipe this time. I boiled the tofu and it makes for a really good (and better) texture than if you were to leave the tofu as is!

  9. Lynn Deutsch

    Made tonight. Really yummy. Baked the tofu. Served with naan. Next time I’ll serve with rice. I think the dish needs it.

  10. Susan

    Thank you so much for this receipe! I am absolutely addicted to it! In a pinch I have used a box of defrosted and pressed frozen spinach instead of fresh and it is still marvelous. Also fantastic as a base sauce for a naan pizza, topped with fresh tomato and a little vegan mozarella and baked.

  11. Babs

    I saved this recipe some time ago, but just got around to making it today. I used the baking method, but didn’t spend a lot of time squeezing the water out (just used a tea towel to wrap it in) and didn’t use any oil – just tossed the tofu cubes in the seasoning and baked. It took me a few more minutes to make this up, but now that I have done it once, it’ll come together much quicker next time. I didn’t have any serrano or green chilies, but used a jalapeno as a last minute sub. It’s very tasty! Thanks for the recipe!

  12. Aashish

    Hi Nisha, I made it! It was easy too! I really liked the tip on boiling tofu – it really helps with the texture and makes it very paneer-like. I used half a bag of frozen spinach to make things easier. I also boiled the cashews and that helped as well. I think I will use a thai chili pepper next time for slightly more heat. I removed the seeds and membrane of the serrano and I think a child could handle it. I did use a little less onion and garlic (it’s a religious thing). BTW, if you could figure out an onion and garlic free sauce, I would really appreciate it. As for taste? My wife and mother-in-law will be the judges this evening. My born-in-India wife does not like traditional palak paneer (which is weird) and my MIL is a cooking master, so I’m nervous. As for me, I am pleased with the results. I put 4.4 oz of coconut yogurt (a little container), methi, and lemon juice. Thank you Nisha! I’m going to make more of your recipes in the near future. I’m giving this 5 stars for taste, ease of preparation, and its vegan-ness.

  13. Naomi Fumarola

    I loved this, it was so flavorful and I loved the texture of the tofu a lot in this recipe.
    It was also one of my favorite dishes, when I was working at a Indian Restaurant, so I liked this vegan version a lot.

  14. Jeff

    I made this (boiled tofu version) tonight and, wow! It was delicious! I thought I had enjoyed my last meal of Palak Paneer. Thank you!

  15. Sarah L

    Made this (baked tofu version) last night and it was SO SO Good. I think this is the 4th recipe of yours that I have made and every single one of them has blown it out of the park. My wife thinks I’m a bad cook and I usually get a, “yeah, that was fine, but you overcooked/underseasoned it” response to whatever I make, but this one in particular she said was “incredible” and cleaned the plate! Thank you for putting together wonderful, healthy meals with entertaining (I routinely crack up watching them) videos.

  16. Melissa

    I did the boiled tofu method which was delicious! I also tried a second version with coconut milk instead of cashews, and it turned out great!

  17. Stefanie

    This is one of my absolute favourite dishes and it’s SO easy to make!
    I do it on weeknights in like 20 min (with multitasking). I love that is is healthy and so satisfying.

    Love it!!

  18. Emily Moss

    This was DELICIOUS! We added extra spinach at the end because we love it so much. It had a lot of depth to the flavours and, even though I was in a hurry so I fried my tofu – it had the texture of paneer!!!

  19. Michele G

    I’ve made this several times now & it never disappoints! I always love it for breakfast the next day as the flavors are even better! Serve with some basmati and homemade naan & it’s heaven. I made both mint & tamarind chutney this last time and it complimented it nicely. Thank you Nisha, as always, for your wonderful recipes and great videos! You’re the best!

  20. Jenn

    So thankful to have found this recipe, I don’t miss restaurant palak paneer anymore! Tofu is such a super food, the replacement is pure brilliance!

  21. Chelsea

    Absolutely delicious!! Cant wait to make this again!

  22. Tanya

    This was absolutely delicious…my boyfriend and I loved it so much…he had thirds…lol. Thank you for this wonderful recipe I will definitely be making it again!

  23. Niki

    I used to go to this local Indian restaurant, and my favorite dish there was saag paneer. When I went vegan I was bummed I couldn’t get it anymore. This recipe blows theirs out of the water. This is in the weekly rotation for sure! Thanks!

    1. Nisha

      I’m so flattered you loved this vegan palak paneer so much and that it was a great replacement for your old favorite :) Thanks for sharing, Niki!

  24. Sri

    We made this tonight and it was wonderful- I cooked the sauce for 20 minutes until the ginger garlic paste no longer tasted raw. We lost the beautiful jewel green colour but it was still fresh and bright with lemon. Thank you for these recipes!

  25. Sri Thakkilapati

    We made this tonight and it was wonderful- I cooked the sauce for 20 minutes until the ginger garlic paste no longer tasted raw. We lost the beautiful jewel green colour but it was still fresh and bright with lemon. Thank you for these recipes!

  26. Sneha

    Absolutely fantastic! The flavors are spot on, and I’d even wager to say that this was one of the best palak paneer I’ve had. I used the boiled tofu recipe and even the texture was almost exactly like how paneer tastes. The seasonings ring true to the original dish as well.

  27. danielle

    exactly as beyond delicious as I’ve come to expect from you, Nisha 💙🙏💙 thank you, it’s perfect!

  28. Emm

    Can I freeze the sauce?

  29. Leigh

    Palak paneer is one of my go-to favorites at Indian restaurants, and this vegan version hit the spot! I used the boiled tofu method to replicate the texture of paneer. I had so much fun making (and eating) this recipe. :)

  30. Ruth Horndasch

    So amazingly good😋 I’m a new vegan. I found you on YouTube and I am slowing watching all your videos 😊 Thank you for developing this recipe! I have learned from you how to make tofu and Palak Peneer and I honestly can say this is the best dish with tofu I have ever made ‼️

  31. Katie Hanson

    This was so tasty!! I made the oven version tofu and I will totally make those again on their own for batch cooking meal prep in the future. The gravy like sauce is comforting and delicious! I used one jalapeño in hopes of making it an easier win for my 4 year old. I can’t wait to try it with more heat but just one jalapeño was still so good. This won’t go into my week night favorites as a busy working mom, just more steps and pans than I can do on a busy weeknight but I wish it was! Look forward to making it again on days that aren’t a race to dinner.

  32. Sophia

    CHEF EXPERIENCE: Tried this for the first time, with very limited experience cooking Indian food (but lots of experience indulging in it!). The receipe’s headnotes and how Nisha writes her directions made following simple to follow. I felt set up for success and walking through each of the steps was a breeze.

    FLAVOR: The flavors were beautiful – I shared with three others who independently said that the spice blend, textures and mouth warmth following a few bites was spot on. These people are unabashed in their sharing of opinions :) I was asked to make the dish again and plan to include it in a weekly repertoire of easy-to-make-but-stupidly-delicious dinners!

    Thank you Nisha!

  33. Manal

    So dang good! The best palak paneer ever, even though it had no paneer lol! Love your recipes Nisha.

  34. Arya

    Delicious delicious delicious!

  35. JG

    Another delicious staple dish added to my weekly meals. And it’s so ridiculously easy. It only takes me about 30-40 mins, and it’s very low effort (I do the boiled tofu). So healthy, comforting, and delicious. Thank you for this gem!

  36. Cayla

    This is so good! I’ve made it with both kinds of tofu and I prefer the baked method :)

  37. danielle

    how did I miss this recipe? Can’t wait to make it!

  38. Riki

    This recipe really hits it out of the park. I make it for my (non vegan) family and everyone loves it! Boiling the tofu is so clever and one of my new favorite tofu cooking methods!

  39. Kathryn

    This has become one of my all time favourite recipes! I made some today and it was the best batch I have ever made. Thank you SO much for sharing this recipe–I am so grateful!

  40. Emma

    Can I freeze the spinach sauce?

    1. Kathryn

      I have frozen the sauce (not tofu) before and found it froze well. It wasn’t as strong/spicy but still had delicious flavour

  41. Nicole

    Would raw walnuts substitute appropriately for cashews in a pinch? Thanks!

  42. Giovanna

    Absolutely delicious thank you!!

Development Alchemy + Aim