Vegan Palak Paneer
This post may contain affiliate links. As an Amazon Associate, I earn from qualifying purchases. Please read my disclosure.This vegan take on traditional palak paneer swaps out the cheese for crispy tofu, making this Indian delicacy far more accessible and a bit more nutritious. I simmer the tofu in a fragrant spinach and coconut milk sauce loaded with warm spices like cumin, turmeric, and garam masala. It is also 100% plant-based and packed with protein and authentic flavors.

As one of the most beloved traditional dishes in Northern Indian cooking, I just knew my vegan palak paneer would be a hit with my family. If you prefer a more traditional tomato-based curry, you should make my vegan matar paneer instead. The combination of tender tofu, velvety spiced spinach sauce, and warming aromatics creates a seriously nourishing and comforting dish. It is not hard to understand why palak paneer is so popular.
Traditionally, this palak paneer is made with Indian cottage cheese. My husband initially thought I would make it with my vegan cream cheese, but I knew that this dish called for some soft and crispy tofu cubes. Unlike Western cottage cheese, paneer is slightly springy and squeaky when chewed. By comparison, tofu is actually a lot softer. So when my friend from India tried my vegan version for the first time, she was quite delighted by the spongelike texture. Sure, it is not quite as melt-in-your-mouth as paneer, but it is undoubtedly delicious.
👩🏽🍳 Why I Love This Recipe
This vegan palak paneer genuinely surprises people. Not just by how nourishing it is, but also by the way the textures, although slightly different, resemble traditional palak paneer. As a nutritionist, I love that this dish relies heavily on a nutrient-dense ingredient like spinach. Whenever I serve this meal, I know that my family is getting a good dose of potassium, magnesium, iron, and vitamins C, E, and K, along with plant-based protein.
I transform simple ingredients into a meal that tastes as if it came straight out of India, thanks to the cooking method. Pressing and pan-frying the tofu gives it the structure it needs to stay intact in the sauce without falling apart. I temper whole cumin seeds in hot coconut oil before adding any other ingredients, which is a classic Indian technique designed to draw out nutty flavors.
Did you know that palak paneer was used by many Indian parents as a way to trick their kids into eating spinach? Ha! There will always be picky eaters. Funnily enough, I had no real issue getting my kids to eat this dish. But one of my husband’s work colleagues came over for dinner, and I found out too late that he was not excited about spinach.
Luckily, I had plenty of sides to make up a decent meal. As we sat eating and talking, I could tell that he was breathing in the smell of the palak, and my kids encouraged him to try a bit. He finished the small amount on his plate but seemed too shy to ask for more. Ha! A few weeks later, my husband told me that the coworker had asked for the recipe to give to a friend. But we both knew. If you know someone who loves curry but is not the biggest fan of spinach, try this recipe and see if you can change their minds.
Latest Recipe Video!
🥘 Ingredients
This vegan palak paneer stays true to the traditional Indian recipe with many simple and intentional ingredients. This is exactly what I use:

Chopped frozen spinach: I use frozen spinach for speed and convenience, but fresh, finely chopped baby spinach works well too.
Extra firm tofu: Pressed extra firm tofu gives me a crispy exterior when I pan fry it.
Tomatoes: I blend fresh tomatoes into a smooth puree that forms the acidic, savory base.
Fresh ginger: This is added and blended along with my tomatoes for warmth and a subtle sharpness.
Spices: I use coriander, cumin, turmeric, cayenne pepper, garam masala, and asafetida. Together, these spices create the aromatic essence of the curry.
Coconut oil: I use coconut oil to temper my whole spices, creating a solid and flavorful foundation.
Olive oil cooking spray: This coats my skillet when I pan fry my tofu and prevents it from sticking.
Whole wheat flour: I whisk this into the coconut milk to help thicken the sauce and give a coating consistency.
Light coconut milk: Light coconut milk creates a rich and creamy sauce, while being mindful of calories.
Cumin seeds: I temper whole cumin seeds in the hot oil to release their aroma and infuse the entire dish.
🔪 How To Make
This vegan palak paneer comes together in stages, before everything cooks together to create a tasty and nourishing meal. This is how I make it:
Dice and fry tofu: I dice my pressed tofu into large cubes, spray a large pan with olive oil cooking spray, and fry each side over a medium heat until firm and lightly golden. Once complete, I set it aside in a bowl.

