dal makhani - restaurant style

Dal Makhani Recipe (Restaurant Style)

By Swasthi on April 28, 2023, Comments, Jump to Recipe

Dal Makhani Recipe with stovetop and instant pot instructions. Dal Makhani is a classic North Indian dish made with whole urad dal, rajma, butter and spices. It is one of the most popular lentil dishes originated in the Punjab region of India and Pakistan. This Punjabi Dal Makhani recipe is a keeper. One bite of this flavorsome lentil goodness, your family & guests will be amazed! I am sure you will love how rich, creamy, flavorful and delicious it tastes!

dal makhani
Punjabi Dal Makhani

About Dal Makhani

Dal makhani is a popular North Indian dish where whole black lentils & red kidney beans are slow cooked with spices, butter & cream. Dhal or Dal refers to lentils and Makhani translates to buttery. Dal Makhani literally means Buttery dal.

Traditionally Dal Makhani is prepared by cooking lentils on wood/coal fire for several hours. This slow cooking for prolonged hours yield a creamy, thick and best tasting buttery dal.

Making a good Dal Makhani is easy & needs only a few ingredients but it does take time as the lentils need to be slow cooked. So this is an amazing dish to make for a weekend or special festive meal.

Serve this Dal Makhani with fluffy Basmati Rice, Jeera Rice, garlic Butter naan, tandoori roti, Chapati or roti.

Ingredients & Substitutes

Lentils – I use black lentils (whole urad dal) and red kidney beans (rajma). For 1 cup urad dal I use ¼ cup rajma. Many people also add a small quantity of chana dal (Bengal gram) for texture. If you prefer you can use 2 tbsp in the recipe or may substitute rajma with chana dal.

Cream – Cooking cream, whipping cream, heavy cream or homemade malai (cream) works well. If using homemade malai, then blend it well in a small blender jar until smooth. Then transfer this to a small cup and stir together a few tbsps of dal makhani. Then pour that to the pot. This way cream will not split.

Kasuri methi or dried fenugreek leaves – A small quantity of kasuri methi makes a huge difference here. However if you do not have you may skip it. There is no substitute.

Dal Makhani served in a Indian kadai

Similar recipes
Kadhi Pakora
Chole recipe
Chana masala
Rajma recipe

How to Make Dal Makhani (Stepwise Photos)

1.Soaking lentils: Add 1 cup urad dal (black lentils) & ¼ cup rajma (red kidney beans) to a large pot and rinse thoroughly a few times. Drain the water and pour 3 to 4 cups fresh water. Soak them for at least 6 to 8 hours. To speed up the soaking process you may pour boiling water and soak for 4 hours.

urad dal & rajma in measuring cups to soak

2.Cooking lentils: After they are soaked well, drain the water and pour 4 cups fresh water. Pressure cook on a medium heat for 10 whistles. It takes about 35 to 40 mins. If using an Instant pot pressure cook for 20 mins. If cooking in a pot add more water as required and cook until they become tender. This is how they look after pressure cooking them.

pressure cooked urad dal and rajma

3.Check if cooked well: When the pressure releases naturally, open the lid and check if the dal is well cooked. Both rajma and urad dal have to be softened. Press down a rajma and few urad dal in between your thumb and fore finger. They should get mashed very well easily. They should not be aldente or even slightly hard.

soft cooked sabut urad dal and rajma for dal makhani

If they are under-cooked, add half cup more hot water and cook for a little longer about 3 to 4 whistles.

While the dal cooks, chop 1 medium onion finely. Make 1 tablespoon of ginger garlic paste. Chop 210 grams of tomatoes (about 1 heaped cup chopped). Puree in a blender. We will need 1 cup tomato puree here. Measure it and keep aside.

Make Masala

4.Heat a heavy bottom pot. Add 1½ tablespoon butter and 1 tablespoon ghee. If using whole spices (optional), add 1 bay leaf, 1 black cardamom and 2 green cardamoms. Saute them for half a minute. Then add 1 medium onion finely chopped. Saute until golden or light brown.

