Butter Chicken Curry Recipe tastes rich, creamy, and a little smoky, but still feels weeknight-friendly for a regular Tuesday on a real-life budget. You use simple pantry spices and canned tomato sauce, so the recipe stays affordable without sacrificing that restaurant-style flavor. It works for beginners and busy home cooks, and you can get it on the table in about 45 minutes; I have cooked this so many times that my kids call it “house chicken.”
Reasons To Try This Butter Chicken Curry Recipe
This butter chicken curry recipe delivers tender chicken in a silky tomato cream sauce that clings to every grain of rice. The spices taste warm and cozy, not fiery, so kids and spice-shy adults usually go back for seconds.
You use one pan, basic ingredients, and a quick yogurt marinade, so the recipe fits into a weeknight without drama. Leftovers taste even better the next day, which makes your future self very happy.
“Tastes like my favorite Indian restaurant but costs way less and comes with leftovers for lunch.” ★★★★★
Ingredients You Need

Chicken and Marinade
- 1.5 pounds boneless, skinless chicken thighs, cut into bite-size pieces
- Thighs stay juicy and forgiving; use chicken breast if you prefer, but cook it slightly less.
- 1 cup plain whole milk yogurt
- Greek yogurt works; thin it with 2 tablespoons water.
- 2 tablespoons lemon juice or lime juice
- 3 cloves garlic, finely grated or minced
- 1 tablespoon fresh ginger, finely grated
- 1.5 teaspoons kosher salt
- 1.5 teaspoons garam masala
- 1 teaspoon ground cumin
- 1 teaspoon smoked or sweet paprika
- 0.5 teaspoon ground turmeric
- 0.25 teaspoon cayenne pepper
- Use less for mild heat or skip for very mild butter chicken curry.
Sauce
- 3 tablespoons unsalted butter
- Use ghee for deeper flavor; use a mix of butter and neutral oil to stretch your budget.
- 1 tablespoon neutral oil (avocado, canola, or light olive oil)
- 1 large yellow onion, finely chopped
- 3 cloves garlic, minced
- 1 tablespoon fresh ginger, minced
- 1.5 teaspoons garam masala
- 1 teaspoon ground coriander
- 1 teaspoon ground cumin
- 1 teaspoon smoked or sweet paprika
- 0.5 teaspoon turmeric
- 0.25 to 0.5 teaspoon cayenne pepper, to taste
- 1.5 cups tomato sauce or pureed canned tomatoes
- 1 cup water or low sodium chicken broth
- 0.75 to 1 cup heavy cream
- For a lighter version, use half and half or full fat coconut milk.
- 1 tablespoon sugar or honey
- This balances the acidity of the tomatoes.
- 0.5 to 1 teaspoon kosher salt, to taste
- Fresh cilantro, chopped, for garnish
- Extra butter, a small knob, for finishing, optional
Pantry Shortcuts and Substitutions
- Use jarred ginger garlic paste: 2 tablespoons in the marinade and 2 tablespoons in the sauce.
- Use pre-cut chicken from the store to save prep time.
- Use store-bought garam masala; I like Frontier Co-op or Simply Organic for consistent flavor.
- Use canned tomato puree or crushed tomatoes if you do not have tomato sauce; blend if chunky.
Equipment List
- Large skillet or wide Dutch oven with lid
- Medium bowl for marinating chicken
- Cutting board and sharp knife
- Measuring spoons and cups
- Wooden spoon or silicone spatula
- Tongs
- Small bowl and whisk for mixing cream and sauce, optional
Tips
- Marinate the chicken at least 20 minutes; aim for 2 to 4 hours for deeper flavor.
- Cut chicken into even pieces so they cook at the same rate.
- Brown the chicken in batches so it sears instead of steams.
- Cook the onions low and slow until they turn golden for sweeter sauce.
- Toast the spices in fat for 30 to 60 seconds to wake up their flavor.
- Thin the sauce with water or broth if it thickens too much.
- Add cream off the heat or on very low so it stays silky and does not curdle.
- Taste at the end and adjust salt, sugar, and cayenne so the flavor pops.
- Chill leftovers quickly and store them in shallow containers for best texture.
How to Make Butter Chicken Curry

