Soya Keema is a delightful vegetarian dish crafted from soya granules or chunks, designed to replicate the texture and flavor of minced meat, known as keema in Hindi. This protein-rich dish is a favorite in North Indian cuisine. In this recipe, alongside soya granules, essential ingredients include onions, tomatoes, green chilies, a variety of spices, and green peas. It pairs wonderfully with roti, naan, or rice, making it a wholesome meal.

About Soya Keema Recipe
This Soya Keema recipe features soya granules, a type of textured vegetable protein derived from defatted soya flour. Unlike soya chunks, these granules are smaller and have a finer texture.
Easily found throughout India, soya granules are also referred to as Meal Maker, mock meat, soya nuggets, or nutri nuggets. They serve as a popular meat substitute in various dishes, with Soya Keema being a prime example.
This recipe draws inspiration from my mother’s version, which we have cherished for years. It shares similarities with the Paneer Bhurji Gravy I previously shared.
As the name suggests, Soya Keema is essentially minced soya. The term ‘keema’ in Hindi refers to minced ingredients, traditionally linked to minced meat, while ‘soya’ signifies the granules used in this vegetarian alternative.
This Soya Keema recipe is not a dry dish; it features a rich gravy or curry, making it perfect for pairing with bread, pav (dinner rolls), roti, or paratha.
To prepare, the soya granules must first be hydrated, a quick step that doesn’t take much time. The dish comes together by sautéing the base ingredients to create a flavorful curry.
I like to add green peas, as they are traditionally included in keema recipes, along with a touch of curd (yogurt) to enhance the richness of the gravy.
This Soya Keema recipe also incorporates common ingredients like onions, tomatoes, ginger-garlic paste, green chilies, and aromatic ground spices. Fresh mint leaves are added for a zesty aroma and flavor.
This vegetarian keema is a household favorite, and I believe you will enjoy it just as much. If you appreciate recipes like this, don’t miss out on my healthier and flavorful Vegetable Keema recipe as well.
How to Make Soya Keema
Prepare Soya Granules
1. To hydrate the soya granules, follow the method outlined below or the instructions on the package.
Combine 2 cups of water, a pinch of salt, and ½ cup of soya granules in a saucepan. Mix well.

2. Place the pan on the stovetop. Heat the mixture for 3 to 4 minutes over medium to medium-high heat until the water is hot or reaches a boil.

3. Strain the soya granules in a colander or strainer and rinse them with fresh water a few times.

4. Squeeze out any excess water from the soya granules with your palms or by pressing with a spoon. This step is crucial to prevent the granules from becoming soggy. Set aside.
Alternative Method: You can also boil water, add the soya granules, and turn off the heat. Cover the pan and let it sit for 20 to 30 minutes. Afterward, drain the water, rinse, and squeeze out the excess moisture from the granules.

5. Whisk 3 tablespoons of curd (yogurt) in a small bowl until smooth.

Sauté Ingredients
6. Heat 3 tablespoons of oil (or ghee) in a pan. Lower the heat and add the spices listed below, allowing them to crackle.
- 1 inch cinnamon stick
- 2 green cardamoms, lightly crushed
- 2 cloves, lightly crushed
- 5 to 6 black peppercorns, lightly crushed
- 1 tej patta (bay leaf)

7. Add ½ cup of finely chopped onions.

8. Sauté the onions over low to medium-low heat until they turn golden brown.

9. Add 1 teaspoon of ginger-garlic paste and 1 teaspoon of finely chopped green chilies.

10. Sauté for a few seconds until the raw aroma of the ginger-garlic paste dissipates.

11. Add ½ cup of chopped tomatoes (tightly packed).

12. Mix and begin to sauté, stirring the tomatoes often.

13. Sauté until the tomatoes soften and become pulpy. You will notice the oil separating from the sides when the tomatoes are well cooked.
If the tomatoes start sticking, add a splash of water to deglaze the pan and continue cooking until they become mushy.

14. Next, add the ground spice powders listed below and sauté on low heat for a minute.
- ¼ teaspoon turmeric powder
- 1 teaspoon Kashmiri red chili powder or ½ teaspoon regular red chili powder
- ½ teaspoon cumin powder
- ½ teaspoon coriander powder
- ¼ teaspoon garam masala powder

15. After mixing and sautéing, you will see that the masala mixture becomes glossy and cohesive.

Add Curd
16. Now, turn off the heat and place the pan on the countertop.
Add the 3 tablespoons of whisked curd or yogurt. Quickly mix it in to prevent separation or curdling.

17. Mix thoroughly to achieve a uniform consistency.

18. Place the pan back on low heat and sauté the curd masala mixture, stirring often, for 2 to 3 minutes or until the oil separates.

Make Soya Keema
19. Next, add the prepared soya granules, ½ cup of green peas, 2 tablespoons of chopped mint leaves, and salt to taste.

20. Mix well and add 1 cup of water. Stir to combine evenly.
For a dry or semi-dry consistency, add ½ to ⅔ cup of water and simmer on low to medium-low heat.
Adding 1 cup of water will create a flavorful gravy perfect for soaking up with bread or roti.

21. Cover the pan and simmer on medium-low heat for 10 to 12 minutes or until the peas are tender.

22. Check on the green peas while cooking and add water as needed if the liquids dry up.

23. Finally, add 2 to 3 tablespoons of chopped coriander leaves and mix well.

24. Serve Soya Keema hot or warm with lightly toasted bread, dinner rolls (Pav), roti, naan, or rice.
Garnish with ginger juliennes and a few mint sprigs or chopped coriander leaves, if desired.
Expert Tips
- Adding Soya: Ensure the soya granules are fresh and free from any stale or rancid smell.
- Soya Granules Alternative: If you only have soya chunks, you can use them instead. Soak them in hot water, squeeze out the excess moisture, and pulse them in a food processor to achieve a minced texture.
- Quality Curd & Tomatoes: Since curd is a key ingredient in the gravy, use fresh curd that is not overly sour. The same applies to tomatoes – choose ripe, red, fresh ones that are not excessively tangy.
- Type of Curd or Yogurt: For best results, use full-fat curd or homemade curd made from whole milk. Low-fat or toned curd is more likely to separate during cooking.
- Incorporating Curd: Before adding curd to the sautéed masala, always whisk or beat it well. Additionally, turn off the heat and place the pan on a countertop to slightly reduce the temperature. This helps prevent the curd from separating. Once added, quickly mix the curd to create a smooth, uniform mixture.
- Spice Content: Adjust the spices to suit your taste by increasing or decreasing their quantities as needed.
- Make Healthier Recipe: To make the keema healthier, you can include vegetables like cauliflower, bell peppers, broccoli, carrots, green beans, or other favorites.
- For Extra Umami & Flavor: Adding earthy mushrooms is another great option, as they provide a delicious umami flavor to the dish.
FAQs
Yes, you can. Simply soak them in hot water for about 30 minutes, squeeze out the excess moisture, and pulse them in a food processor to achieve a minced texture similar to granules.
If you don’t want to use curd, you can substitute it with a splash of coconut milk or cashew cream for a creamy texture, or simply omit it for a lighter version.
Yes, green peas are optional and can be omitted. However, they add a pop of color and flavor, mimicking traditional keema recipes.
Yes, Soya Keema can be made ahead of time and stored in an airtight container in the refrigerator for up to 1 day. Reheat it on the stovetop or in a microwave before serving.
Soya Keema pairs well with pav (dinner rolls), bread, roti, paratha, or even steamed rice. If made dry, it can also be used as a filling for sandwiches or wraps.