sauteing onions in butter to make dal makhani

5.Then stir in 1 tablespoon ginger garlic paste. Saute for 1 minute until the raw smell disappears.

sauteing ginger garlic paste

6.Next add 1 cup tomato puree (210 grams) and saute for a while.

adding pureed tomatoes to make dal makhani

7.Stir in 1 teaspoon salt, ¾ to 1½ teaspoon red chilli powder and 1 teaspoon garam masala. Adjust the chilli powder to suit your taste. I use 1½ teaspoon kashmiri red chilli powder. If you are using hot chilli powder then cut down . I used this punjabi garam masala. Please ensure you use a good one.

adding spice powders to make makhani  masala

8.Saute until the masala cooks well and turns thick. The masala begins to smell good when done.

thick onion tomato masala for dal makhani

9.Mash the cooked lentils slightly and transfer to the pot along with the stock. Stir well and add 1 cup hot boiling water.

cooked rajma and urad dal in pot

Slow Cook Dal

10.Stir and continue to cook on the lowest possible heat stirring often to avoid burning. After 60 mins, you will need to add another half cup hot water each time and cook until the dal thickens. I add about 2 cups water in total (1 + ½ + ½).

adding more water to cook dal makhani

11.Continue to cook on a low flame for a total of 80 mins stirring every now and then to prevent the dal sticking at the bottom.

slow cooking dal makhani in a white pot

12.Taste the dal makhani. Add more salt as needed. Take ½ teaspoon kasuri methi (dried fenugreek leaves) and crush it in between your palms. Then add it. This brings out the flavor.

adding kasuri methi

13. Stir in ¼ cup cream and continue to cook for another 10 mins. If you are making ahead for later use, you may add cream, butter and kasuri methi when you reheat it. So just make the dal makhani without all of the 3, cool and refrigerate or freeze. When you reheat add all of them.

adding cream

14.This was the consistency I got after 90 mins of total cooking. Thick, creamy & flavorful. Then stir in 1½ tablespoon butter. Turn off the heat.

adding butter

Smoke Dal Makhani (Optional)

Please avoid this if you are a novice cook. Dal makhani tastes good even without this step.

Place a tall steel cup or bowl in the center of the pot. Ensure it doesn’t get submerged in the dal. Hold a piece of wood coal with a tong over direct fire. For extra safety use a stove lighter or a candle instead of a larger source of fire.

After a few minutes, the coal will turn red & hot. Then carefully place it inside the cup and pour ¼ teaspoon of ghee. You will immediately see fumes emitted by the coal. Cover the pot immediately and leave for 3 to 4 mins.

smoking dal makhani with a wood coal

You may repeat pouring another ¼ teaspoon ghee to smoke for longer. Smoking too long will leave a very strong flavor so 3 to 4 mins is good enough for our taste.

Dal makhani goes very well with Indian breads like butter naan, roti, tandoori roti and even with jeera rice or plain Basmati Rice. Garnish dal makhani with cream or butter before serving.

Dal Makhani Recipe

Pro Tips

Soak black lentils and rajma for at least 8 hours. Well soaked lentils cook up to a creamy texture which is very important to make a delicious dal makhani. To speed up the soaking process, you may soak them in boiling hot water for 4 hours.

Precook the lentils well before adding them to the makhani masala. Even slightly undercooked dal will not work well here.

Butter is the key ingredient to make a flavorful dal makhani. Be generous & use a good amount of butter. In India, cultured butter is used which actually brings an amazing flavor. You can also use the regular butter like the way I did.

But be generous & add a good amount of it. If you are on a low fat diet, cut down your portion size instead of making a low fat dal makhani.

I prefer to use half butter and half ghee for cooking the masala as using only butter burns quickly. You may use one for the other.