1: Marinate the chicken
Add the yogurt, lemon juice, garlic, ginger, salt, garam masala, cumin, paprika, turmeric, and cayenne to a medium bowl. Whisk until the marinade looks smooth and evenly mixed. Add the chicken pieces and coat them well, then cover and chill for at least 20 minutes and up to 24 hours.
2: Sear the marinated chicken
Heat 1 tablespoon oil and 1 tablespoon butter in a large skillet over medium high heat. Shake excess marinade off the chicken pieces and place them in the pan in a single layer; work in two batches if needed. Sear the chicken for 3 to 4 minutes per side until the outside browns and the edges look cooked, then transfer the pieces to a plate; they will finish cooking in the sauce.
3: Cook the onions and aromatics
Lower the heat to medium and add another tablespoon of butter to the same pan. Add the chopped onion and a pinch of salt, then cook and stir until the onion turns soft and deep golden, about 8 to 10 minutes. Stir in the garlic and ginger and cook 1 to 2 minutes until they smell fragrant and slightly sticky.
4: Toast the spices
Add garam masala, coriander, cumin, paprika, turmeric, and cayenne to the onion mixture. Stir constantly for 30 to 60 seconds so the spices toast in the hot fat and coat the onions. Scrape the bottom of the pan to pick up any browned bits from the chicken.
5: Add tomatoes and simmer
Pour in the tomato sauce and water or broth while you stir. Bring the mixture to a gentle simmer, then lower the heat and cook for 10 minutes, stirring occasionally, until the sauce thickens slightly and the raw tomato taste softens. Taste and add sugar and a pinch of salt to balance the acidity.
6: Blend for extra silky sauce (optional)
For restaurant-style butter chicken curry, turn off the heat and carefully transfer the sauce to a blender. Blend until the mixture turns very smooth and velvety, then pour it back into the pan. You can skip this step if you enjoy a more rustic texture with visible onion pieces.
7: Finish the sauce with cream and butter
Turn the heat to low and stir in the heavy cream until the sauce looks rich and orange. Add 1 to 2 tablespoons butter for extra gloss and flavor. Taste and adjust salt, sugar, and cayenne until the sauce tastes balanced and slightly addictive.
8: Simmer the chicken in the sauce
Slide the seared chicken and any juices from the plate into the pan. Stir to coat every piece with sauce, then cover and simmer on low for 8 to 10 minutes until the chicken cooks through and turns very tender. Stir occasionally so the bottom does not stick, and thin with a splash of water if the sauce thickens too much.
9: Finish and garnish
Turn off the heat and let the butter chicken curry rest for 5 minutes so the flavors settle. Sprinkle chopped cilantro on top and add a small knob of butter in the center if you feel fancy. Serve hot with rice, naan, or your favorite flatbread.
Different Ways to Try It
- Gluten free: Serve with basmati rice, cauliflower rice, or roasted potatoes; check that your garam masala and broth list gluten free on the label.
- Dairy light: Use half coconut milk and half broth instead of heavy cream; use oil instead of butter in the base.
- Fully dairy free: Use coconut yogurt for the marinade and coconut milk in the sauce, and cook with oil instead of butter.
- Low carb: Serve over cauliflower rice, sautéed cabbage, or steamed green beans.
- Extra veggies: Add peas, spinach, or small cauliflower florets during the last 10 minutes of simmering.
- Extra protein: Stir in cooked chickpeas or cubes of paneer or tofu along with the chicken.
How to Serve Butter Chicken Curry
Serve this butter chicken curry recipe over fluffy basmati rice or jasmine rice so the grains soak up the sauce. Warm naan, roti, or even simple tortillas work great for scooping and swiping the pan clean. Add a crisp side salad with cucumber, tomato, and red onion or a simple bowl of steamed green beans for freshness. Offer lime wedges, extra cilantro, and a spoonful of plain yogurt on the side so everyone can customize their bowl.
Make-Ahead and Storage Success
You can marinate the chicken up to 24 hours ahead and keep it in the fridge, which makes the cooking part go very fast. Store cooked butter chicken curry in an airtight container in the refrigerator for up to 4 days. Reheat gently on the stove over low heat and add a splash of water or cream if the sauce thickens. Freeze cooled curry in freezer-safe containers for up to 3 months, then thaw overnight in the fridge and reheat slowly so the sauce stays creamy.
Ingredients
Instructions
- In a large bowl, combine yogurt, lemon juice, garam masala, cumin, coriander, turmeric, salt, garlic, and ginger. Add the chicken pieces and toss to coat well.
- Cover and marinate in the refrigerator for at least 30 minutes, or up to 8 hours for deeper flavor.
- Heat 1 tablespoon of butter in a large skillet over medium-high heat. Add the marinated chicken in a single layer, shaking off excess marinade, and cook until lightly browned and just cooked through, about 6–8 minutes. Remove the chicken to a plate and set aside.
- In the same skillet, add the remaining 2 tablespoons of butter. Add the chopped onion and cook over medium heat until soft and golden, 5–7 minutes.
- Stir in the garlic and ginger and cook until fragrant, about 1 minute.
- Add garam masala, cumin, coriander, chili powder, and cayenne (if using). Stir constantly for 30–60 seconds to toast the spices lightly.
- Pour in the crushed tomatoes, water, sugar, and salt. Stir well, bring to a gentle simmer, and cook for 10 minutes, stirring occasionally.
- Reduce the heat to low and slowly stir in the heavy cream until fully combined and the sauce is smooth and creamy.
- Return the cooked chicken and any accumulated juices to the pan. Simmer gently for 8–10 minutes, or until the chicken is tender and the sauce has thickened to your liking.
- Taste and adjust seasoning with additional salt if needed. If desired, sprinkle with chopped fresh cilantro before serving.
- Serve hot with steamed basmati rice or naan.
Notes
Approximate per serving (1/4 of recipe): 520 calories; fat 36 g; saturated fat 18 g; carbohydrates 14 g; fiber 2 g; sugars 6 g; protein 35 g; sodium 780 mg. Values are estimates and will vary based on specific ingredients, brands, and portion size.