Instant Pot Vegan Dal Makhani -
Print Recipe
4.67 from 3 votes

Instant Pot Vegan Dal Makhani

An Instant Pot Vegan Dal Makhani that’s creamy, perfectly spiced, and good for you. The prep time for this recipe is under 15 minutes, and you only need to soak the beans for an hour. A soy-free and gluten-free recipe.
Prep Time15 mins
Cook Time45 mins
Total Time1 hr
Course: Main/Dal
Cuisine: gluten-free, Indian, Soy-free, Vegan
Servings: 8 servings
Calories: 69kcal
Author: Vaishali Honawar


  • 1 cup black gram dal or udad dal I used saboot udad, which is whole udad beans with the black skin on, but you can also use the more easily available white udad dal, or the split udad with the black skin on. The skins do add a slightly earthier flavor, so if you want a cleaner tasting dal, you should go with the white one.
  • 1/4 cup kidney beans
  • 1 tsp vegetable oil
  • 1 tsp cumin seeds
  • 2 dry bay leaves
  • 1 medium onion, finely diced
  • 3 cloves garlic, minced
  • 1/2-inch piece ginger, grated or crushed
  • 1 tbsp chopped coriander leaves
  • 1/2 tsp turmeric
  • 1 tsp cayenne pepper or any Indian red chili powder
  • 2 medium tomatoes
  • 2 tsp garam masala powder
  • 2 tbsp kasoori methi (optional, but nice)
  • 2 tbsp raw cashews or almonds blended into a paste with 1/4 cup of water. You can also use cashew yogurt instead (recipe link in notes)
  • Salt and ground black pepper to taste


  • Soak the udad dal and kidney beans together for an hour. Be sure to drain the beans and dal before using.
  • Place the steel liner inside your Instant Pot or electric cooker, and turn on the saute function. Heat the oil and add the cumin and bay leaves. As the cumin starts to darken, add the onion, ginger, garlic and coriander leaves. Add a pinch of salt and ground black pepper and saute for a couple of minutes until the onion becomes soft.
  • Add the tomatoes, turmeric, cayenne, and garam masala and stir to mix. Add the drained, soaked beans and dal along with the cayenne, garam masala and kasoori methi. Stir well to mix. Add 4 cups of water or vegetable stock. Add salt to taste.
  • Cancel the Saute function on the Instant Pot, and click on the lid. 
  • Press the "Beans" function on the Instant Pot which sets it to pressure cook for 30 minutes.
  • Wait until the pressure has dissipated, or, if you're in a hurry, turn the venting knob to let all the steam escape before opening. Be sure you are following manufacturer directions as you work with the Instant Pot or cooker.
  • Stir the dal well. If it appears dry, add some water or stock, and turn the saute function until it heats through. Check salt. Stir in the cashew/almond paste or yogurt. You can also squeeze in a few drops of lemon juice if you want your dal to be tangier.
  • Use a potato masher to mush some of the dal and beans, making it creamier. Or use an immersion blender to blend the dal only slightly (you want some whole beans there and not just a uniform mush). You can also remove a couple of cups of the dal to a regular blender and blend until smooth, then add back to the rest of the dal.
  • Serve hot with rice or roti. Enjoy!


  • You can make this recipe free of added oils by water sauteeing the onions, ginger and garlic in the first step. Use a tablespoon of vegetable stock instead of the oil for best results.
  • See recipe for Cultured Cashew Yogurt here.
  • Recipe for the best Vegetable Stock here.


Calories: 69kcal | Carbohydrates: 11.4g | Protein: 3.2g | Fat: 1.8g | Potassium: 130mg | Fiber: 2.4g | Calcium: 4% | Iron: 6%