Slow cooking lentils on a lowest heat brings out the best flavors. Dal makhani served in restaurants is so much flavorful as the lentils are cooked overnight or whole day on slow fire.

Without simmering you won’t really get the essential flavors in your dal makhani. I suggest simmering for at least 90 mins after adding the cooked lentils to the tempering or masala.

More Tips

Spices are used in minimum quantities here to keep the flavor of slow cooked black lentils dominant. Most standard Indian restaurants use whole spices like bay leaf, black cardamoms & green cardamoms especially in the tempering.

These spices make a huge difference as they release a unique aroma to the dal when slow cooked for several hours. However you may use either whole spices or ground spices or a mix of both. More in the recipe notes.

Smoking dal makhani – Traditionally made dish is cooked on coal fire for long hours which naturally imparts a smoky aroma to the dish. To some extent the smoky flavor can be recreated at home by smoking the final dish. This step is optional. I have shown it in detail in the video you may take a look.

If you prefer to smoke your dal makhani, ensure you use wood coal that has no additives or fuel added to it. Many people also add liquid smoke to the dish to get that strong flavor.


What are the ingredients of dal makhani?

Dal makhani is made with whole black lentils, unsalted butter, spices, tomatoes, onions, herbs & cream.

Which dal is used in dal makhani?

Sabut urad dal is used in dal makhani. It is also known as black lentils or black gram.

How to make dal makhani without onion?

Just skip the onions and follow the recipe as is. There will be no change in the taste.

Can I skip spices?

Though the major flavors come from slow cooking the lentils, a small quantity of whole or ground spices do elevate the flavors of the dish. So for best flavors, use the spices as mentioned.

How to freeze dal makhani?

For best flavors, cool it immediately, transfer to smaller freezer safe glass bowls & freeze within 2 hours of cooking. This way the flavors are retained to a maximum extent. When you prefer to use, thaw it in the fridge overnight or for 10 to 12 hours.

How to reheat?

To reheat, transfer to a pot and cook until bubbling & very hot. If needed pour little water. Alternately transfer to a steel bowl and reheat in instant pot (PIP) on a high pressure for 3 to 4 mins. I do not add any water for reheating in the IP.

How to double the recipe?
To double this recipe, double all the ingredients. Pressure cook the lentils for the same amount of time. I slow cook the dal makhani for longer than 2 hours after adding the cooked lentils to the masala.

Related Recipes

Recipe Card

dal makhani recipe

Dal Makhani Recipe (Restaurant Style)

Dal makhani is a delicious, rich & creamy dish made with black lentils, spices, butter and cream. Instructions included for stovetop and instant pot.
Print Recipe Pin Recipe
Jump to Comments

For best results follow the step-by-step photos above the recipe card

Prep Time10 minutes
Cook Time2 hours
Soaking time8 hours
Total Time10 hours 10 minutes

Ingredients (US cup = 240ml )

To Pressure Cook

  • 1 cup whole black lentil (200 grams black gram – whole urad dal)
  • ¼ cup rajma (red kidney beans) (optional)
  • 4 cups water for pressure cooking – more for pot

To Temper/ Masala

  • 3 tablespoons unsalted butter (divided – 1 ½ tbsp + 1 ½ tbsp)
  • 1 tablespoon ghee
  • 1 medium onion finely chopped (65 grams)
  • 1 tablespoon ginger garlic paste
  • 1 cup tomato puree (210 grams)
  • 2 teaspoons salt (adjust to taste)
  • ¾ to 1½ teaspoons red chilli powder (adjust to taste) (I use 1½)
  • 1 teaspoon garam masala (use flavorful one)
  • 2 cups water (preferably boiling hot)
  • ½ teaspoon kasuri methi (dried fenugreek leaves) (optional)
  • ¼ cup cream (more for garnish, heavy cream, whipping cream)

