Butter Chicken is a creamy, comforting dish that has won hearts all around the world. It features tender pieces of chicken simmered in a rich, buttery tomato sauce that’s subtly spiced but never too hot. The sauce is smooth and silky, making every bite feel like a warm hug from the inside.
I love making butter chicken because it’s surprisingly simple but tastes like you’ve spent hours in the kitchen. I usually marinate the chicken first to get extra flavor, then gently cook it in that buttery sauce until it’s just right. The aroma alone is enough to make everyone gather around the kitchen, eager to have a taste.
One of my favorite ways to serve butter chicken is with warm naan bread or fluffy basmati rice, which helps soak up all the sauce. It’s a perfect meal for a cozy night in or when friends come over because it’s both familiar and special. Every time I make it, I get excited to see everyone enjoying this delicious comfort food together.
Key Ingredients & Substitutions
Chicken: I recommend using boneless, skinless chicken thighs for juiciness and flavor. Breasts work fine too but can dry out more quickly. You can also substitute with tofu or paneer for a vegetarian version.
Yogurt: Plain yogurt adds tang and helps tenderize the chicken. Greek yogurt is a great choice for thickness, but feel free to use regular yogurt or even dairy-free yogurt for lactose intolerance.
Butter: As the name suggests, butter is key for richness. Unsalted butter gives you better control over seasoning. You can use ghee for a deeper, nutty flavor if you have it.
Spices: Garam masala is central for that classic flavor. If you don’t have it, a mix of equal parts cinnamon, cardamom, cloves, and cumin can work. Adjust chili powder to control the heat.
Tomatoes: Tomato puree keeps the sauce smooth; crushed tomatoes can be used but may change texture slightly. Canned or fresh tomatoes can work depending on availability.
Cream: Heavy cream makes the sauce silky. For a lighter option, you can use coconut milk or cashew cream for a different but tasty twist.
How Do You Get the Chicken Tender and Sauce Perfectly Creamy?
The key to tender chicken and creamy sauce is the marination and gentle cooking process:
- Marinate: Letting chicken soak in yogurt and spices for several hours helps tenderize it and boost flavor. Don’t rush this step if you can.
- Cook Chicken Lightly: Brown the chicken just enough to seal in juices, but finish cooking it in the sauce. This prevents dryness.
- Sauté Onions Slowly: Cook onions over medium heat until golden and soft to develop a sweet base for the sauce.
- Simmer Sauce: Let the tomato sauce simmer until the oil starts to separate; this means the flavors have concentrated nicely.
- Add Cream at the End: Stir in cream gently and simmer briefly—overcooking cream can cause curdling.
Following these tips will give you rich, tender butter chicken every time!

Equipment You’ll Need
- Large skillet or pan – I prefer this because it heats evenly and can handle the whole cooking process without fuss.
- Mixing bowls – for marinating the chicken and mixing ingredients easily.
- Wooden spoon or spatula – helps stir the sauce gently without scratching the pan.
- Measuring spoons and cups – to get the spices and liquids just right.
- Knife and cutting board – for chopping onions, garlic, and ginger.
- Optional blender – if you want a smooth sauce, you can blend part of the tomatoes or sauce later.
Flavor Variations & Add-Ins
- Substitute chicken with shrimp or paneer for different protein options—both work well in the creamy sauce.
- Mix in roasted vegetables like bell peppers, spinach, or peas for added texture and color.
- For a milder flavor, reduce or skip the cayenne pepper; for more heat, add extra chili powder or hot sauce.
- Enhance the aroma with a pinch of saffron or smoked paprika for a unique twist.
Butter Chicken Recipe
Ingredients You’ll Need:
- 1.5 lbs (700g) boneless, skinless chicken thighs or breasts, cut into bite-sized pieces
- 1 cup plain yogurt
- 1 tbsp lemon juice
- 2 tsp garam masala
- 1 tsp turmeric powder
- 1 tsp ground cumin
- 1 tsp chili powder (adjust to taste)
- 1 tsp salt
- 3 tbsp butter, divided
- 1 medium onion, finely chopped
- 3 garlic cloves, minced
- 1 inch ginger, grated
- 1 tsp ground coriander
- 1/2 tsp cayenne pepper (optional, for extra heat)
- 1 (14 oz) can tomato puree or crushed tomatoes
- 1 cup heavy cream
- 1 tbsp sugar (optional, balances acidity)
- Fresh cilantro (coriander) leaves, chopped for garnish
How Much Time Will You Need?
This dish takes about 15 minutes for preparation and marination (but marinate longer if you can for better taste), and around 30-40 minutes for cooking. So plan for about 1 hour total, including marination and cooking time!
Step-by-Step Instructions:
1. Marinate the Chicken:
In a large bowl, mix yogurt, lemon juice, garam masala, turmeric, cumin, chili powder, and salt. Add your chicken pieces and mix well so each piece is coated. Cover and put it in the fridge for at least an hour, or better yet, 4 to 6 hours, or even overnight.
2. Cook the Chicken:
Heat 1 tablespoon of butter in a large pan over medium-high heat. Add the marinated chicken and cook until each piece turns brown on all sides, about 5-7 minutes, but don’t cook it all the way through yet. Take the chicken out and set aside.
3. Make the Sauce:
In the same pan, add the remaining 2 tablespoons butter. Add the chopped onions and cook until they are soft and golden, about 5-6 minutes. Stir in garlic, ginger, ground coriander, and cayenne pepper if you like it spicy. Cook for another 1-2 minutes until everything smells wonderful.
4. Add the Tomatoes:
Pour in the tomato puree or crushed tomatoes. Stir everything and let it simmer without a lid for about 10-15 minutes. You’ll see the oil start to separate from the sauce — that’s the magic moment that means the flavors are coming alive.
5. Finish with Cream:
Add the heavy cream and sugar to the sauce. Stir it all well and let it simmer gently for 5 minutes to blend all the flavors.
6. Combine Chicken and Sauce:
Put the browned chicken pieces back into the sauce along with any juices from the plate. Let it cook on low heat for 10-15 more minutes until the chicken is fully cooked and tender. The sauce should thicken nicely around the chicken.
7. Garnish and Serve:
Sprinkle fresh chopped cilantro over the top of your butter chicken. Serve it hot with fluffy basmati rice or warm naan bread for a perfect meal.
Enjoy your rich, creamy, and flavorful Butter Chicken!
Can I Use Frozen Chicken in This Recipe?
Yes, you can! Just make sure to fully thaw the chicken in the refrigerator overnight before marinating and cooking for the best texture and even cooking.
Can I Make Butter Chicken Ahead of Time?
Absolutely! Butter chicken actually tastes even better the next day as the flavors meld. Store it in an airtight container in the fridge for up to 3 days and gently reheat on the stove or in the microwave.
How Can I Make This Recipe Vegetarian?
Replace the chicken with paneer (Indian cheese) or tofu cubes. Marinate and cook them in the same way. Just be careful with the cooking time as both cook faster than chicken.
What’s the Best Way to Store Leftovers?
Keep leftovers in a sealed container in the fridge for up to 3 days. For longer storage, freeze the butter chicken for up to 2 months—just thaw overnight in the fridge before reheating.
