
Homemade Butter Chicken Recipe tastes rich, creamy, and tomatoey with just the right hit of warm spice and a little sweetness. It suits busy weeknights, date nights at home, and casual dinner parties, and you can get it on the table in about 45 minutes if you marinate ahead. I first cooked this for friends in my tiny college apartment, and they still text me photos when they make it.
Why Make This Homemade Butter Chicken Recipe at Home
You control the flavor, the spice level, and the quality of the ingredients, which matters a lot with a dish this rich. You also skip the food coloring and mystery sweeteners that some takeout versions use, while still getting that restaurant-style creamy sauce.
You can also tweak the Homemade Butter Chicken Recipe to fit your diet, like using less cream, swapping in yogurt, or using ghee instead of butter. Plus, your kitchen smells like an Indian restaurant in the best possible way, which might convince your neighbors to bring dessert.
This Homemade Butter Chicken Recipe tastes like restaurant-quality comfort food at home, with tender chicken and a luxuriously creamy sauce that everyone devours. ★★★★★
Ingredients You Need
Chicken and Marinade
- 1.5 pounds boneless, skinless chicken thighs, cut into bite-size pieces
- Use thighs for tenderness; use chicken breast if you prefer leaner meat, but do not overcook it.
- 1 cup plain full-fat yogurt
- Greek yogurt works; thin it with 1 to 2 tablespoons water if very thick.
- 2 tablespoons lemon juice
- 1.5 tablespoons ginger garlic paste
- Shortcut: use store-bought ginger garlic paste from an Indian brand like Swad or Deep.
- 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
- Kashmiri chili gives color with gentle heat; use half regular chili powder if you like more spice.
Sauce
- 3 tablespoons unsalted butter
- Use ghee for a nuttier flavor and higher heat tolerance.
- 1 tablespoon neutral oil (canola, avocado, or sunflower)
- 1 large yellow onion, finely chopped
- 1.5 tablespoons ginger garlic paste
- 1.5 teaspoons ground cumin
- 1.5 teaspoons ground coriander
- 1 teaspoon garam masala
- 1 teaspoon Kashmiri chili powder or mild chili powder
- 1 teaspoon paprika
- 1 teaspoon sugar or honey
- This balances the acidity of the tomatoes; adjust to taste.
- 1 can (14 to 15 ounces) tomato puree or crushed tomatoes
- Use a smooth puree like Mutti or Cento for a silkier sauce.
- 1/2 to 3/4 cup heavy cream
- Swap with half-and-half or full-fat coconut milk if needed, but flavor changes slightly.
- 1/2 cup water, plus more as needed
- 1 teaspoon fenugreek leaves (kasuri methi), crushed between your fingers
- This ingredient gives that classic restaurant butter chicken flavor; skip only if you must.
- 1 teaspoon kosher salt, plus more to taste
Optional Garnishes
- Extra drizzle of heavy cream
- Small knob of butter on top
- Fresh cilantro, chopped
- Thinly sliced green chili for extra heat
Pantry Shortcuts
- Use store-bought tandoori masala in the marinade instead of measuring individual spices.
- Use jarred ginger garlic paste instead of fresh chopping.
- Use canned tomato puree instead of blending fresh tomatoes.
Equipment List
- Large mixing bowl for marinating chicken
- Cutting board and sharp knife
- Large heavy skillet or sauté pan (stainless or nonstick)
- Tongs or a spatula
- Wooden spoon
- Measuring cups and spoons
- Small bowl for spice mix
- Optional: immersion blender or regular blender if you want an ultra-smooth sauce
Tips & Mistakes
- Cut chicken into even pieces so it cooks at the same rate.
- Marinate at least 30 minutes; aim for 4 to 8 hours for deeper flavor.
- Do not overcrowd the pan when you sear the chicken; cook in batches to get color, not steam.
- Brown the chicken lightly; you just want some charred spots, not fully cooked pieces at this stage.
- Keep heat at medium when cooking onions so they soften and turn golden without burning.
- Cook spices in fat for at least 30 to 60 seconds so they bloom and taste toasty, not raw.
- Add cream after you simmer the tomatoes so it does not split from high heat.
- Taste the sauce at the end and adjust salt, sugar, and chili so it fits your preferences.
- Do not boil the sauce hard after adding cream; keep it at a gentle simmer.
- Crush fenugreek leaves between your fingers before adding so they release maximum aroma.
- If the sauce tastes too tangy, add a bit more cream and a pinch of sugar.
- If the sauce tastes flat, add a pinch of salt and a tiny squeeze of lemon juice.
How to Make Homemade Butter Chicken Recipe
Step 1: Marinate the Chicken
Add chicken pieces to a large bowl.
Stir in yogurt, lemon juice, ginger garlic paste, salt, garam masala, cumin, coriander, and chili powder.
Coat every piece of chicken evenly, cover the bowl, and chill it in the fridge for at least 30 minutes and up to 8 hours.
Step 2: Sear the Chicken
Heat 1 tablespoon oil and 1 tablespoon butter in a large skillet over medium-high heat.
Add half the marinated chicken in a single layer and cook 3 to 4 minutes per side until you see golden spots and the outside looks cooked.
Transfer the chicken to a plate, then repeat with the remaining chicken, adding a bit more oil if the pan looks dry.
Step 3: Cook the Aromatics
Turn heat down to medium and add 1 tablespoon butter to the same pan.
Add chopped onion and cook 7 to 10 minutes, stirring often, until soft and deep golden around the edges.
Stir in ginger garlic paste and cook 1 to 2 minutes until it smells fragrant and no longer raw.
Step 4: Toast the Spices
Add cumin, coriander, garam masala, Kashmiri chili, and paprika to the onions.
Stir constantly for 30 to 60 seconds so the spices toast in the fat and release aroma.
If the pan looks too dry or spices stick, splash in 1 to 2 tablespoons water and scrape the bottom.
Step 5: Build the Tomato Base
Pour in tomato puree and stir to combine with the onion and spice mixture.
Add sugar and 1/2 teaspoon salt, then add 1/2 cup water and stir again.
Bring the mixture to a gentle simmer and cook 8 to 10 minutes, stirring occasionally, until the sauce thickens slightly and the raw tomato smell mellows.
Step 6: Blend for a Silky Sauce (Optional)
If you want a super smooth butter chicken, transfer the sauce to a blender or use an immersion blender in the pan.
Blend until completely smooth and velvety, then return the sauce to the pan.
If you skip blending, the sauce still tastes great; it just keeps a bit more texture from the onions.
Step 7: Add Cream and Chicken
Lower heat to medium-low.
Stir in heavy cream and the remaining 1 tablespoon butter until the sauce turns a rich orange color.
Add the seared chicken pieces and any juices from the plate, then stir to coat every piece in the sauce.
Step 8: Simmer and Finish
Let the chicken simmer in the sauce for 8 to 10 minutes until the chicken cooks through and feels tender.
Crush fenugreek leaves between your fingers and sprinkle them into the pan, then stir.
Taste and adjust with more salt, a pinch of sugar, or a splash of water if the sauce tastes too thick.
Step 9: Garnish and Serve
Turn off the heat and let the butter chicken sit for 2 to 3 minutes so the flavors settle.
Drizzle a little cream on top and add a small knob of butter if you want that restaurant-style finish.
Sprinkle with chopped cilantro and serve hot.
Variations I've Tried
I swap heavy cream with full-fat coconut milk when I cook for dairy-free friends, and the sauce still tastes rich with a slight coconut note.
I also use paneer instead of chicken for a vegetarian version; I marinate and sear the paneer cubes gently so they stay soft.
Sometimes I add a handful of cashews blended with water to the sauce for extra body and a natural sweetness.
On busy nights, I cook the chicken in the air fryer or oven, then drop the pieces into the finished sauce, which saves stovetop time.
How to Serve Homemade Butter Chicken Recipe
Serve this Homemade Butter Chicken Recipe with fluffy basmati rice, warm naan, or soft roti so you can scoop up every bit of sauce.
Add a simple cucumber and tomato salad or sliced cucumbers with a squeeze of lemon to cut through the richness.
You can also serve it with steamed vegetables like green beans or broccoli for a full meal.
If you cook for kids or spice-sensitive guests, keep some plain yogurt on the side to cool things down.
How to store
- Cool butter chicken to room temperature within 1 hour, then transfer it to airtight containers.
- Store in the fridge for up to 3 to 4 days; reheat gently on the stove over low heat, adding a splash of water or cream if the sauce thickens.
- Freeze in freezer-safe containers or bags for up to 2 to 3 months; label with the date so you track freshness.
- Thaw overnight in the fridge, then reheat on the stovetop over low to medium heat, stirring often, or reheat in the microwave in short bursts, stirring between each burst so the sauce heats evenly.