Whole Spices (optional)

  • 1 bay leaf (optional)
  • 2 green cardamoms (optional)
  • 1 black cardamom (optional)



  • Add urad dal and rajma to a large pot and rinse them well a few times. Drain the water and soak them in 3 to 4 cups of water for 7 to 8 hours. To reduce the soaking time, you may soak them in boiling hot water for 4 to 5 hours.
  • Later drain the water and rinse them well.
  • Pour 4 cups fresh water and pressure cook for 10 whistles on a medium heat. You can also cook in a pot until soft and tender adding more water whenever needed. If cooking in instant pot, pressure cook on high pressure for 20 mins.
  • Both urad dal and rajma must cook to very soft. When mashed with a spoon the dal and rajma must be soft and get mashed well easily. If not then pour another half cup hot water and continue to cook for another 3 to 4 whistles on a medium heat.

How to make Dal Makhani

  • Heat a heavy bottom pot with butter & ghee. If using whole spices, add them and saute for half a minute. Then add onions and fry until they turn golden.
  • Stir in ginger garlic paste and saute for 1 minute until the raw smell goes away.
  • Then transfer tomato puree and cook for 3 to 4 minutes until thick.
  • Add salt, chilli powder & garam masala. Saute well until the masala smells good and turns thick.
  • Mash the cooked urad dal slightly and pour it along with the stock. Pour another 1 cup hot boiling water & mix.
  • Cook on a low flame until the dal thickens stirring often in between to prevent burning the bottom. After 60 mins, the dal thickens.
  • Add another ½ to 1 cup hot boiling water and continue to cook until thick. This takes another 30 mins. Totally cook for about 90 mins from the time you added the cooked dal to the pot.
  • Then add kasuri methi and pour cream. Stir and cook again for 6 to 8 mins until it becomes thick and creamy.
  • Taste and add more salt if needed. Add butter and mix well.

Dhungar – Smoking (optional)

  • Place a small piece of foil or a tall steel cup on the dal makhani. Hold 1 to 2 inch piece of natural wood charcoal with a tong and burn it on direct fire until red hot. Then place it on the foil kept over dal or in the steel cup.
  • Quickly pour ¼ tsp ghee on the hot coal. Immediately cover the pot and allow to smoke for 3 to 4 mins. For stronger flavor, add another ¼ tsp ghee on the coal and repeat the smoking.
  • Garnish dal makhani with butter or cream & serve with fluffy Basmati rice or naan.

Instant Pot Dal Makhani

  • Press SAUTE button on the Instant pot. Add ghee and butter to the steel insert.
  • Once the butter melts, add onions and saute until transparent. Add ginger garlic paste and saute for 30 seconds.
  • Pour the tomato puree, red chilli powder & garam masala. Saute for 3 to 5 mins.
  • Drain the water from the lentils and add them. Pour 3 cups water and deglaze the pot by scrubbing the bottom with a wooden spatula.
  • Press CANCEL button. Secure the Instant pot with the lid. Position the steam release handle to sealing.
  • Press PRESSURE COOK button and set the timer to 30 mins.
  • When the IP finishes it will beep. Wait for the pressure to release naturally.
  • Open the lid. You will see the dal being runny at this stage. Add salt & slightly mash the urad dal, not rajma.
  • Press SAUTE button. Adjust the setting to LOW by pressing the saute button twice.
  • Cook further stirring often until thick. When most of the moisture evaporates, dal turns thicker. Optional – I prefer to add 1 more cup of hot water in 2 batches, ½ cup each time. Cook further until really creamy and thick.
  • Then add cream and kasuri methi. Continue to cook until creamy.
  • Stir in the butter and garnish dal makhani with cream.


  1. You can halve the recipe to make 2 to 3 servings. Cut down the cook time to 60 mins.
  2. Older stock of lentils & beans (aged) often take longer to cook. So buy them from a store which sells fresher stocks.
  3. If you do not like to use rajma, just skip them. Keep all the quantities of ingredients same.
  4. You may use whole spices in tempering – 1 black cardamom, 2 to 3 green cardamoms and 1 bay leaf.
  5. You can use bottled or homemade tomato puree. To make the puree, chop and blend a little over 1 cup tomatoes to make 1 cup puree.
  6. You can cook the lentils in a pot if you don’t have a cooker. It may take about 60 to 90 mins. Add more water than mentioned in the recipe.
  7. Simmer the dal for at least 90 minutes to get the best texture. If you double the recipe, simmer for longer.
  8. Dal makhani tastes best when slow cooked on a low flame for long time. So do not cook even on a medium flame.
  9. To get the authentic taste you can cook the dal for as long as 3 hours on the lowest flame, adding more water as needed.
  10. Keep stirring consistently to prevent burning.

