
Butter Chicken Curry Recipe tastes rich, creamy, and mildly spiced, with tender chicken in a silky tomato butter sauce that feels like a cozy restaurant meal at home. It suits busy weeknights or relaxed weekends, since you finish it in about 45 minutes if you marinate the chicken ahead of time. I first tested this version after a long shift at my old restaurant job, and it still hits that same “ahhh, I’m home” feeling every time.
Why Make This Butter Chicken Curry Recipe at Home
You control the spice level, the creaminess, and the quality of ingredients, so the curry fits your taste perfectly. You also skip artificial colors and mystery sweetness, while still getting that familiar restaurant-style butter chicken flavor.
Homemade butter chicken curry usually costs less than takeout and reheats beautifully for lunches. You also fill your kitchen with that buttery, tomatoey aroma that makes everyone wander in and ask when dinner starts.
“This Butter Chicken Curry Recipe tastes better than our local restaurant version and still feels easy enough for a weeknight. ★★★★★”
Ingredients You Need
Chicken and Marinade
- 1.5 pounds boneless, skinless chicken thighs, cut into bite-size pieces
- Thighs stay juicy and forgiving; you can use chicken breast, but watch the cook time.
- 1 cup plain whole milk yogurt
- Greek yogurt works; thin it slightly with water if very thick.
- 1 tablespoon lemon juice or lime juice
- 1 tablespoon grated fresh ginger
- 1 tablespoon grated garlic
- 1.5 teaspoons kosher salt
- 1.5 teaspoons garam masala
- 1 teaspoon ground cumin
- 1 teaspoon ground coriander
- 1 teaspoon Kashmiri chili powder or mild chili powder
- Paprika works as a mild, kid-friendly option.
Sauce Base
- 3 tablespoons unsalted butter
- Use a good quality butter; it really affects flavor in this curry.
- 1 tablespoon neutral oil (like avocado or canola)
- The oil keeps the butter from browning too fast.
- 1 large yellow onion, finely chopped
- 1.5 tablespoons grated fresh ginger
- 1.5 tablespoons grated garlic
- 1.5 teaspoons ground cumin
- 1 teaspoon ground coriander
- 1 teaspoon paprika or Kashmiri chili powder
- 1 teaspoon garam masala
- 1 teaspoon sugar or honey
- This balances the acidity of the tomatoes.
Tomato and Cream
- 1 can (14 to 15 ounces) tomato puree or crushed tomatoes
- I like Mutti or Cento for a smooth, bright flavor.
- 1/2 cup water, plus more as needed
- 3/4 cup heavy cream
- You can swap half-and-half, but the sauce turns slightly thinner.
- 2 tablespoons unsalted butter, cut into small pieces
- 1 teaspoon fenugreek leaves (kasuri methi), crushed between your fingers
- This ingredient gives that classic butter chicken aroma; skip only if you must.
- Salt to taste
Optional Garnishes
- Fresh cilantro, chopped
- Extra drizzle of cream
- A small knob of butter on top of the hot curry
Pantry Shortcuts
- Use jarred ginger garlic paste instead of fresh: 2 to 3 tablespoons total.
- Use pre-mixed butter chicken spice blend instead of separate spices: 2 to 3 tablespoons in the marinade and 1 to 2 tablespoons in the sauce, then adjust salt.
- Use pre-cut chicken pieces to save prep time.
Equipment List
- Large mixing bowl for marinating chicken
- Large heavy skillet, sauté pan, or wide pot
- Tongs or a spatula
- Cutting board and sharp knife
- Grater or microplane for ginger and garlic
- Measuring spoons and cups
- Blender or immersion blender if you want a super smooth sauce
Tips & Mistakes
- Marinate the chicken at least 30 minutes; aim for 2 to 8 hours for deeper flavor.
- Cut chicken pieces the same size so they cook evenly and stay tender.
- Brown the chicken lightly; avoid overcooking it in the first stage since it finishes in the sauce.
- Sauté the onions until they turn soft and lightly golden; pale onions give a flat-tasting curry.
- Use enough butter and cream; if you cut them too much, you lose that signature richness.
- Taste the sauce before adding chicken; adjust salt, sugar, and chili so the flavor hits perfectly.
- Crush fenugreek leaves between your fingers to release aroma instead of tossing them in whole.
- Keep the heat low after adding cream so it stays silky and does not split.
- Avoid thin, watery tomatoes; use a good brand of puree or crushed tomatoes for a smooth sauce.
- Let the finished curry rest 5 to 10 minutes before serving so the flavors settle and the sauce thickens slightly.
How to Make Butter Chicken Curry Recipe
Step 1: Marinate the Chicken
Add yogurt, lemon juice, ginger, garlic, salt, garam masala, cumin, coriander, and chili powder to a large bowl. Stir until the marinade looks smooth and well mixed. Add the chicken pieces and coat them thoroughly, then cover and chill at least 30 minutes or up to 8 hours.
Step 2: Sear the Chicken
Heat a large skillet over medium-high heat and add 1 tablespoon oil and 1 tablespoon butter. Shake excess marinade off the chicken pieces and place them in a single layer in the hot pan. Sear the chicken in batches until the outside turns lightly browned and mostly cooked through, about 3 to 4 minutes per side, then transfer to a plate.
Step 3: Cook the Aromatics
Lower the heat to medium and add 2 tablespoons butter to the same pan. Add the chopped onion and cook until soft and lightly golden, about 6 to 8 minutes, while you stir often. Add ginger and garlic, then cook 1 to 2 minutes until the mixture smells very fragrant.
Step 4: Toast the Spices
Sprinkle in cumin, coriander, paprika or chili powder, and garam masala. Stir constantly for 30 to 60 seconds so the spices toast and release aroma without burning. If the pan looks dry, splash in a tablespoon of water to keep the spices from sticking.
Step 5: Add Tomatoes and Simmer
Pour in the tomato puree and 1/2 cup water, then stir to combine with the onion and spice mixture. Bring the mixture to a gentle simmer, then lower the heat and cook 10 to 12 minutes, stirring occasionally, until the sauce thickens slightly and the raw tomato smell mellows. Taste and add sugar, plus salt if needed, to balance the acidity.
Step 6: Blend for a Silky Sauce (Optional but Nice)
Turn off the heat and let the sauce cool slightly. Blend the sauce in a blender or with an immersion blender until it turns very smooth, then return it to the pan. If you prefer a rustic texture, skip blending and move straight to the next step.
Step 7: Add Cream, Butter, and Fenugreek
Turn the heat to low and stir in the cream until the sauce looks rich and orange. Add the remaining 2 tablespoons butter in small pieces and stir until it melts into the sauce. Crush fenugreek leaves between your fingers and stir them in, then taste and adjust salt and chili.
Step 8: Finish the Chicken in the Sauce
Slide the seared chicken and any juices from the plate into the sauce. Simmer on low heat for 8 to 10 minutes until the chicken turns tender and fully cooked and the sauce thickens to a spoon-coating consistency. Turn off the heat, let the curry rest 5 minutes, then garnish with cilantro and a drizzle of cream if you like.
Variations I've Tried
I swap the chicken for paneer cubes and peas when I cook a vegetarian version, and the sauce still tastes rich and satisfying. I also tried a lighter version with half-and-half instead of cream and a bit less butter; it tasted great, just slightly less indulgent. Sometimes I add a spoonful of tomato paste with the puree for deeper tomato flavor, especially when I use a milder brand of canned tomatoes.
I also tested a coconut milk version for dairy-sensitive friends and used coconut cream plus oil instead of butter and heavy cream. The flavor shifts slightly toward a coconut curry, but the spices still shine and the texture stays velvety. If I want extra heat, I add a chopped green chili or a pinch of cayenne near the end of cooking.
How to Serve Butter Chicken Curry Recipe
Serve this Butter Chicken Curry Recipe over fluffy basmati rice so the grains soak up the buttery tomato sauce. Warm naan, roti, or even simple flatbreads make perfect scoops for every last bit of curry. I like to add a side of cucumber raita or plain yogurt and a quick salad of sliced onions, tomatoes, and cilantro.
If you cook for kids or spice-sensitive eaters, keep extra cream or yogurt on the table so everyone can mellow their bowl. A squeeze of lime over each serving brightens the richness and makes the spices pop.
How to store
- Cool the butter chicken curry to room temperature, then store it in airtight containers in the fridge for up to 3 to 4 days.
- Freeze portions in freezer-safe containers or bags for up to 2 to 3 months; leave a little space at the top for expansion.
- Reheat gently on the stovetop over low to medium heat, adding a splash of water or cream if the sauce thickens too much.
- Reheat single portions in the microwave in short bursts, stirring between each burst so the chicken heats evenly and stays tender.

