Soya Bean Chunks Curry Recipe: Spiced Tomato Gravy With Protein-Packed Bites

Main Courses

Soya Bean Chunks Curry Recipe: Spiced Tomato Gravy With Protein-Packed Bites

This soya bean chunks curry recipe delivers a hearty, protein-rich dish that rivals traditional meat-based curries—without a single animal product. The secret lies in a balanced spice blend and a rich tomato gravy that transforms simple soya chunks into satisfying, flavorful bites.

I developed this recipe after years of experimenting with plant-based proteins, and it’s now a staple in my rotation for quick yet impressive weeknight dinners.

The beauty of this curry is its versatility—it’s foolproof for beginners but packed with depth for seasoned cooks. The spiced tomato gravy simmers for just 30 minutes, while the soya chunks absorb the aromatic flavors, creating a dish that’s both comforting and nutritious.

Each bite offers a perfect balance of tender texture and bold spices, making it a standout main course.

What sets this recipe apart is the precise spice technique, where whole spices toast until fragrant before being ground fresh for maximum flavor. The result is a curry that’s rich, aromatic, and deeply satisfying—ideal for serving with steamed basmati rice or warm naan.

Whether you’re feeding a family or meal prepping for the week, this dish delivers restaurant-quality results at home.

For those looking to elevate their plant-based meals, this curry proves that protein-packed dishes can be just as flavorful and hearty as their meat-based counterparts. The method is straightforward, but the outcome is anything but basic—every spoonful is a testament to how simple ingredients can create something extraordinary.

Let’s get cooking!

👨‍🍳
Difficulty
Medium
🌿
Category
Vegetarian
🔥
Calories
Med Cal

Ingredients for soya bean chunks curry

Fifteen thoughtfully chosen ingredients transform simple soya chunks into restaurant-quality curry bites.

Ingredient Amount Notes
Soya Bean Chunks 🌱 1 lb High-protein, firm texture preferred
Vegetable Oil 🫒 2 tbsp For sautéing whole spices
Whole Cumin Seeds 🌿 1 tbsp Toasted for aromatic depth
Whole Coriander Seeds 🍃 1 tbsp Toasted for citrusy notes
Fresh Ginger 🧄 ½ cup Finely grated, organic preferred
Canned Crushed Tomatoes 🍅 15 oz San Marzano preferred for sweetness
Garlic Cloves 🧄 6 cloves Minced, fresh preferred
Coconut Milk 🥥 13 ½ oz Full-fat for creaminess
Ground Turmeric 🌶️ 1 tsp Freshly ground preferred
Ground Black Pepper 🌶️ ½ tsp Freshly cracked for heat
Garam Masala 🌶️ 1 tsp Homemade or quality store-bought
Coconut Oil 🫒 1 tbsp For finishing, adds richness
Sea Salt 🧂 1 tsp Diamond Crystal preferred
Fresh Cilantro 🌿 ¼ cup Chopped, for garnish
Lemon Juice 🍋 1 tbsp Freshly squeezed for brightness

The soya bean chunks are the foundation—opt for high-protein, firm-textured varieties from Asian markets or the organic section of well-stocked grocery stores like Whole Foods. Their ability to absorb flavors makes them ideal for this dish. For the spices, Penzeys Spices or Indian grocery stores offer superior quality, particularly for whole spices like cumin and coriander which should be toasted until fragrant before grinding. Fresh ginger and garlic are non-negotiable; their volatile oils are essential for authentic flavor development. The San Marzano crushed tomatoes from Trader Joe's or Italian markets provide the perfect balance of sweetness and acidity without canned aftertaste.

No whole spices? Pre-ground cumin and coriander work at double the amount, though texture will differ. Substitute coconut milk with cashew cream for a lighter option, or light coconut milk if watching calories. Fresh ginger unavailable? Powdered ginger at half the quantity suffices, though it lacks complexity. For the tomatoes, passata creates a smoother base, while tomato paste concentrated to 15 oz works in a pinch. The garam masala can be homemade by blending cinnamon, cardamom, cloves, and black peppercorns or purchased from spice merchants specializing in Indian blends. Always taste as you build the spice base—adjust salt and lemon to preference.

Store the soya chunks in an airtight container in the fridge for up to 5 days or freeze for 3 months. The fresh ginger and garlic keep in the fridge for 1 week when wrapped in damp paper towels. Prepared curry reheats beautifully—gentle heat on the stovetop preserves texture. For meal prep, portion into glass containers with a thin layer of coconut milk on top to prevent browning. Garnish with fresh cilantro just before serving to maintain vibrant color and aroma. The dish maintains peak flavor for 3 days refrigerated or 2 months frozen, making it ideal for batch cooking.

