Vegan Palak Paneer (Healthy Palak Tofu)



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. 

vegan palak paneer served with tomatoes and rice in a white bowl

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. 

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:

vegan palak paneer ingredientsvegan palak paneer ingredients

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.

tofu being browned in a pantofu being browned in a pan

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. 

tomatoes being pureed in a food processortomatoes being pureed in a food processor

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.

tomatoes and spices pureed in a bowltomatoes and spices pureed in a bowl

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.

spinach and tomato mixture cooking in a panspinach and tomato mixture cooking in a pan

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. 

tofu and spinach cooking in a pantofu and spinach cooking in a pan

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.

tofu and spinach cooking in a pantofu and spinach cooking in a pan

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. 

vegan palak paneer served with tomatoes and rice in a white bowlvegan palak paneer served with tomatoes and rice in a white bowl

🍽 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

How do I press tofu without a tofu press?

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!

How large should my tofu cubes be for this recipe?

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.

What is asafetida, and can I leave it out?

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. 

vegan palak paneer served with tomatoes and rice in a white bowlvegan palak paneer served with tomatoes and rice in a white bowl

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!

Vegan Palak Paneer

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. 

Prep Time10 minutes

Cook Time30 minutes

Total Time40 minutes

Course: Main Course

Cuisine: Indian, Vegan

Servings: 4 servings

Calories: 183kcal

  • 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.

  • 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. 

Calories: 183kcal | Carbohydrates: 13g | Protein: 11g | Fat: 10g | Saturated Fat: 7g | Sodium: 472mg | Potassium: 582mg | Fiber: 4g | Sugar: 3g



Prosta Defend Sleep Lean Nano Defense Pro Joint Genesis AlphaFuel Pro RetiClear Alpha Surge Joint Genesis ProvaSlim Sparta Max Citrus Burn Vitta Burn Ignitra Blood Armor Mitolyn ManForceX TrimX Titan Transform Sciaticyl Flow Force Max GlucoSwitch Vigortrix GlycoFortin Total Control 24 VigorLong Belly Flush TrImology Neuro Serge NeuroWave DentaVive Dubai Wealth Secret MetaRise Citrus Burn Nervion Munjaboost Regenvia Zensulien SlimLeaf Vitrafoxin Neuro E Prime VisiFlora TerboTest Potent Stream Gluco Extend New Era Protect Male Power XL The Brain Song X The Brain Song Sugar Mutes ProstaDyne Gelatin Weight Loss Pulmo Balance Quick Burn BHB Gelatin Recipe Glycopezil ViriFlow Dental Bright MyoForce Gut Vitali Prodentim IpoeVive Prime Biome Testo Erect Nutra Glow Neuriva NeuroQ Ageless Brain Nervive Nerve Control 911 SciatiCare NeuroPaway LeanZene Virilix Prevagen Vitta Burn Brainergy Sciatic Ease Citrus Burn Citrus Burn Lotto Champ Nervala Gelatin Sculpt Flat Belly Melts VertiAid Brain Savior Chocotide Dentolyn HeroUp GlycoMute Nervalas GL Pro Synaptigen The Last Wish Meta Melt Nitric Boost Ultra MenBalance Pro Nerve Genics OptiPlax