Butter Chicken Curry Recipe
Ingredients
Method
- In a large bowl, whisk together the yogurt, lemon juice, grated ginger, grated garlic, salt, garam masala, cumin, coriander, and chili powder until smooth.
- Add the chicken pieces and toss to coat thoroughly in the marinade. Cover and refrigerate for at least 30 minutes and up to 8 hours.
- Heat a large skillet over medium-high heat. Add 1 tablespoon neutral oil and 1 tablespoon of the butter.
- Shake excess marinade off the chicken and arrange the pieces in a single layer in the hot pan. Sear in batches if needed, cooking 3 to 4 minutes per side until lightly browned and mostly cooked through. Transfer the chicken to a plate and set aside.
- Reduce the heat to medium and add the remaining 2 tablespoons butter to the same pan.
- Add the chopped onion and cook, stirring often, until soft and lightly golden, about 6 to 8 minutes.
- Stir in the grated ginger and grated garlic and cook for 1 to 2 minutes, until very fragrant.
- Sprinkle in the cumin, coriander, paprika or Kashmiri chili powder, and garam masala. Stir constantly for 30 to 60 seconds to toast the spices, adding a splash of water if the pan looks too dry.
- Pour in the tomato puree and 1/2 cup water. Stir to combine with the onion and spice mixture, then bring to a gentle simmer.
- Lower the heat and simmer for 10 to 12 minutes, stirring occasionally, until the sauce thickens slightly and the raw tomato smell mellows. Stir in the sugar or honey and adjust salt to taste.
- Turn off the heat and let the sauce cool slightly. Blend the sauce with an immersion blender or in a blender until very smooth, if a silky texture is desired, then return it to the pan.
- Set the pan over low heat and stir in the heavy cream until the sauce turns rich and orange.
- Add the remaining butter pieces and stir until melted into the sauce. Crush the fenugreek leaves between your fingers and stir them in. Taste and adjust salt and chili as needed.
- Return the seared chicken and any accumulated juices to the pan. Simmer gently on low heat for 8 to 10 minutes, or until the chicken is tender, fully cooked, and the sauce coats the back of a spoon.
- Turn off the heat and let the curry rest for 5 minutes. Garnish with chopped cilantro, an extra drizzle of cream, or a small knob of butter before serving, if desired.
Notes
Approximate per serving (1/6 of recipe): 420 calories; fat 30 g; saturated fat 15 g; carbohydrates 12 g; fiber 2 g; sugars 6 g; protein 26 g; sodium 650 mg. Values will vary based on exact ingredients, brands, and portion size.
