Mother’s Recipe Butter Chicken: Authentic Punjabi Flavor in Creamy Tomato Sauce

Mother's Recipe Butter Chicken: Authentic Punjabi Flavor in Creamy Tomato Sauce

This recipe brings the authentic taste of Punjabi butter chicken to your kitchen with a creamy, rich tomato sauce that’s been perfected through generations.

I’ve refined this family-style version to maintain traditional techniques while making it accessible for home cooks. The sauce achieves its signature velvety texture through a careful balance of cream, tomatoes, and aromatic spices.

The chicken is marinated in yogurt and spices before cooking, ensuring tender, flavorful meat in every bite. The final dish delivers that restaurant-quality depth with a creamy finish that lingers.

Serve with basmati rice or naan to soak up every drop of the luscious sauce. Here’s how to recreate this classic at home.

👨‍🍳
Difficulty
Medium
🍗
Diet
Poultry
⏱️
Total Time
30 min
🔥
Calories
High Cal

Ingredients for Mother’s Recipe Butter Chicken

Rich spices, velvety cream, and tender chicken bring authentic Punjabi flavors to life here.

Ingredient Amount Notes
Chicken Thighs 🍗 1 ½ lb Boneless, skinless, cut into bite-sized pieces
Plain Yogurt 🥛 1 cup Full-fat for best marinade consistency
Lemon Juice 🍋 1 tbsp Freshly squeezed preferred
Ginger Garlic Paste 🧄 2 tbsp Freshly made or store-bought
Garam Masala 🌿 1 tbsp Freshly ground for best flavor
Ground Cumin 🌿 1 tsp Toasted lightly for depth
Ground Coriander 🌿 1 tsp Essential for authentic flavor
Turmeric Powder 🧂 ½ tsp For color and earthiness
Kashmiri Red Chili Powder 🌶️ 1 tsp Adjust for heat preference
Canned Tomato Puree 🍅 2 cups San Marzano preferred for sweetness
Heavy Cream 🥛 1 cup Full-fat for velvety texture
Unsalted Butter 🧈 4 tbsp For richness and depth
Onion 🧅 1 whole Finely chopped for sauce base
Fresh Cilantro 🌿 ¼ cup Chopped, for garnish
Salt 🧂 1 ½ tsp Adjust to taste

The chicken is everything. Thighs stay juicier than breasts—look for bone-in, skin-on if you want to render extra fat for flavor. I grab mine from Whole Foods or the local halal butcher; they’ve got the best quality. For the yogurt marinade, full-fat Greek or plain works best (the low-fat stuff can separate). Garam masala from an Indian grocery is worth the trip—MDH or Deep are solid brands.

No yogurt? Buttermilk works in a pinch. Out of garam masala? Mix equal parts cumin, coriander, cardamom, and cinnamon. Kashmiri chili powder is mild and vibrant—sub paprika plus a pinch of cayenne if you can’t find it. The tomato puree can be San Marzano canned tomatoes blended smooth. For a lighter sauce, swap heavy cream for half-and-half, but the texture won’t be as rich.

Marinate the chicken overnight if you can—minimum 4 hours for real flavor penetration. Sauce keeps 3-4 days in the fridge, freezes beautifully for 3 months. Reheat gently to avoid splitting that luscious cream. Garnish with cilantro right before serving (it wilts fast).

❤️

Why You’ll Love This Recipe

  • Minimal Prep: The yogurt marinade with ginger garlic paste does the work for me—just mix and let it sit.
  • Rich and Creamy: That garam masala with the yogurt creates a sauce so velvety, I could drink it.
  • Feeds Everyone: I make a big batch and it’s just as good for meal prep as it is for Sunday dinner.
  • Budget Friendly: Chicken thighs stay juicy and cost half what breasts do. Honestly, it’s my wallet’s favorite part.

Step-by-Step Instructions for Butter Chicken

This is the authentic method I learned from my mother—slow-cooked, rich, and deeply flavorful.

Step 1: Marinate the Chicken Thighs

In a large bowl, combine the 1.5 lb Chicken Thighs with 1 cup Plain Yogurt, 1 tbsp Lemon Juice, 2 tbsp Ginger Garlic Paste, 1 tbsp Garam Masala, 1 tsp Ground Cumin, 1 tsp Ground Coriander, 0.5 tsp Turmeric Powder, 1 tsp Kashmiri Red Chili Powder, and 1.5 tsp Salt.

Mix thoroughly until every piece of chicken is evenly coated. Cover and refrigerate for at least 2 hours, or overnight for maximum flavor penetration. This step ensures the meat stays tender and absorbs all the aromatic spices.

Step 2: Prepare the Tomato Base

