Go Back
+ servings

Vegan Curry with Tofu

Prep Time15 mins
Cook Time25 mins
Total Time40 mins
Servings: 4
Calories: 393kcal
Author: Nisha Vora



  • 2 tablespoons avocado oil or neutral-flavored oil of choice
  • 2 teaspoons cumin seeds
  • 2 teaspoons black mustard seeds (can sub brown mustard seeds)
  • 6 cloves garlic, minced
  • 2- inch piece fresh ginger, minced or grated
  • 1 to 3 serrano peppers, diced*
  • 1 1/2 teaspoons coriander
  • 1 teaspoon ground turmeric
  • 1 teaspoon sweet or hot paprika
  • 1/4 teaspoon ground cinnamon
  • 1/4 teaspoon freshly grated (or ground) nutmeg
  • 15 to 20 dried curry leaves**
  • 1 (13.5-ounce/400 mL) can full-fat coconut milk
  • 1 (8-ounce/227g) can tomato sauce
  • 1 tablespoon organic cane sugar or coconut sugar
  • 1 small cauliflower head, cut into small florets (450 to 500g florets)
  • 1 1/2 teaspoons kosher salt
  • Freshly cracked black pepper to taste
  • 1 (14-ounce/400g) block of extra-firm tofu, previously frozen and defrosted****
  • 2 teaspoons sea salt (or 4 tsp Diamond Crystal kosher salt)
  • 2 teaspoons garam masala
  • 3 cups (45g) baby spinach, chopped
  • ½ to 1 tablespoon freshly squeezed lemon juice
  • 1 cup (16g) cilantro leaves and tender stems, chopped

For Serving

  • Cooked white or brown rice, or flatbread of choice


  • Make the curry. Heat the oil in a 12-inch sauté pan over medium-high heat. Once hot, add the cumin and mustard seeds and cook until popping and cumin seeds start to turn golden, 45 to 60 seconds. Add the garlic, ginger, and serrano peppers, and cook for 90 seconds, stirring frequently*. Add the turmeric, coriander, paprika, cinnamon, nutmeg and curry leaves and cook for 30 seconds.
    *Note: If using a stainless steel pan, this might stick, so arm power and stir almost constantly; add a splash or two of water as needed.
  • Deglaze the pan by pouring in the coconut milk, scraping up any browned bits with a spatula. Add the tomato sauce and sugar and bring to a rapid simmer. Stir occasionally and simmer for 3 minutes.
  • Add the cauliflower, salt, and pepper, and spoon the curry over the cauliflower. Cover the pan with a lid and adjust the heat to maintain a decent simmer. Cook for 12 to 13 minutes, opening the pan to stir occasionally, until thickened a bit and the cauliflower is fork-tender.
  • While the cauliflower is simmering, prep the tofu.
    Bring a large pot of water to a boil.
    Drain the defrosted tofu. Holding it over the sink, squeeze out as much excess water as you can without squishing or breaking it apart. You may want to wrap it in a dish towel, as it can get cold.
    Slice tofu vertically into 4 slabs. Take a few paper towels or clean dish towel and gently press down on the tofu slabs to remove more water.
    Slice each slab in half, lengthwise, so you have 8 vertical slabs. From there, chop the tofu into ¾-inch cubes (about 48 cubes for a 14-ounce block).
  • Boil the tofu. Once the water is boiling, add 2 teaspoons sea salt (or 4 tsp Diamond Crystal kosher salt).
    Use a slotted spoon or spider tool to lower the tofu into the boiling water. Once the water comes back to a boil, boil the tofu for 2 minutes. Scoop out the tofu using the slotted spoon and drain well.
  • Assemble. When the cauliflower is tender, add the garam masala and spinach to the curry. Stir and briefly cook until the spinach is wilted.
    Nestle the boiled tofu into the curry and toss to combine.
    Turn off the heat, stir in the lemon juice and cilantro, and season to taste with salt as needed. Serve over rice or with flatbread (but keep leftovers separate from rice, or the rice will eat up all the sauce).


Tofu Curry, my go-to weeknight dinner
Tofu Curry, my go-to weeknight dinner


* You can buy black mustard seeds at Indian grocery stores or online, like these: https://amzn.to/3TbGXSO. You can also sub with brown mustard seeds. 
**For mild heat, use 1 pepper and remove the membranes. For moderate heat, use 1 pepper with the membranes; for spicy, use 2 peppers with membranes. For spicy!, use 3 peppers. 
** If you have fresh curry leaves, use half the amount, as they have more flavor. For dried curry leaves, I use these: https://amzn.to/3T9p5In
****For the best texture, I strongly recommend using previously frozen and defrosted tofu: it makes it chewier, bouncier, spongier, and meatier. 
To freeze tofu, you can freeze the whole package for at least 8 hours. To defrost, you can: (1) Leave it in the fridge for a day or two; (2) Defrost on the counter for up to 2 hours (or in a bowl of warm water), then in the fridge to finish; (3) if short on time, defrost in the microwave: place tofu in a shallow bowl and microwave on high in 1- or 2-minute intervals (takes 8-12 minutes).