Butter chicken is what happens when you marinate chicken in spiced yogurt, cook it in a tomato cream sauce loaded with butter and aromatics, and end up with something so rich and flavorful that people assume it’s too complicated to make at home. I made butter chicken for the first time after years of ordering it from restaurants, and my partner genuinely asked if I’d secretly ordered takeout and just plated it nicely. Nope, just followed a recipe and used enough butter to make it taste authentic.
Butter chicken features tender chicken pieces swimming in a silky tomato-based sauce that’s sweet, savory, slightly tangy, and incredibly creamy. It’s the gateway Indian dish – not too spicy, universally loved, and exactly what you crave when you want comfort food with complex flavors. The sauce is so good you’ll want to drink it straight from the bowl, but serving it over rice or with naan is more socially acceptable.

Best part? Butter chicken tastes way more complicated than it actually is. Marinate chicken, make sauce, combine, simmer. That’s the whole process. Most of the ingredients are probably in your spice cabinet already, and the technique is just sautéing and simmering. No special equipment, no advanced skills, just patience and a willingness to use a lot of butter.
Why Homemade Butter Chicken Beats Restaurant Versions
Restaurant butter chicken is delicious but it’s also usually swimming in oil, costs $15-18 per serving, and you can’t control the spice level or richness. Homemade butter chicken lets you make it exactly how you like it – more tomato-forward, less cream, spicier, whatever. Plus making it at home costs maybe $12 total to feed 4-6 people.
I made butter chicken for a dinner party where half the guests had been to India and had “opinions” about authentic versions. They all agreed mine was better than most American restaurants and close to what they’d had in Delhi. When you impress people who’ve had the real thing, you know you’ve nailed the recipe.
Here’s why you need butter chicken:
- Tastes like expensive restaurant food made in your kitchen
- The marinated chicken stays incredibly tender
- That tomato cream sauce is genuinely addictive
- Easier than you think – mostly just stirring
- Makes your house smell amazing while cooking
- Leftovers are even better the next day
Plus butter chicken works for people who claim they “don’t like spicy food.” This dish is flavorful, not spicy. The cream and butter mellow everything out. My friend who won’t eat jalapeños loves this :/
What You Need for Butter Chicken
For the Chicken Marinade
Protein:
- Boneless skinless chicken thighs (2 lbs – cut into 1-2 inch pieces)
- Or chicken breasts work but thighs are juicier
- Cut into bite-sized chunks
Marinade:
- Plain yogurt (1 cup – full-fat works best)
- Lemon juice (2 tablespoons)
- Ginger-garlic paste (2 tablespoons – or 1 tablespoon each minced)
- Garam masala (1 tablespoon)
- Cumin (1 teaspoon)
- Coriander (1 teaspoon)
- Turmeric (½ teaspoon)
- Cayenne or red chili powder (½ teaspoon – adjust for spice preference)
- Salt (1 teaspoon)
Why yogurt marinade matters: The acid tenderizes chicken while spices infuse flavor. This step is crucial – don’t skip the marinating time.
For the Butter Chicken Sauce
Aromatics:
- Butter (6 tablespoons divided – this is butter chicken, don’t hold back)
- Onion (1 large – finely diced or pureed)
- Garlic (6 cloves minced)
- Fresh ginger (2 tablespoons minced)
- Green chili (1-2 – slit lengthwise, optional for heat)
Spices:
- Garam masala (1 tablespoon)
- Cumin (1 teaspoon)
- Coriander (1 teaspoon)
- Paprika (1 tablespoon – for color)
- Kashmiri chili powder (1 teaspoon – or regular chili powder)
- Turmeric (½ teaspoon)
- Dried fenugreek leaves/kasuri methi (1 tablespoon – optional but authentic)
Tomato Base:
- Crushed tomatoes (28 oz can)
- Or tomato puree (3 cups)
- Tomato paste (2 tablespoons – deepens flavor)
Cream and Finish:
- Heavy cream (1 cup)
- Sugar (1 tablespoon – balances acidity)
- Salt (to taste)
- Fresh cilantro (for garnish)
Why this spice combo works: Garam masala provides warmth, cumin and coriander add earthiness, paprika gives color, and kasuri methi adds that distinctive restaurant flavor.