Puree tomatoes and ginger: Next, I add the tomatoes and fresh ginger to a food processor and blend until smooth. You could also use an immersion blender.

Combine spices and coconut milk mixture: In a large bowl, I combine the tomato puree with all the spices except for the whole cumin and asafetida. In a separate bowl, I whisk the flour and the coconut milk together until smooth.

Fry whole spices: I heat the coconut oil in a large pan and test the temperature by dropping one seed in. When it pops immediately, the oil is ready. I add the remaining cumin and asafetida.
Add spinach and gravy: After that, I immediately pour in the tomato spice puree and cook it down until it reduces to half its volume. Then I stir in the frozen spinach and salt, and allow everything to cook on low heat for 10 minutes. At this point, you could blend the gravy until smooth or leave it as is.

Add coconut milk mixture and tofu: I pour in the coconut milk mixture and cook on low for another 4-5 minutes, then gently fold in the fried tofu.

Simmer: I let the curry simmer on low for 5-10 minutes to let everything meld together. I serve it warm with sides of my choosing.

💭 Expert Tips
My #1 Secret Tip for this vegan palak paneer recipe is to press the tofu for at least 20-30 minutes. Tofu holds a surprising amount of water, and any excess moisture left inside prevents the surface from browning properly in the pan. A well-pressed tofu cube fries up firm and golden on the outside, and will stay intact when simmered in the sauce.
Other Tips To Keep In Mind:
- Prep spices first: I measure out all my spices before I even turn on the stove. This recipe moves quite quickly once the oil is hot, and having everything ready to go prevents anything from burning.
- Use extra-firm tofu: Silken or regular tofu will fall apart in this dish. Extra firm is the only variety that holds its shape through the pan frying, folding, and simmering stages.
- Keep cuts uniform: I keep my tofu cubes similar in size so that they cook at the same rate, and plate up nicely.
- Blend for a smoother sauce: If my kids are eating this dish, I blend the spinach and tomato mixture into a smooth puree. This results in a silky texture and a green color throughout.
- Manage the heat: If I am cooking for my kids or people who prefer little to no heat, I halve the amount of cayenne spice or omit it entirely.
📖 Variations
I have experimented with this vegan paneer palak in numerous ways, and these are 3 variations I always come back to:
Extra rich version: I swap out the light coconut milk for full-fat coconut cream. This makes the sauce noticeably thicker and richer. My kids adore this super indulgent take.
Fresh herb finish: During the last minute of cooking, I stir in 1/4 cup of finely chopped fresh cilantro and a squeeze of lemon juice. This livens up the dish and adds a lovely brightness, which I love.
Coconut yogurt drizzle: If we are not keeping strictly vegan, I spoon 2 tablespoons of coconut yogurt over each serving just before bringing the bowls to the table. This adds a cool, tangy contrast, which my husband loves, especially if I have added a bit of heat to the curry.

🍽 Serving Suggestions
Palak paneer is best served with something doughy to mop up all the extra sauce and something bright, fresh, slightly acidic, and crunchy on the side. I have served this curry with some of my authentic Guyanese roti and a side of my apple cider vinegar coleslaw. If you plan on making this curry, I highly recommend this combo for an unforgettable dining experience.
I recently made this when I was looking after my friend’s kid, who is used to following a plant-based diet. But she had never had paneer. I served it with some of my vegan flatbread in place of naan, and a side of bright and crunchy indian vegetables. I dished it up, and forgot the flatbread in the kitchen, and when I returned with it, she giggled and said I was wondering where the Panera bread was. She had mixed up paneer with Panera. Ha! Adorable.
🧊 Storing And ♨️ Reheating
Refrigeration: I store leftover palak tofu in an airtight container in the refrigerator for up to 4 days. The flavors deepen, and leftovers taste even better.
Freezing: This recipe is not suitable for freezing as the thawing changes the texture of the tofu.
Reheating: I reheat leftovers in a small saucepan over low to medium heat, stirring gently and adding a splash of coconut milk or water if the sauce has thickened too much.
❓Recipe FAQs
I start by removing the tofu from its packaging, draining the liquid, and wrapping the block firmly in a clean kitchen towel. Then I place it flat on a cutting board or plate and stack something heavy on top, like a heavy pot or cast-iron skillet. I let it sit like that for at least 30 minutes, swapping out the towel if it becomes saturated. If you can leave it to press for longer, then by all means do so!
I cut my cubes to roughly 1×1 inch. This size holds its shape best during frying, folding, and simmering. Cubes that are too small crumble, and cubes that are too large take much longer to brown and feel awkward when eaten.
Asafetida, also sold as hing, is a dried resin spice widely used in traditional Indian cooking. It has a pungent sulfuric aroma in its raw form, but becomes deep and savory, much like garlic and onion, once it hits the hot oil. If you are unable to find it, then it is fine to leave it out.

