This Indian butter chicken recipe simmers spiced yogurt-marinated chicken in a creamy, buttery tomato sauce. We love serving over rice and with plenty of naan for dipping.

After sharing our chicken curry, we received so many requests for more curries. So, we immediately added butter chicken to our testing list. I’m so glad we did, because I’m not exaggerating when I say that this recipe has quickly risen to the top of our favorites list.
Our butter chicken recipe below intentionally makes a lot of servings, so make it for a crowd or take advantage of the extras and save them for another day (which is great because I swear the leftovers just get better). For more like this, see our chicken tikka masala, which is heavier on the spices and tomatoes and uses less butter.
Key Ingredients
- Chicken Thighs: We prefer boneless, skinless thighs cut into bite-size pieces. We love thighs over chicken breasts for this recipe because they stay soft and tender even after the two-step cooking process (roasting and simmering). However, you can use chicken breast, and even bone-in chicken, in the butter chicken recipe below—see our tips for adjusting the cook times below the recipe.
- Onion, Garlic, and Fresh Ginger: Fresh is best here. Grate the ginger and garlic finely so they melt into the marinade and sauce. If you do not have a microplane, mince them finely instead. Store-bought ginger paste (sold in tubes) works, too!
- Yogurt and Lemon: Plain whole-milk yogurt (natural yogurt is great) and fresh lemon juice tenderize the chicken and help balance the richness of the cream.
- Spices: We use a mix of sweet paprika, garam masala, turmeric, coriander, cumin, and gochugaru (or crushed red pepper flakes as a substitute). Then, dried basil is our little secret weapon, adding a sweet, herby finish to the sauce (we can thank Chef Richard for that one).
- Ghee and Butter: We use ghee to cook the base of our sauce, then we whisk in cold, unsalted butter to create a glossy, emulsified texture. If you don’t have ghee, use a neutral-flavored oil, such as avocado oil.
- Tomato and Cream: A large can of tomato sauce (or tomato puree) combined with heavy cream yields a thick, creamy curry sauce. If you only have a can of whole peeled tomatoes, simply blend them and use them in the sauce.
Find the full recipe with measurements below.
How to Make Butter Chicken
Tip 1: Marinate the chicken. Yogurt is pretty magical in marinades, tenderizing protein like a charm (see our yogurt marinated chicken as proof). In this recipe, you’ll marinate your chicken with yogurt, garlic, ginger, and spices. We recommend at least 1 hour, but you can leave it for longer (just keep it in the fridge).
Tip 2: Cook the chicken separately. This one might seem odd, but the secret to the best butter chicken is to roast your marinated chicken in a hot oven until cooked with some lightly charred edges, then stir it into the sauce. It’s simple to do, and this two-step process lets you cook your chicken and make the butter chicken sauce simultaneously, saving a bit of cook time.


Tip 3: Make the sauce while the chicken roasts. This recipe intentionally makes a lot of servings (8), so we are guaranteed leftovers (which only get better over time!). I use my 6-quart Dutch oven for making the sauce, and it’s perfect.
Once your chicken is in the oven, you can start the sauce. It’s simpler than you might think, starting with onions, garlic, and ginger cooked in ghee until soft. Then, you’ll stir in spices, tomato sauce, cream, and dried basil. The sauce only simmers for 15 minutes, and you’re ready for the butter part of the butter chicken (hooray!).


Tip 4: Add the butter slowly. We ask that you cut your butter into pieces, then stir them into the sauce a few at a time. This helps the butter emulsify into the sauce. If at any point it looks like the sauce is “breaking” or the fat is separating, whisk it back together.


Tip 5: Simmer the chicken in the sauce for 10 minutes. Once your chicken and sauce are ready, spoon all the chicken (and all of the juices from your roasting pan) into the sauce. Then, simmer for 10 minutes to bring it all together.


Tip 6: Serving it. Spoon the chicken and lots of the sauce over fluffy rice (long-grain Basmati is my favorite) and don’t forget some naan or flatbread for scooping up every last bit of sauce. A scattering of cilantro leaves on top is nice, too.
More Curry Recipes