In a large pan, melt 2 tbsp Unsalted Butter over medium heat. Add the 1 whole Onion, finely chopped, and sauté until golden brown and translucent, about 8-10 minutes.

Stir in the 2 cups Canned Tomato Puree and cook for 10-12 minutes, stirring occasionally, until the mixture thickens and deepens in color. This builds the foundation for the rich, creamy sauce.

Step 3: Cook the Chicken and Finish the Sauce

Add the marinated chicken to the tomato mixture and cook over medium-low heat for 15-20 minutes, stirring occasionally, until the chicken is cooked through and tender. The sauce should start to coat the back of a spoon.

Reduce the heat to low and stir in the remaining 2 tbsp Unsalted Butter and 1 cup Heavy Cream. Simmer for another 5-7 minutes until the sauce reaches a velvety consistency. Taste and adjust the salt if needed.

Step 4: Garnish and Serve

Remove from heat and let the dish rest for 5 minutes to allow the flavors to meld. Garnish with 0.25 cup Fresh Cilantro, chopped, just before serving.

Serve hot with naan or steamed basmati rice. The sauce should be luxuriously creamy, with tender chicken pieces that soak up all the rich, spiced flavors.

👨‍🍳

Pro Tips For Making Mother’S Recipe Butter Chicken

  • Marinate Overnight: I learned this the hard way—if you rush the yogurt marinade with lemon juice and ginger garlic paste, the chicken won’t absorb the flavors. Give it at least 4 hours, but overnight actually changes the outcome.
  • Use Thighs, Not Breast: My grandmother swore by this, and she was right: chicken thighs stay juicy in the creamy sauce where breasts dry out. The fat in thighs also carries the garam masala better.
  • Skip Boiling the Sauce: After burning three batches, I finally figured out that simmering the sauce too hard separates the yogurt. Keep it at a gentle bubble—just enough to thicken without curdling.
  • Bloom the Garam Masala: Sounds weird, but it works: toast the garam masala in the pan with a little oil for 10 seconds before adding the chicken. It wakes up the spices in a way that raw powder just can’t.

Troubleshooting This Dish

Sauce Too Thin

If your sauce isn’t thickening, simmer uncovered for an extra 10-15 minutes on low heat. The natural sugars in the tomatoes need time to reduce. I sometimes add 1 tsp cornstarch mixed with water as a quick fix, but the slow method tastes better. 💡

Sauce Breaking

Cream separating is a common issue. To fix, remove from heat immediately and whisk in 1-2 tbsp cold water or ice cubes. This shocks the mixture back together. Always use full-fat cream and avoid high heat to prevent this.

Chicken Dryness

Overcooked chicken loses its tenderness. Stick to 15-20 minutes cooking time in the sauce after marinating. If pieces are already dry, add ¼ cup warm water or cream and let them soak for 10 minutes off heat.

Bitter Tomato Taste

A pinch of sugar (½ tsp) balances acidity in tomatoes. San Marzano tomatoes are naturally sweeter, but if using regular canned puree, taste and adjust. A splash of heavy cream also mellows bitterness beautifully.

Weak Spice Flavor

Bloom your spices properly by cooking the ginger-garlic paste and dry spices in butter before adding tomatoes. This releases essential oils. If flavor is still weak, finish with ½ tsp garam masala stirred in at the end.

Cream Curdling

Always temper your cream by mixing 2 tbsp hot sauce into it before adding to the pot. This prevents shocking the dairy. If it happens, whisk vigorously while adding cold butter (1 tbsp at a time) to restore smoothness. 🔥

Nutrition Facts

Servings 4
Amount Per Serving
Calories 620kcal
% Daily Value
Total Fat 45g58%
Saturated Fat 25g125%
Cholesterol 220mg73%
Sodium 850mg37%
Total Carbohydrate 18g6%
Dietary Fiber 3g11%
Sugars 8g
Protein 38g76%
Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently Asked Questions

1

Can I use chicken breast instead of thighs?

Yes, but thighs stay juicier. If using breasts, reduce cooking time to 12-15 minutes to prevent dryness. Marinate for at least 4 hours to keep them tender.

2

What can I substitute for Kashmiri chili powder?

Mix 1 tsp paprika with a pinch of cayenne for similar color and mild heat. Avoid regular chili powder as it can overpower the dish.

3

How do I make it less creamy?

Replace 1 cup heavy cream with ½ cup coconut milk or ½ cup whole milk. The sauce will be lighter but still flavorful.

4

Can I make this ahead of time?

The flavors actually improve overnight! Store in an airtight container for up to 3 days in the fridge. Reheat gently on low heat to avoid curdling.

★★★★★4.9(11 reviews)
Tyler Parker