For Serving
Accompaniments:
- Basmati rice (cooked)
- Naan bread (homemade or store-bought)
- Roti or paratha
- Extra cilantro for garnish
- Sliced onions and lemon wedges
Optional Sides:
- Cucumber raita (cooling yogurt sauce)
- Mango chutney
- Pickled onions
- Papadum
Equipment You Actually Need
- Large bowl for marinating
- Large heavy-bottomed pot or dutch oven
- Wooden spoon for stirring
- Blender or immersion blender (optional – for smoother sauce)
- Measuring spoons
- Cutting board and knife
How to Make Butter Chicken
Step 1: Marinate the Chicken
Mix yogurt, lemon juice, ginger-garlic paste, garam masala, cumin, coriander, turmeric, cayenne, and salt in a large bowl.
Add chicken pieces and toss to coat completely. Every piece should be covered in marinade.
Cover and refrigerate for at least 1 hour, preferably 4-8 hours. Overnight is even better for maximum flavor and tenderness.
Critical tip: Don’t skip marinating time. This is what makes the chicken tender and flavorful. Quick marinades don’t penetrate the meat properly.
Step 2: Cook the Marinated Chicken
When ready to cook, remove chicken from fridge and let sit at room temperature for 15 minutes.
Heat 2 tablespoons butter in a large pot or dutch oven over medium-high heat.
Working in batches to avoid crowding, add marinated chicken pieces. Cook 2-3 minutes per side until lightly browned and mostly cooked through. Don’t overcook – chicken will finish cooking in the sauce.
Transfer cooked chicken to a plate. It’s okay if chicken isn’t fully cooked yet – it continues cooking in sauce.
Pro tip: You can also grill or broil the chicken for slight char, which adds flavor. But pan-cooking works perfectly fine.
Step 3: Build the Sauce Base
In the same pot (don’t clean it – those browned bits are flavor), melt remaining 4 tablespoons butter over medium heat.
Add diced onion and cook 6-8 minutes, stirring occasionally, until softened and starting to brown.
Add minced garlic, ginger, and green chili if using. Cook 1-2 minutes until fragrant. Your kitchen should smell incredible right now.
Add all the spices – garam masala, cumin, coriander, paprika, chili powder, turmeric. Stir constantly for 30-60 seconds until spices are toasted and fragrant.
Don’t let spices burn – they go from perfect to bitter quickly. Keep stirring.
Step 4: Add Tomatoes and Simmer
Add crushed tomatoes and tomato paste. Stir to combine with spices and onions.
Bring to a simmer, then reduce heat to medium-low. Let sauce simmer 15-20 minutes, stirring occasionally. It should thicken and deepen in color.
The sauce will reduce and oil might start separating at the edges – this is good. Means flavors are concentrating.
Add sugar and salt. Taste and adjust – the sauce should be savory-sweet and rich.
Optional step: For super smooth restaurant-style sauce, use immersion blender to puree sauce until completely smooth. Or transfer to regular blender (careful – hot liquid), blend, return to pot.
Step 5: Add Cream and Chicken
Reduce heat to low. Stir in heavy cream gradually, mixing well.
Add cooked chicken pieces along with any accumulated juices. Stir to coat chicken in sauce.
Simmer gently for 5-10 minutes so chicken finishes cooking and absorbs flavors. Don’t boil vigorously or cream can curdle.
If using kasuri methi (dried fenugreek leaves), crush between your palms to release oils and add now. This adds authentic restaurant flavor.
Taste again and adjust seasoning – more salt, more garam masala, more cream, whatever you need.
Butter chicken should be rich, slightly sweet, creamy, and have complex warm spice flavors without being spicy-hot.
Step 6: Finish and Serve
Remove from heat. Stir in additional tablespoon of butter if you want extra richness (traditional finishing touch).
Garnish with fresh chopped cilantro and a drizzle of cream if you want to be fancy.
Serve hot over basmati rice or with warm naan for scooping.
Butter chicken tastes even better the next day after flavors meld overnight. Store in airtight container in fridge for up to 4 days.
Creative Variations Worth Trying
Paneer Butter Masala
Replace chicken with cubed paneer cheese. Don’t marinate – just add cubed paneer to sauce and simmer briefly. Vegetarian version that’s equally delicious.
Butter Chicken Pizza
Use the sauce as pizza sauce. Top with mozzarella and leftover butter chicken pieces. Fusion food that actually works.
Butter Chicken Pasta
Toss cooked pasta with butter chicken sauce. Add extra cream if needed. Indian-Italian mashup that shouldn’t work but does.
Spicy Butter Chicken
Double the cayenne and add more green chilies. Use less cream. For people who want the butter chicken flavor with actual heat.
Butter Salmon
Use salmon pieces instead of chicken. Skip marinade or use brief 30-minute marinade. Cook gently in sauce. Luxurious and different.
Instant Pot Butter Chicken
Sauté aromatics using sauté function. Add everything except cream. Pressure cook 10 minutes. Release, stir in cream. Faster version.