Seriously Good Butter Chicken
We always find ourselves smiling when this butter chicken is on the menu. The sauce is thick, creamy, and intentionally generous, so you’ll have plenty for swooping through naan or adding to rice. While we prefer chicken thighs because they turn out incredibly tender after roasting, this recipe is flexible. Chicken breasts or even bone-in pieces work well—just see our tip below the recipe for adjusting the cook time.
A tip from Adam: “Don’t be afraid to let your chicken brown and crisp at the tips in the hot oven; those charred bits add a lot of flavor and provide a better texture.”
8 Servings
You Will Need
For the Butter Chicken Marinade:
1 cup (225 g) plain whole-milk yogurt
3 garlic cloves, finely grated or minced
1 (3-inch) piece fresh ginger, peeled and finely grated (about 2 tablespoons)
1 tablespoon sweet paprika
½ teaspoon gochugaru or crushed red pepper flakes
1 ½ teaspoons garam masala
1 teaspoon ground turmeric
1 ½ teaspoons fine sea salt
3 tablespoons fresh lemon juice (from 1 large lemon)
2 tablespoons neutral oil, such as avocado or vegetable oil
3 pounds (1.3 kg) boneless, skinless chicken thighs, trimmed and cut into 1-inch bite-size pieces
For the Sauce:
4 tablespoons ghee or neutral oil, such as avocado or vegetable oil
1 medium yellow onion, finely chopped
4 garlic cloves, minced or finely grated
1 (2-inch) piece fresh ginger, peeled and finely grated (about 1 tablespoon)
2 teaspoons ground coriander
2 teaspoons ground cumin
1 teaspoon gochugaru or crushed red pepper flakes, reduce by ½ teaspoon for mild
1 (28-ounce) can tomato sauce or tomato puree (about 3 cups)
1 ½ cups (360 g) heavy cream
6 tablespoons (85 g) unsalted butter, cut into 1-inch cubes
2 teaspoons dried basil
Fine sea salt, to taste
Cooked basmati rice for serving
Directions
1Make the marinade: In a large bowl, whisk together the yogurt, garlic, ginger, paprika, gochugaru, garam masala, turmeric, salt, lemon juice, and oil. Add the chicken and toss to coat. Cover and refrigerate for at least 1 hour or up to 24 hours.
2Cook the chicken: Heat the oven to 425°F (220°C). Line a large rimmed baking sheet with parchment paper. Spread the chicken in a single layer on the prepared pan. Roast for 30 to 40 minutes, until the chicken is cooked through and the edges begin to brown and caramelize in spots.
3Prepare the sauce: While the chicken roasts, melt the ghee in a Dutch oven or a wide, deep pot over medium heat. Add the onion and cook, stirring occasionally, until softened and beginning to turn golden brown, about 8 minutes. Add the garlic, ginger, coriander, cumin, and gochugaru and cook for 1 to 2 minutes.
4Stir in the tomato sauce, heavy cream, and basil. Bring the mixture to a simmer and cook, stirring occasionally, until the sauce has thickened slightly, about 15 minutes.
5Whisk in the butter, two to three cubes at a time, until melted and the sauce is glossy. (If the sauce appears to break, whisk vigorously to recombine; if it is too thick, stir in a splash of water to thin.)
6Spoon the roasted chicken and all the accumulated juices from the baking sheet into the sauce. Simmer for 10 minutes. Taste and season with more salt, if needed.
Adam and Joanne’s Tips
- Storing: Keep in airtight containers, in the fridge, for up to 4 days. Reheat slowly on the stove.
- Substituting chicken breast: Reduce the roasting time by 5 to 10 minutes. Transfer the chicken to the sauce while the center is still slightly underdone, so it finishes cooking without drying out.
- Substituting bone-in chicken: For bone-in thighs or drumsticks, increase the oven time by 10 to 15 minutes to ensure the meat pulls away from the bone easily.
- Tomatoes: Use 3 cups pureed fresh, peeled tomatoes, or puree one (28-ounce) can whole tomatoes.
- The nutrition facts provided are estimates and do not include rice.
Nutrition Per Serving
Serving Size
1 of 8 servings
/
Calories
503
/
Total Fat
34.7g
/
Saturated Fat
17.3g
/
Cholesterol
227.4mg
/
Sodium
633.2mg
/
Carbohydrate
11.2g
/
Dietary Fiber
2.3g
/
Total Sugars
6.3g
/
Protein
37.1g
