Tofu Palak Spinach Curry
Golden pan-seared tofu simmered in a silky, blended spinach gravy built on onion, garlic, ginger, tomato, coconut milk, and warm cumin, coriander, and turmeric, served over fluffy basmati rice.
Why You'll Love This Recipe
This is a comforting, deeply spiced weeknight dinner for anyone who wants a plant-forward meal that still eats like a full plate. The golden tofu gives you something hearty to bite into, while the blended spinach gravy wraps everything in a smooth, savory sauce. It is a good choice for cooks who want big flavor from a short list of pantry spices, and it scales easily for a family or for batch cooking.
Two techniques, one stacked on the other. Searing the tofu first builds a golden, slightly chewy exterior that holds up in the sauce and adds real texture and browned flavor. Then blooming the cumin, coriander, and turmeric in hot oil before the tomatoes goes in releases their aromatic compounds, so the spices taste round and toasted rather than raw. Blending the wilted spinach into the tomato and aromatic base turns a pile of greens into a glossy, restaurant-smooth gravy, and the coconut milk stirred in at the end softens the spice and adds a gentle richness.
A creamy, spiced gravy with something substantial in it, spooned over a bed of rice. The tofu and spinach make the meal filling and nourishing, the coconut milk gives it a creamy mouthfeel without any dairy, and the basmati soaks up the sauce so nothing is wasted. It is the kind of bowl that feels indulgent while still leaving you comfortable, and it reheats beautifully for lunch the next day.
Ingredients
- 22 oz firm tofu, cubed
- 10 cups fresh spinach
- 1 large onion, diced
- 3/4 cup crushed tomatoes
- 2/3 cup coconut milk
- 5 cloves garlic, minced
- 1 1/2 tbsp grated ginger
- 2 tsp cumin
- 1 1/2 tsp coriander
- 3/4 tsp turmeric
- 3 tbsp olive oil
- 3 1/2 cups cooked basmati rice
- 1/2 tsp salt
Instructions
- Cook the rice: Rinse the basmati rice under cold water until the water runs mostly clear, then combine it with water in a saucepan, bring to a boil, cover, and reduce to a low simmer. Cook until the grains are tender and the water is absorbed, about 15 minutes, then turn off the heat and let it sit covered while you make the curry. Fluff with a fork before serving.
- Prep the tofu and aromatics: Drain the firm tofu and pat it very dry with a towel, since water in the block turns to steam in a hot pan and steamed tofu never browns, then cut it into bite-sized cubes. Dice the onion, mince the garlic, and grate the ginger. Measure out the cumin, coriander, turmeric, and salt so they are ready to go, since the aromatics move quickly once the pan is hot.
- Sear the tofu: Warm the olive oil in a large skillet over medium-high heat. Add the tofu cubes in a single layer and let them sit undisturbed until the underside is golden and releases easily, because tofu lets go of the pan by itself once a crust has formed and tears if you move it early, then turn to brown the other sides, about 8 to 10 minutes total. Transfer the tofu to a plate and set aside.
- Cook the aromatics and spices: In the same skillet with its remaining oil, add the onion and cook over medium heat until soft and translucent, about 5 minutes. Stir in the garlic and ginger and cook until fragrant, about 1 minute, then add the cumin, coriander, and turmeric and stir for about 30 seconds to bloom the spices. Pour in the crushed tomatoes and cook, stirring, for 4 minutes until the mixture darkens and thickens slightly.
- Wilt the spinach and blend: Add the fresh spinach a few handfuls at a time, stirring, and let it wilt down completely, about 3 to 4 minutes, since a whole bag at once cools the pan and sits there instead of collapsing. Transfer the sauce to a blender and blend until smooth, or use an immersion blender directly in the pan, then return the smooth green sauce to the skillet.
- Simmer and serve: Stir the coconut milk and salt into the sauce, then fold in the seared tofu, keeping the heat gentle from here, because coconut milk pushed to a boil splits into oil and grit. Simmer gently over medium-low heat until the tofu is heated through and the gravy is velvety, about 8 minutes. Spoon the curry over the warm basmati rice and serve.
Variations
- Chickpea boost: Fold in drained, rinsed canned chickpeas along with the tofu for extra plant protein and a creamy bite that soaks up the gravy.
- Leafy swap: Trade some or all of the spinach for chopped kale or mustard greens; they wilt a touch slower and blend into a slightly earthier, more robust sauce.
- Extra heat: Add a minced green chili or a pinch of cayenne with the aromatics for a warming kick that plays against the coconut milk.
- Cashew cream finish: Stir in a spoonful of blended soaked cashews at the end for an even silkier, richer gravy; note this adds nuts.
- Hearty potato: Add small cubes of peeled potato to the tomato base and simmer until fork-tender before folding in the tofu, making the dish more filling and stew-like.
Storage & Leftovers
Store leftovers in an airtight container in the refrigerator for up to 4 days. Keep the curry and rice in separate containers if you can, so the rice does not absorb all the sauce and turn mushy. The flavor actually deepens overnight as the spices settle.
To reheat, warm the curry gently in a saucepan over medium-low heat, adding a splash of water or a little extra coconut milk to loosen the gravy back to a silky consistency, since it thickens in the fridge. Stir often and heat just until steaming. A microwave will do. Keep the power low and stir once, or the sauce heats at the rim while the middle stays cold.
To get ahead, make the spinach gravy through the blending step and refrigerate it on its own for up to 3 days, or freeze it for up to 2 months. Then sear fresh tofu and simmer it in the reheated sauce the night you want to eat, so the tofu keeps its texture.
Notes & Tips
- Press for a better sear: The drier the tofu, the more golden it gets. Pat it hard with a towel, or set it under a weighted plate for ten minutes, so the surface browns instead of steaming in its own moisture.
- Let the tofu sit still: Resist stirring the tofu the moment it hits the pan. Give each side time to release naturally from the surface; if it sticks, it simply is not browned yet.
- Bloom, do not burn: Turmeric scorches fast. Once the dry spices go in, keep them moving and add the tomatoes within about thirty seconds so they stay fragrant rather than bitter.
- Fresh over frozen greens: Fresh spinach blends into the brightest green gravy. If you use frozen, thaw and squeeze it very dry first, or the sauce will turn watery.
- Adjust the richness: Taste after the coconut milk goes in. If the spice feels sharp, a little more coconut milk rounds it; if it tastes flat, a squeeze of lemon or an extra pinch of salt wakes it up.
- Double the batch: The gravy freezes well, so make extra and stash half. On a busy night you only need to sear fresh tofu and warm it through in the thawed sauce.
Nutrition & Mindful Eating
- Spinach, coconut milk and tofu make this what it is. The greens blend into a thick sauce, the coconut milk softens their edge and pulls the color from dark toward sage, and the tofu cubes give you something solid to find in every spoonful.
- A large amount of spinach cooks down to a small amount of sauce, which is how so much of it ends up in one bowl, and the iron, folate and lutein it carries come along in that concentrated green.
- Tofu browned before it goes into the sauce keeps a firm skin rather than dissolving, and it soaks up the spice around it while bringing complete plant protein to a dish that is otherwise mostly vegetable.
- Cumin, coriander and turmeric are bloomed in hot oil before anything else, the step that makes the kitchen smell like the dish, and the fat in the coconut milk carries the turmeric curcumin along with it.
- Onion, tomato, garlic and ginger cook down into the base beneath the greens and give the curry its savory depth and warmth, and the basmati rice you spoon it over stays fluffy enough to hold up under a sauce this thick.
- As you eat, notice how the coconut milk rounds off the spinach and where the spices settle on your tongue afterward, and let a bowl like this be worth sitting down for.
Frequently Asked Questions
My gravy came out watery. What happened?
Usually it is excess water from the spinach or tofu. Pat the tofu dry before searing, and if you use frozen or pre-washed spinach, squeeze out the moisture first. You can also simmer the finished curry a few extra minutes uncovered to reduce it.
Do I have to blend the sauce?
Blending gives the signature smooth, velvety texture, but it is optional. If you prefer a more rustic curry with visible pieces of wilted spinach, skip the blender and simply simmer everything together.
Can I use baby spinach instead of mature spinach?
Yes. Baby spinach wilts faster and blends into an especially smooth, mild gravy. Mature spinach has a slightly deeper, earthier flavor; either works well in this dish.
How do I keep the tofu from falling apart in the sauce?
Use firm tofu, sear it until it has a golden crust, and fold it in gently at the end rather than stirring aggressively. Simmering it just until heated through keeps the cubes intact.