Butter Chicken (Murgh Makhani)
Equipment
- Large bowl For marinating chicken
- Heavy-bottomed pot or Dutch oven
- Wooden spoon For stirring sauce
- Blender or immersion blender Optional, for smooth sauce
- Measuring Spoons
- Cutting board and knife
Ingredients
- 2 lbs boneless chicken thighs, cut into chunks
- 1 cup plain yogurt (full-fat preferred)
- 2 tbsp lemon juice
- 2 tbsp ginger-garlic paste
- 1 tbsp garam masala
- 1 tsp cumin
- 1 tsp coriander
- 0.5 tsp turmeric
- 0.5 tsp cayenne pepper or red chili powder
- 1 tsp salt
- 6 tbsp butter, divided
- 1 large onion, finely diced
- 6 cloves garlic, minced
- 2 tbsp fresh ginger, minced
- 1–2 green chilies, slit (optional)
- 1 tbsp paprika
- 1 tsp Kashmiri chili powder or regular chili powder
- 1 tbsp dried fenugreek leaves (kasuri methi, optional)
- 28 oz crushed tomatoes
- 2 tbsp tomato paste
- 1 cup heavy cream
- 1 tbsp sugar
- 1 tbsp butter (for finishing, optional)
- fresh cilantro (for garnish)
Instructions
- Combine yogurt, lemon juice, ginger-garlic paste, garam masala, cumin, coriander, turmeric, cayenne, and salt in a bowl. Add chicken and coat evenly. Cover and refrigerate for at least 1 hour or overnight.
- Heat 2 tbsp butter in a large pot over medium-high. Add chicken in batches, searing 2–3 minutes per side until lightly browned. Remove and set aside.
- In same pot, melt remaining butter. Add onions and sauté until soft. Add garlic, ginger, green chili and cook 1–2 mins. Stir in spices (paprika, chili powder, garam masala, etc.) and cook until fragrant.
- Add crushed tomatoes and tomato paste. Simmer for 15–20 minutes until thick and deep in color. Blend for smoother texture if desired.
- Reduce heat, stir in cream. Add sugar, salt, fenugreek (if using), and chicken. Simmer 5–10 minutes until chicken is fully cooked and sauce is creamy.
- Finish with a tablespoon of butter and garnish with chopped cilantro. Serve hot with basmati rice or naan.
Notes
Nutrition
Frequently Asked Questions
My sauce is too acidic and tangy – how do I fix it?
Add more sugar (1 teaspoon at a time) and more cream. The sweetness and fat balance the tomato acidity. You can also add a pinch of baking soda to neutralize acid.
The chicken is tough and dry – what happened?
Overcooked or didn’t marinate long enough. Chicken thighs are more forgiving than breasts. Also make sure you’re simmering gently, not boiling hard.
Can I make butter chicken without heavy cream?
You can use half-and-half or coconut cream. The texture will be slightly different but still good. Don’t use milk – too thin and might curdle.
My sauce is too thin and watery – help?
Simmer longer uncovered to reduce and thicken. Or mix 1 tablespoon cornstarch with 2 tablespoons water, stir in, and simmer until thickened.
The spices taste raw and harsh – why?
Didn’t cook spices long enough with aromatics before adding tomatoes. The spices need to toast in fat to release flavors and lose raw taste.
Can I make butter chicken ahead of time?
Yes. It’s actually better the next day. Make completely, cool, refrigerate up to 4 days. Reheat gently, adding splash of cream if needed.
What if I can’t find kasuri methi (dried fenugreek leaves)?
Skip it. The dish will still be delicious. Or substitute with a tiny amount of maple syrup for similar sweet-savory note. Not the same but helps.