Alternative quantities provided in the recipe card are for 1x only, original recipe.

For best results follow my detailed step-by-step photo instructions and tips above the recipe card.


Watch Dal Makhani Video

NUTRITION INFO (estimation only)

Nutrition Facts
Dal Makhani Recipe (Restaurant Style)
Amount Per Serving
Calories 410 Calories from Fat 198
% Daily Value*
Fat 22g34%
Saturated Fat 13g81%
Cholesterol 59mg20%
Sodium 1217mg53%
Potassium 350mg10%
Carbohydrates 37g12%
Fiber 16g67%
Sugar 4g4%
Protein 15g30%
Vitamin A 664IU13%
Vitamin C 11mg13%
Calcium 72mg7%
Iron 5mg28%
* Percent Daily Values are based on a 2000 calorie diet.
Tried this recipe?Mention @SwasthisRecipes or tag #swasthisrecipes!

© Swasthi’s Recipes

Dal Makhani Recipe (Restaurant Style)

About Swasthi

I’m Swasthi Shreekanth, the recipe developer, food photographer & food writer behind Swasthi’s Recipes. My aim is to help you cook great Indian food with my time-tested recipes. After 2 decades of experience in practical Indian cooking I started this blog to help people cook better & more often at home. Whether you are a novice or an experienced cook I am sure Swasthi’s Recipes will assist you to enhance your cooking skills. More about me

Follow Swasthi’s Recipes


Recipe Rating

Inline Feedbacks
View all comments

5 stars
I love this recipe: I’ve cooked many times and it always goes down well with guests and family. Thank you!
I was wondering if there was a way to cook it for a vegan however? Do you have any suggestions that wouldn’t ruin the flavour. I feel coconut cream wouldn’t work, but maybe??

Fantastic idea! I add cashew paste to mattar paneer and it adds a whole extra level. I’ll update you once I’ve tried 😊 Thank you so much for responding.

5 stars
superb Recipe …. i like it

5 stars
Thank You for the recipe. This tasted great. Doubled the spices to use 1 cup of chickpeas left from another recipe. Turned out amazing. I highly recommend.

Sorry, back again. Watching the video I assume you mean the dal cooking liquid.

Hi & thanks for the recipe! I’m planning this just want to check when you say to “pour the mashed dal in along with the stock” are you referring to the tomato mix as the stock or something else. No stock mentioned in the recipe so just making sure I’ve got it right. Thanks

5 stars
I have made this and it’s absolutely delisious! We are following a slow carb diet and I am wondering if you think yogurt could be substituted for the cream?

5 stars
This came out amazing.. doing the tadka on stove top and used can diced tomatoes and immersion blender made this

5 stars
Swasthi, your site is a boon for all those missing home. I have made this dal makhani many times and like all your other recipes it turns out excellent. My in-laws are visiting us next week so I plan to make this ahead. But how do I reduce the sodium content in this recipe. Please help

Hello, I was wondering if ural dal is the same thing has Urad Gota?

Got it. Thank you for the response! Is it possible to use urad gota for this recipe or do you have another recipe that uses urad gota?