Love this plant based Indian recipe? Please leave a 5-star rating 🌟 in the recipe below and/or a review in the comment section further down the page!
You can also FOLLOW ME on FACEBOOK, INSTAGRAM, and PINTEREST to see more delicious, healthy, family-friendly food, and if you have any questions, I’m here to help!
🎥 Watch How to Make It
Vegan Palak Paneer
Ingredients
- 1 10oz package chopped frozen spinach
- 1 14-16oz package extra firm tofu
- 2 medium tomatoes
- 1 tsp chopped ginger
- 1½ tsp ground coriander
- ¼ tsp ground cumin
- ½ tsp ground turmeric
- ¼ tsp cayenne pepper
- 2 tsp coconut oil
- ½ tsp garam masala
- ½ tsp cumin seeds
- 1 Pinch of asafetida hing
- ½ tsp salt or to taste
- 2 tbsp whole wheat flour
- 1½ cups light coconut milk
- ½ tomato diced to garnish
Instructions
- Dice your tofu into big cubes. Spray a large pan with olive oil cooking spray. Pan-fry the tofu on each side until it is firm and slightly browned.
- Take the tofu out of the pan, place in a bowl and set aside. Meanwhile, blend the tomatoes and ginger until they come together in a smooth puree.
- Combine the tomato mixture with the coriander powder, garam masala, turmeric, cumin powder and cayenne (if you are making it for your kids – you can leave the cayenne out here and add it in at the end just for you!)
- Mix the whole wheat flour with the coconut milk and set aside.
- Heat coconut oil in a large pan. Test the heat by adding one cumin seed to the oil; if it cracks/pops right away it is ready. Add hing and cumin seed. After cumin seeds pop, add the tomato puree mixture, and let it cook for a few minutes until the tomato puree is about half in volume.
- Add the spinach and salt. Let cook on low for about 10 minutes.
- Add the coconut milk mixture, and let cook on low another 4-5 minutes until everything is combined.
- Add the tofu and fold it gently into the spinach mixture, let simmer for 2-3 minutes. Serve with diced tomatoes, roti, whole wheat tortillas, naan or rice.
Notes
- My #1 Secret Tip for this vegan palak paneer recipe is to press the tofu for at least 20-30 minutes. Tofu holds a surprising amount of water, and any excess moisture left inside prevents the surface from browning properly in the pan. A well-pressed tofu cube fries up firm and golden on the outside, and will stay intact when simmered in the sauce.
- Prep spices first: I measure out all my spices before I even turn on the stove. This recipe moves quite quickly once the oil is hot, and having everything ready to go prevents anything from burning.
- Use extra-firm tofu: Silken or regular tofu will fall apart in this dish. Extra firm is the only variety that holds its shape through the pan frying, folding, and simmering stages.
- Keep cuts uniform: I keep my tofu cubes similar in size so that they cook at the same rate, and plate up nicely.
- Blend for a smoother sauce: If my kids are eating this dish, I blend the spinach and tomato mixture into a smooth puree. This results in a silky texture and a green color throughout.
- Manage the heat: If I am cooking for my kids or people who prefer little to no heat, I halve the amount of cayenne spice or omit it entirely.






