Go Back

Homemade Butter Chicken Recipe With Creamy Tomato Sauce - Comforting, Rich, and Easy

Prep Time 15 minutes
Cook Time 30 minutes
Total Time 45 minutes
Servings 4 servings

Ingredients
  

  • Chicken: 1.5 pounds boneless, skinless chicken thighs (or breasts), cut into bite-size pieces
  • Yogurt: 1/2 cup plain whole-milk yogurt (for marinade)
  • Lemon juice: 1 tablespoon
  • Garlic and ginger: 4 garlic cloves and 1-inch piece ginger, both finely grated
  • Spices (for marinade and sauce): 2 teaspoons garam masala
  • 1 teaspoon ground cumin
  • 1 teaspoon ground coriander
  • 1 teaspoon turmeric
  • 1/2–1 teaspoon Kashmiri chili powder or mild paprika (for color and gentle heat)
  • 1/4–1/2 teaspoon cayenne (optional, for extra heat)
  • 1 bay leaf (optional)
  • Salt and black pepper
  • Butter: 3 tablespoons, divided
  • Neutral oil or ghee: 1–2 tablespoons
  • Onion: 1 medium yellow onion, finely chopped
  • Tomato: 1 can (14–15 oz) tomato puree or crushed tomatoes
  • Cream: 3/4 cup heavy cream (or half-and-half for lighter)
  • Sugar or honey: 1–2 teaspoons (to balance acidity)
  • Fresh cilantro: Small handful, chopped (for garnish)
  • Naan or basmati rice: For serving

Instructions
 

  • Marinate the chicken. In a bowl, combine yogurt, lemon juice, half the garlic and ginger, 1 teaspoon garam masala, 1/2 teaspoon cumin, 1/2 teaspoon coriander, 1/2 teaspoon turmeric, 1/2 teaspoon Kashmiri chili or paprika, and 1 teaspoon salt. Add chicken and coat well. Cover and chill at least 30 minutes, preferably 2–4 hours. Overnight is great.
  • Sear the chicken. Heat 1 tablespoon oil or ghee in a large skillet over medium-high. Shake excess marinade off the chicken. Sear in batches until lightly charred and just cooked through, about 3–4 minutes per side. Transfer to a plate. Don’t overcrowd the pan.
  • Sauté the aromatics. In the same pan, lower heat to medium. Add 1 tablespoon butter and the chopped onion. Cook, stirring, until soft and golden, 6–8 minutes. Add remaining garlic and ginger; cook 1 minute until fragrant.
  • Build the spice base. Stir in remaining cumin, coriander, turmeric, and a pinch of cayenne if using. Toast 30 seconds to awaken the spices.
  • Add tomatoes and simmer. Pour in tomato puree and add 1/2 teaspoon salt, a few cracks of black pepper, and the bay leaf if using. Simmer gently for 10–12 minutes, stirring occasionally, until slightly thickened and the raw tomato smell mellows.
  • Blend for a silky sauce. Fish out the bay leaf. Carefully blend the sauce until smooth using an immersion blender right in the pan, or transfer to a blender and return to the skillet. This step gives that signature creamy texture.
  • Finish with cream and butter. Reduce heat to low. Stir in the cream, 1 teaspoon sugar or honey, remaining 1 tablespoon butter, and 1 teaspoon garam masala. Simmer 3–5 minutes until glossy and rich. Taste and adjust salt, sweetness, or heat.
  • Combine and warm through. Add the seared chicken and any juices. Simmer on low for 5 minutes so flavors mingle and chicken stays tender. If sauce is too thick, splash in water or a bit more cream.
  • Garnish and serve. Swirl in a tiny knob of butter for shine, sprinkle with chopped cilantro, and serve hot with basmati rice or warm naan.