Vegan Soya Chunk Biryani
Fragrant basmati rice layered with spiced, yogurt-marinated soya chunks, golden fried onions, mint and saffron, then steamed "dum" style in one pot. It is fully vegan, high in protein and tastes rich and festive.
- Prep
- 25 min
- Cook
- 1 hr
- Wait
- 40 min
- Total
- 2 hr 5 min
- Makes
- 4 generous servings (about 8 cups / 1.9 L total)
Steps
Before you start
- Start the rice soaking first. It needs 30 minutes, and you can prep everything else while it soaks.
- Use unsweetened, plain plant yogurt (soy or coconut). Sweetened or vanilla yogurt will spoil the flavor.
- Use a heavy-bottomed pot of 5 quarts (4.7 L) or larger with a tight-fitting lid. A thin pot will scorch the bottom layer during the steaming.
- Warm the plant milk and crumble the saffron into it at the start so the color has time to bloom.
Soak the rice
- Rinse the basmati in a bowl with cold water, swirling gently and draining, 4–5 times until the water is nearly clear.
- Cover with fresh cold water by 1 inch (2.5 cm) and soak for 30 minutes.
- Drain well in a strainer.
- Meanwhile, warm the plant milk, crumble in the saffron and set it aside to bloom.
- Do steps 2–4 while the rice soaks.
+ Show details− Hide details
Ready when: Grains turn opaque white and snap easily when pressed between your fingers
Tip: Don't skip the soak. Unsoaked basmati cooks unevenly and gives short, broken grains.
Boil the soya chunks
- Bring the 4 cups (950 ml) water and ½ tsp salt to a rolling boil in a medium pot.
- Add the dry soya chunks, push them under and boil for 8–10 minutes.
- Drain in a colander, rinse under cold water, then squeeze each chunk firmly between your palms to expel all the water.
- Cut any very large chunks in half.
+ Show details− Hide details
Ready when: Chunks are fully soft and spongy with no hard center when you bite one, and no water drips when squeezed
Tip: Squeezing is essential. Waterlogged chunks can't absorb the marinade and make the biryani soggy.
Marinate the soya
- In a large bowl, whisk the plant yogurt, ginger-garlic paste, chili powder, turmeric, garam masala, lemon juice and 1 tsp salt into a thick paste.
- Add the squeezed soya chunks and toss until every piece is coated.
- Leave to marinate while you fry the onions, at least 20 minutes.
+ Show details− Hide details
Ready when: Chunks are evenly coated in a deep orange-red paste with no dry spots
Fry the onions
- Heat ¼ cup (60 ml) oil in the 5-quart (4.7 L) heavy pot over medium-high heat.
- Add the sliced onions and fry, stirring every minute or so, for 12–15 minutes, lowering the heat to medium once they start to color.
- Cook until deep golden brown.
- Use a slotted spoon to lift out about half of the onions onto a plate lined with paper towels (they crisp as they cool).
- Leave the rest and the oil in the pot.
+ Show details− Hide details
Ready when: Onions are evenly deep golden brown, like toasted caramel, not dark brown or bitter
Tip: Onions keep darkening after leaving the pot, so remove them when they're a shade lighter than you want.
Build the masala
- With the pot over medium heat, add 2 bay leaves, the cinnamon, 4 cardamom pods, 4 cloves and the cumin seeds.
- Stir for 30 seconds until fragrant.
- Add the tomatoes, green chilies and ground coriander and cook, mashing the tomatoes with your spoon, for 6–7 minutes until they collapse into a jammy paste.
- Add the marinated soya with all the marinade, stir well and cook for 6–8 minutes.
- Pour in the ½ cup (120 ml) hot water, scrape up any browned bits, cover and simmer on low for 5 minutes.
- Taste and add a pinch of salt if needed (the rice will absorb it).
- Level the soya in an even layer.
+ Show details− Hide details
Ready when: Oil separates and pools at the edges of a thick, clinging gravy that is not watery
Tip: The gravy should be thick, because the rice will release steam during the dum. A watery base makes mushy rice.
Parboil the rice
- While the masala simmers, bring 8 cups (1.9 L) water to a rolling boil in a large pot with 1 tbsp salt, 1 bay leaf, 2 cardamom pods and 2 cloves.
- Add the drained rice and boil uncovered for 5–6 minutes.
- Test a grain at 5 minutes.
- Drain immediately in a strainer and spread the rice back out so it stops cooking.
+ Show details− Hide details
Ready when: Grains are about 70% cooked: they break easily when pressed but still have a thin, firm white core, and the water tastes pleasantly salty
Tip: Under-cook rather than over-cook. The rice finishes in the steam and will turn mushy if parboiled fully.
Layer the biryani
- Make sure the soya gravy is in an even layer in the pot, off the heat.
- Scatter half of the mint and cilantro over it, then spoon on half of the rice without pressing it down.
- Top with the remaining mint and cilantro and half of the reserved crispy onions.
- Add the rest of the rice in a loose mound, then drizzle the saffron milk in streaks over the top, followed by 1 tbsp oil.
- Scatter the remaining onions on top.
+ Show details− Hide details
Ready when: Rice sits in distinct, fluffy layers with saffron streaks of orange and white visible on top
Tip: Don't stir or pack the layers. Loose rice steams evenly and stays separate.
Steam on dum
- Cover the pot with foil if the lid is loose, then press on the lid firmly.
- Set the pot over high heat for 2 minutes until you see steam escaping at the edge.
- Slide a tawa or heat diffuser under the pot, drop the heat to its lowest setting and cook undisturbed for 20 minutes.
+ Show details− Hide details
Ready when: Steady wisps of fragrant steam escape from the lid edge, and a grain of top rice is fully tender when tested
Tip: Don't lift the lid during the 20 minutes. Escaping steam leaves the rice hard. If you smell burning, turn the heat off at once.
Rest and serve
- Turn off the heat and leave the pot covered for 10 minutes.
- Remove the lid and gently fluff from the edge with a fork or flat spoon, lifting from the bottom so the rice and soya masala mix in streaks without breaking the grains.
- Remove the whole spices if you like.
- Serve hot with cucumber-plant yogurt raita and sliced onion.
+ Show details− Hide details
Ready when: Grains are long, separate and fluffy, with no wet or hard patches
Good to know
Tips
- Use aged basmati if you can. It stays long and separate, while fresh or short-grain rice turns sticky.
- Heat is the main variable in the dum. If your stove runs hot, use both a tawa and a folded kitchen towel under the lid to catch moisture so the bottom layer doesn't scorch.
- For deeper flavor, let the soya marinate for 1–2 hours in the fridge if you have time.
- Dial the heat up or down by changing the green chilies. Remove the seeds for a milder biryani.
Make ahead
"Boil, squeeze and marinate the soya chunks up to 24 hours ahead and refrigerate in a covered container. You can also fry the onions up to 1 day ahead; store them at room temperature in a sealed container. Parboil the rice and layer just before the dum step."
Storage & reheating
Room temperature: up to 2 hours after cooking. Fridge: cool completely and store in an airtight container for up to 3 days. Freezer: up to 2 months in portioned airtight containers; thaw overnight in the fridge. Reheat single portions covered in the microwave for 2–3 minutes with 1 tbsp water sprinkled over, stirring halfway, until steaming hot throughout. You can also reheat in a covered pan over low heat for 6–8 minutes.
Substitutions
- unsweetened plain plant-based yogurt → Dairy yogurt (full-fat, whisked). Makes it vegetarian rather than vegan, with a slightly tangier, creamier gravy. Use the same amount.
- saffron threads → ¼ tsp ground turmeric stirred into the warm milk. Gives similar golden color but not saffron's floral aroma.
- dry soya chunks (large size) → Firm tofu, cut into 1-inch (2.5 cm) cubes and pan-seared (about 14 oz / 400 g). Skip the boiling and squeezing, add to the masala after searing and cook only 3–4 minutes so it doesn't crumble.
- Kashmiri red chili powder → ½ tsp sweet paprika plus ¼ tsp cayenne pepper. Approximates Kashmiri chili's color and moderate heat.
More biryani
See all →Find more like this
- Meal
- Dinner
- Cuisine
- North Indian
- Main ingredient
- Basmati Rice
- Method
- Stovetop
- Quick & Easy
- One-Pot
- Occasion
- Eid