A favorite dish of every Indian household – Dal Makhni. This staple of North Indian cuisine can be found in Indian street-side diners to high-end restaurants. As a North Indian, I have many memories of enjoying this savory dish growing up in India. But after turning vegan, I missed Dal Makhni because it is traditionally cooked with large amounts of butter and heavy cream.  I decided to re-invent this special dish without using the heavy amounts of dairy – the question was, will it still retain that rich, creamy, and flavorful profile? I think you will be amazed at how great dairy-free Dal Makhni can be!

This Dal Makhani is made with only 1 tbsp vegan butter and garnished with vegan creamer. The secret to the great taste is cooking the dal slowly for long periods of time letting the flavors of garlic, ginger, and dry fenugreek leaves permeate the dish. Paired with crispy Laccha Paratha (layered Indian bread) and Tandoori Aloo, I am transported back to the streets of Punjab. Try this vegan version of Dal Makhni and fall in love with Northern India!


Prep time:

Servings: 4


1 cup black urad 

1/4 cup dried kidney beans

3 garlic cloves and 1 inch ginger(grinded into paste)

4 roma romatoes 

2 tablespoon organic tomato paste

1 red dry kashmiri chili

1 teaspoon red chilli powder(degi mirch)

1/2 teaspoon garam masala

1 teaspoon coriander powder

1/2 teaspoon dry fenugreek leaves(kasoori methi)

1 tablespoon vegan earth balance butter or oil

1 tablespoon vegan creamer-nut pod original

salt to taste


  1. Mix the black urad and kidney beans in a bowl. Clean and wash them 3-4 times changing the water until it is no longer looks muddy.
  2. Soak them in a pressure cooker for 6 hours or overnight. Drain the water from the pressure cooker and add 5 cups of fresh water, little salt and 1 dry red chili.
  3. Pressure cook them for 20 minutes after the first whistle and let the pressure drop by itself.(They should be cook enough so you can mush them with the back of a spoon). Once you open the pressure cooker, take out some of the extra lentil water aside in a bowl. The reason for this step is we want to remove some starchy and dark color lentil water out and replace it with fresh water to give it a restaurant style redish brown color.
  4. Heat the butter in a pot, add the crushed ginger-garlic paste. Stir for 4-5 seconds and immediately add the crushed tomatoes and tomato paste, making sure the garlic doesn’t get burnt.Cook on medium flame until the butter/oil oozes out from the sides after 10 minutes.
  5. Add the garam masala,red chili powder, coriander powder, crushed dry fenugreek leaves and salt. Give it a good stir and add the boiled lentils. Add 2 cups fresh water and let the lentils cook on low flame for 25-30 minutes mashing them from the back of the spoon few times. This makes the dal thick and come together quickly.
  6. The dal is done at this time ready to be served or you can add to the slow cooker for 7-8 hours on low setting. The longer this dal cooks, the better it tastes frankly. It is completely optional just make sure you add a cup of extra water, so the lentils doesn't burn from the bottom.
  7. At the time of serving, garnish it with little vegan creamer and extra vegan butter(optional).

Serve it hot with laccha parantha(as displayed in the picture) garlic naan, rice or roti! The lentils have the tendency to thicken up after cooking, simply add little water to thin it out and reheat. The lentils can be completely cool and stored in the freezer for 2 months!