This Indian Butter Chicken recipe strikes the perfect balance between flavor and spice — LOTS of flavor with a small hint of heat. Indian butter chicken is chicken in a spiced tomato, cream and butter sauce over a bed of sticky rice.

I’m a huge sucker for Indian food. And my kids love it too! You can try my vegetarian Indian butter cauliflower recipe, chickpea spinach curry, chicken tikka masala, or my chickpea curry if you are also a fan of the Indian/Thai flavors.

A bowl of Indian Butter Chicken Recipe surrounded by naan bread and cilantro.

Why This Recipe Works

  • This recipe makes it easy to make your favorite Indian dish right at home!
  • By marinating the chicken, we achieve a deeper level of flavor in this dish.
  • This recipe makes enough to serve a family of 4 or 5 OR leftovers if you are feeding a smaller group than that.

Ingredients

Ingredients used to make Indian Butter Chicken laid out on a white background.
  • Garam Masala: It’s an obscure spice, but if you love Indian food as much as I do, it will be a frequent flyer in the kitchen!
  • Cumin: When you smell this spice you’ll know why it’s important in this dish! Paired with the garam masala, it’s how we get our iconic Indian flavor/aroma.
  • Cardamom: This spice has a bit of complex flavor to it. It’s kinda minty, herbal-y, and fruity all at the same time.
  • Tomato Sauce: This is the base of our sauce but you can also use crushed tomatoes.
  • Butter: The characteristic ingredient in butter chicken.
  • Cream: This is what gives us our creamy look and texture in the sauce.
  • Greek Yogurt: Adds a little tart and thickness to the sauce.

Step-by-Step Instructions

  1. Make the chicken marinade. In a medium-sized bowl, combine the garlic cloves, canned tomatoes, Greek yogurt, and all the spices.
  1. Stir in the cut up chicken. Cover the bowl with plastic wrap and place in the fridge to marinate for at least 2 hours.
  1. Par bake the chicken. In a large skillet, melt some butter. We use a decent amount of butter for this recipe, 6 tablespoons.
  2. Add the thinly sliced red onions to the butter and cook over medium to medium-low heat for 4-5 minutes or until the onions are soft and translucent.
  3. Add the chicken and the marinade to the skillet and cook for 4-5 minutes.
  1. Remove from the heat and stir in the heavy cream and chopped cilantro.
A skillet with Indian Butter Chicken in it with heavy cream and cilantro overtop.
  1. Bake the butter chicken. Transfer the par baked chicken to an 8×8-inch baking dish. Cover with foil and bake for 25 minutes. Uncover and bake for an additional 5 minutes. Serve over cooked rice.
An oval white baking dish with Indian Butter Chicken Recipe in it, against a white background.

Recipe Tips

Cayenne Pepper: I add 1/4 tsp and it gives the recipe a small “kick.” If we didn’t have young kids we were feeding I’d probably bump it to 1/2 tsp for more heat. You can do as you wish!

Tomato Base: You can use a can of tomato sauce OR crushed tomatoes. Either works well! I haven’t made this recipe using fresh tomatoes, but you definitely can!

You can marinate the chicken for much longer! I like to make this in the morning so that the chicken can marinate throughout the day. So my chicken sits in the marinade for about 6 hours.

What to serve with Indian Butter Chicken

Serve Indian butter chicken atop a bed of rice. It can be white rice, brown rice, jasmine rice, basmati rice… whatever you have on hand.

FAQs

What does butter chicken taste like?

Butter chicken is chicken in a spiced tomato, butter and cream sauce. It has a mild and somewhat sweet flavor because of the butter base — which helps soften some of the spices. It’s got a tomato-y flavor too which is the base of the sauce.

Is butter chicken like tikki masala?

Tikki masala isn’t as creamy as butter chicken. It can sometimes be spicier than butter chicken, too.

A bowl with Indian Butter Chicken in it, with a side of naan bread and rice.

Did you make this recipe? I’d love to hear about it! Click here to leave a star rating and review.