I am always looking for new ways to cook with tofu and this looks delicious.
Thanks so much Dannii! I’m sure you will love this recipe!
Me and my husband loves this fragrant and healthy Palak Tofu! We’ll definitely making it again!
Yay!! I’m so happy to hear you liked this recipe Jo! 🙂
Hey, this looks delish. Do you use an 8 ounce, 14 ounce, or 16 ounce package of tofu?
Thanks so much Lisa! I use a 16oz package of tofu!
Looks delicious, trying this out today! Thank you Anjali!
Yay! I’m sure you will love this recipe Shoumi!
What is hing? I’ve never heard of it. If I can’t find it in my local market can I successfully make this recipe without it?
Hi Narcisa! Hing is an Indian spice — it’s used in most Indian recipes 🙂 It’s also called Asafoetida. You can buy it at any Indian grocery store or on Amazon here. But you can make this recipe without it — it just won’t have the same exact flavor as the authentic version (but it will still taste good!) Hope that helps!
I’m happy to see the healthier version of Palak Paneer! I eat only vegetarian but I always found this dish too indulgent-feeling. I love how all the elements work together with the basic spinach and since I’m really curious about the difference, seems like this is the new must-try of the next weekend! Oh, and I admire your food-photography skills! :)) Honestly, if I was cooking, the result never looked so amazing – and definitely not in the pictures! Glad to find inspiration here! 🙂
Thanks so much Petra, I hope you love this recipe when you try it!
wow tofu ! i like tofu, maybe i must try this recipe for experiment with my favourite food tofu. Thank you Anjali.
Great! Let me know how you like it!
That looks so delicious!
Thanks Marie! I’m sure you will love it when you try it!
Thanks! I just listened to your interview with Howard Jacobson. Very cool. This recipe looks great. I was wondering the same thing as Sara G as I read through it. I look forward to giving it a try. Cheers!
Hi David! Thanks so much for stopping by – so glad you liked my interview! I can’t wait for you to try this recipe – and you’ll have to keep me posted on how the coconut milk turns out in it. Thanks again!
I just tried this recipe using frozen spinach tonight. It turned out a bit funny looking and then I looked backed to Manjula’s recipe and saw her suggestion about pureeing the spinach if you are using frozen spinach. I pureed only about 75% of the cooked mixture (tomato mixture, milk mixture, and spinach) to leave some texture in there before adding the tofu. It then turned out wonderfully. Thanks so much for alerting me to the recipe. Thanks also for the suggestion on how to serve it to a lo. My son is 16 months old. Keep up the good work!
Oh great! I’m so glad you liked this recipe and it turned out well! I did see that Manjula suggested pureeing the spinach – I chose not to because I like the chunkier texture. But pureeing the spinach is definitely the more traditional way to go. And yay for serving it to your little one too! 🙂 That’s awesome!
Thank you so much for sharing this absolutely delicious recipe. I am so glad that I came across your blog! I will surely be coming back for some more good recipes.
So glad you liked it! Thanks!
I want to try this recipe & replace the milk with a plant based milk. Would you recommend coconut or almond milk? Thank you!
I’d definitely try coconut milk. Let me know how it turns out!
Looks yummy. Love how you blend the tomato using a vitamix, creates a nice creamy texture.
Thanks! And yes – the texture of the spinach in this dish is super creamy and velvety – which I love!
This sounds so good!! I have been trying to find new ways to eat tofu. My father hates it, but I am trying to eat less meat, this sounds soo good, I am definitely going to make this tonight, cant wait!!
Thank you so much Ellen! I’m sure you will love this when you try it – keep me posted on how it goes!
I was wondering what to cook with tofu when you posted this recipe. Super tasty, healthy, and easy to prepare! This is now my favourite tofu recipe!! 🙂
Woohoo! So happy to hear that Tai!
I recently tried Palak Paneer for the first time at an Indian restaurant, and I fell in love! But I’ve been hoping there’d be a way to make a good lightened up version. This is perfect! Totally making this for dinner tonight! Thanks!
Oh awesome!! I know isn’t Palak Paneer the best? I can’t wait to hear how you like this recipe Krista!