5 stars
This is our favorite Indian dal and we make a large batch every month. It is very convenient to reheat from frozen and it tastes amazing. Last week we tried adding a large cinnamon stick and all the whole spices mentioned in the recipe. Picking out the spices for my toddlers was a bit hard but everything else is so good. Thank you for the authentic recipes.

5 stars
I love this version of dal makhani and I love the spices. This is better than my earlier version with a fewer spices. This is so fragrant and delicious.

5 stars
This is delectable… and actually gives me more confidence in the kitchen. Thank you! The flavors and texture are absolutely perfect. My daughter’s mouth was watering after I opened the pot… she said it smelled like an Indian restaurant and ate two helpings, even requested to have it for lunch the next day.

5 stars
All your recipes are amazing Swasthi, and this was no exception – it was lick-the-plate delicious! I’m wondering if it would work if after adding the masala to the cooked lentils, I transferred it to the slow cooker and let it cook for a few hours, rather than simmering it on the stove top. I can’t see any reason why it wouldn’t, what do you think?

I want to make this tomorrow, but i dont have an instant pot or a pressure cooker, how do I cook the urad dal + rajma in a regular pan on a stovetop?

5 stars
I made this for my North Indian boyfriend, as it is his favorite dish. I was so worried it wouldn’t turn out well and he wouldn’t like it. But, now he requests me to make it too much :)! I had to convince him that I didn’t buy it from a restaurant! This was my first recipe of yours that I tried and it keeps me coming back for more! Thank you!

5 stars
I was wondering if you could make this with precooked lentils? I often have some left over after making brownies…

5 stars
Can I add meat to this? Is that done? I was trying to merge this recipe and your Butter Chicken. Can ground beef be mixed in? What are your thoughts on how these changes would affect the integrity of this recipe (dont want that!)

#thanksforhelpingme move away from burger fries

Thank you for the reponse! For those like me making this for the first time, my observations: If you are making without an Instapot/Pressure cooker be prepared for this dish to take an entire day with a 7-8 hour soak time, another 1-2 hours trying to further tenderize the lentils and then another 90 minutes for it all to simmer (i WILL be buying one, lol).
I did not have the cardamon or cream, but otherwise followed the directions. I do not know what I did wrong (not rinse well enough?) but the dish turned out a bit bitter. I ended up adding a squeeze of lemon juice, and a bit more salt to balance out.
The dish is very forgiving and I ended up tasting and seasoning until I was happy with the flavors. I was generous with the chil powder, garam masala, and salt. I used a bit of milk in place of the cream.
Since it took until after what should have been dinner time (no instapot remember), I put in fridge overnight and the time for the flavors to blend must have worked wonders because my 3 picky kids ate it over rice with ZERO complaints! No one was looking for “the meat”!
Thank you for helping make this cross cultural vegetarian dining experience a winner for my family.

5 stars
Came across your website when looking for Indian recipes and I’m kinda puzzled at the huge number of recipes you have on Swasthi’s. I’m loving them all. Every dish I have tried from here have turned out to be amazing and that’s more than what I expected. Last week I made dal makhani and bhindi masala. Made 2x recipes to feed my family of 4. My family is blown away at this dal makhani and there were no leftovers which I was expecting. Thank you and next try is your Kadhi pakora.

5 stars
Hi! I’ve made this dal makhani almost every month and comes out great each time. However I double the onions and brown them, add a bit of sour cream for a slight tang. It turns out amazing and such a great balance of flavors. Thank you.

5 stars
What an amazing & brilliant dal makhani recipe! I’ve already made it many times in the last few months and every time it was delicious. But had to try the smoking/dhungar method & tried it last Friday. Oh My God!! It was the best and I’m kind of addicted to this recipe. My only question now is about the whole spices, do you add them to a pouch or just to the oil in the pot? I could not find them in the pictures.

5 stars
Thank you. This was delicious.