Stay up-to-date by following us on Instagram, Facebook, and Pinterest.

A bowl of Indian Butter Chicken overtop of white rice and garnished with cilantro.
Print Save Review
5 from 15 votes

Indian Butter Chicken

Packed with lots of FLAVOR! This Butter chicken recipe is our favorite Indian dish! It's easy to make and loved by everyone.
Prep Time: 20 minutes
Cook Time: 25 minutes
Marinate Time: 2 hours
Total Time: 2 hours 45 minutes
Servings: 6 servings

Ingredients
 

  • 1 lb boneless skinless chicken breasts - cut into 1" inch chunks

Marinade

  • 4 garlic cloves - minced
  • 1 inch ginger root - grated
  • 1/4 teaspoon cayenne pepper - add more if you want more heat (see notes)
  • 1 15 oz can tomato sauce - or crushed tomatoes
  • 1/3 cup plain greek yogurt
  • 3 1/2 teaspoons garam masala
  • 2 teaspoons salt
  • 1/4 teaspoon cardamom
  • 1 teaspoon cumin
  • 6 tablespoons unsalted butter
  • 1/2 red onion - thinly sliced, in half moons
  • 1/2 cup heavy cream
  • 3 tablespoons cilantro - chopped
  • cooked rice - for serving

Instructions
 

  • In a medium sized bowl combine the garlic loves, ginger, cayenne, diced tomatoes, yogurt, garam masala, salt, cardamom, and cumin. Stir to combine. Stir in the cut up chicken. Cover the bowl with plastic wrap and place in the fridge to marinate for 2 hours. 
  • Preheat the oven to 350°F.  In a large skillet melt the butter. Add the sliced onions and cook over medium heat for 4-5 minutes or until the onions are soft and translucent. Add the chicken and the marinade to the skillet and cook for 4-5 minutes (the mixture should be boiling about mid-way through). Remove from heat. Stir in the heavy cream and chopped cilantro.
  • Transfer the par baked chicken to an 8×8 inch baking dish. Cover with aluminum foil and bake for 20 minutes, uncover and bake for an additional 5 minutes. 
  • Serve hot over a bed of rice and a side of naan bread. 

Notes

Cayenne Pepper: I add 1/4 tsp and it gives the recipe a small “kick.” If we didn’t have young kids we were feeding I’d probably bump it to 1/2 tsp for more heat. You can do as you wish!
Tomato Base: You can use canned tomato sauce or crushed tomatoes, both work great! If you have canned diced tomatoes you can also partially drain them, then puree the diced tomatoes in a blender. I haven’t made this recipe using fresh tomatoes, but you definitely can! 
You can marinate the chicken for much longer! I like to make this in the morning so that the chicken can marinate throughout the day. So my chicken sits in the marinade for about 6 hours or so.
What to serve with Indian Butter Chicken:
Serve Indian butter chicken atop a bed of rice. It can be white rice, brown rice, jasmine rice, basmati rice… whatever you have on hand.
My easy naan recipe comes in handy here, as naan is the perfect accompaniment to this saucy Indian dish. We also love to serve it with buttered vegetables, frozen roasted cauliflower, or a spring mix salad. 
 

Nutrition

Calories: 413kcal (21%)Carbohydrates: 5g (2%)Protein: 27g (54%)Fat: 32g (49%)Saturated Fat: 18g (90%)Cholesterol: 159mg (53%)Sodium: 1317mg (55%)Potassium: 506mg (14%)Fiber: 1g (4%)Sugar: 1g (1%)Vitamin A: 1068IU (21%)Vitamin C: 3mg (4%)Calcium: 62mg (6%)Iron: 1mg (6%)
Course: Main Course
Cuisine: Indian
Did you make this recipe?Leave a star rating and review on the blog post letting me know how you liked this recipe! Take a picture and tag @saltandbaker on Instagram and Facebook so I can see what you’re making!

This recipe was originally published on Dec. 8, 2019. It was republished on July 29, 2021, to include additional information and photos.