❤️

Why You'll Love This Recipe

  • I’ll be real: this recipe saved my budget during grad school. Soya chunks are cheap, last forever, and turn into a restaurant-worthy dish with just oil and spices. Plus, the leftovers freeze like a dream—just reheat and serve, no fuss. My wallet and my future self thank me every time.
  • No-Chop Required: I swear by this trick—just toss the soya chunks in whole after a quick soak, and let the spices do the work. The cumin and coriander seeds toast up in seconds, filling the kitchen with that warm, earthy aroma while I’m still chopping (or not chopping, because honestly, the ginger can be grated with a spoon if I’m lazy).
  • Umami Bomb: Between us, those soya chunks pack a flavor punch that’s dangerously satisfying. The ginger and toasted spices create this perfect balance—slightly sweet, a little spicy, with that deep, savory richness that makes me reach for seconds without guilt.
  • Meal Prep MVP: This curry tastes even better the next day—yes, really. I make a big batch on Sundays, and by Wednesday, it’s transformed into a cozy lunch with rice or a wrap. The texture holds up, and the flavors meld into something heartier, like a hug in a bowl.

Step-by-step instructions for soya bean chunks curry

Here's a method that balances bold spices with creamy coconut milk for a curry that's rich yet balanced.

1

Toast Whole Spices and Sauté Aromatics

Heat the 2 tablespoons vegetable oil in a heavy-bottomed pot over medium heat. Add the 1 tablespoon whole cumin seeds and 1 tablespoon whole coriander seeds, stirring constantly for 1 minute until they release their deep, toasted aroma and begin to sizzle. The cumin will darken slightly while the coriander maintains its pale hue—this indicates proper toasting.

Immediately add the ½ cup finely grated fresh ginger and 6 cloves minced garlic, cooking for 2 minutes until the raw aroma disappears and the ginger turns golden at the edges. This step develops the curry's aromatic foundation. If the spices begin to smoke excessively, reduce heat slightly to prevent bitterness.

2

Develop the Tomato Base

Pour in the 15 ounces canned crushed tomatoes, stirring to deglaze the pot and incorporate all the toasted spices. Add the 1 teaspoon ground turmeric, ½ teaspoon ground black pepper, and 1 teaspoon sea salt, mixing well. Increase heat to medium-high and simmer uncovered for 10 minutes, stirring occasionally, until the mixture thickens and the oil begins to separate on the surface.

Watch for a deep red color and slightly reduced consistency—this indicates the tomatoes have broken down and released their natural sweetness. The curry should coat the back of a spoon but still maintain a loose, gravy-like texture. If it thickens too quickly, add 1-2 tablespoons water to maintain balance.

3

Incorporate Protein and Coconut Milk

Add the 1 pound soya bean chunks to the tomato mixture, stirring gently to coat them evenly with the spiced sauce. Pour in the 13.5 ounces full-fat coconut milk, stirring again to combine. Bring to a gentle simmer over medium heat and cook uncovered for 15 minutes, stirring occasionally, until the soya bean chunks are tender and the curry has thickened slightly.

You'll notice the coconut milk separates into a creamy layer on top—this is normal. Stir vigorously to re-emulsify before proceeding. The curry should now have a velvety texture with visible protein pieces that hold their shape when pressed gently with a fork.

4

Finish with Garam Masala and Coconut Oil

Remove the pot from heat and stir in the 1 teaspoon garam masala and 1 tablespoon coconut oil. The garam masala will dissolve into the curry, adding its complex warm-spice notes. Return to low heat and simmer gently for 3 minutes to allow the flavors to meld completely.

Taste and adjust seasoning—add more sea salt if needed or a splash of water if the curry is too thick. The final consistency should be rich but still spoonable, with visible protein pieces suspended in a glossy sauce.

5

Brighten and Serve

Stir in the 1 tablespoon freshly squeezed lemon juice, which cuts through the richness and adds a vibrant finish. Remove from heat and let the curry rest for 5 minutes to allow the flavors to settle. Garnish with ¼ cup chopped fresh cilantro just before serving.

The curry should now have a balanced profile: sweet from the tomatoes, creamy from the coconut, with layers of spice and acidity. Serve immediately over steamed basmati rice or with warm naan bread to soak up the flavorful sauce.

👨‍🍳

Pro Tips For Making Soya Bean Chunks Curry

  • Bloom the Spices Low: Start your oil at a gentle simmer—just enough to make the cumin and coriander seeds dance, not burn. I used to blast the heat and ended up with bitter, acrid flavors instead of that warm, toasty aroma. Let them sizzle for 30 seconds max, then drop the heat to medium-low until they’re golden but not browned.
  • Soak the Chunks: Toss your soya bean chunks in warm water for 10 minutes before cooking—it softens them just enough to absorb flavors faster. Skipping this step means they’ll stay stubbornly chewy, no matter how long you simmer. (Yes, even if you’re impatient like me.)
  • Grate the Ginger Fine: Use the smallest holes on your grater or pulse in a food processor until it’s almost paste-like. Lumpy ginger just sits there while everything else cooks down—you’ll end up with uneven texture and missed flavor. A little extra effort here makes the whole curry sing.
  • Simmer, Don’t Boil: Once the chunks are added, keep the heat at a barely bubbling simmer. Boiling will toughen the beans and scatter the spices into the air like confetti. Cover the pot for the first 10 minutes to let the steam work its magic—your future self will notice the difference.

Serving suggestions for this soya bean chunks curry

Rice Pairing Perfection

Steamed jasmine rice or basmati rice is the classic choice, absorbing the rich coconut-tomato sauce beautifully. For extra flair, use long-grain brown rice—its nutty flavor complements the curry's spices.

Cook 1 cup rice to 1.5 cups water, simmer for 15 minutes after boiling, then rest covered for 10 minutes. The grains should be tender but still separate for ideal texture. 💫

Warm Bread Essentials

Freshly baked naan or roti elevates the dish—store-bought naan from the Indian section works in a pinch. For homemade, mix 2 cups flour, 1 tsp yogurt, ½ tsp baking soda, and ½ cup warm water, then cook on a dry skillet until puffed.

Serve with a side of mint chutney for dipping. Alternatively, garlic bread adds a Western twist with its buttery richness.

Cool Contrasts

A simple cucumber-raita balances the heat—blend 1 cup yogurt, ½ cup grated cucumber, ½ tsp roasted cumin, and 1 tbsp lemon juice.

For a crunchy element, serve with quick-pickled red onions (slice ½ red onion thin, soak in ¼ cup vinegar and 1 tsp sugar for 20 minutes). Both add freshness to cut through the creamy sauce.

Garnish Game-Changers

Finish with toasted cashews for crunch—dry-toast ¼ cup cashews in a pan for 2 minutes until golden. Alternatively, a drizzle of tamarind chutney adds tangy depth. For a pop of color, scatter red chili flakes or fresh coriander.

These garnishes not only enhance flavor but also make the dish visually stunning when plating. ✨

Meal Prep Serving

When reheating for meal prep, add 1-2 tbsp water to prevent drying. Serve in wide, shallow bowls to showcase the sauce and protein. Pair with steamed cauliflower rice for a low-carb option or warm flatbread wedges** for easy handling.

Always garnish fresh—cilantro and lemon juice lose potency when stored, so add them right before eating for maximum brightness.

Nutrition facts

Servings 4
Amount Per Serving
Calories 480kcal
% Daily Value *
Total Fat 28g36%
Saturated Fat 20g100%
Cholesterol 0mg0%
Sodium 850mg37%
Total Carbohydrate 32g11%
Dietary Fiber 12g43%
Sugars 10g
Protein 38g76%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I substitute soya bean chunks with other plant-based proteins?

You can use chickpeas (for a heartier texture), tofu cubes (press and pan-fry first), or lentils (cook until tender). For best results, choose firm proteins that hold their shape—like extra-firm tofu or dried chickpeas (soaked overnight). Adjust cooking time based on the protein's density.

2

Why does my curry taste too spicy or bland?

Spice levels depend on how you toast the seeds—toast longer for deeper flavor, shorter for milder heat. For balance, adjust the garam masala (add more for warmth) or lemon juice (brightens flavors). Taste as you go! If it’s bland, boost with ½ tsp extra salt or 1 tsp sugar to enhance the tomatoes.

3

Can I make this curry ahead of time?

Yes! It reheats beautifully. Store in an airtight container for 3 days in the fridge or 2 months frozen. For reheating, add 1-2 tbsp water to prevent drying. Garnish with fresh cilantro and lemon juice just before serving to revive flavors.

4

What’s the secret to getting the soya chunks tender?

Simmer them in the coconut milk sauce for the full 15 minutes—don’t rush! The key is low, gentle heat to avoid toughness. If they’re still firm, add ¼ cup water and cook 5 more minutes. For extra tenderness, soak the chunks in warm water for 10 minutes before cooking.

5

How can I make this curry creamier without coconut milk?

Blend ½ cup cashews with ½ cup water for a rich, dairy-free cream. Alternatively, stir in 2 tbsp Greek yogurt (for a tangy twist) or 1 tbsp tahini for nutty depth. Simmer the sauce longer to thicken naturally—this enhances creaminess without dairy.

★★★★★4.8(11 reviews)
Categories Main Courses