Main Courses
This authentic butter chicken recipe transforms rich Indian flavors with the velvety depth of coconut milk, creating a fusion that's both traditional and innovative.
The secret lies in marinating chicken with yogurt and spices, then slow-cooking it until tender while building a sauce that balances tangy tomatoes, creamy coconut milk, and aromatic cashews. Every bite delivers that signature buttery richness with a modern twist—no shortcuts, just layers of flavor developed through time-tested techniques.
The beauty of this method is its simplicity: one pot handles everything from marinating to sauce-making, while traditional spices like garam masala and fenugreek leaves infuse depth without overpowering.
The coconut milk adds a luxurious creaminess that pairs perfectly with the smoky char of grilled chicken, all while keeping the dish authentically Indian at its core. This isn't just butter chicken—it's a celebration of how coconut milk can elevate classic flavors into something even more extraordinary.
By the time you serve this dish, you'll have golden-brown chicken swimming in a sauce that's silky-smooth yet complex, with notes of caramelized onions and toasted spices. The aroma alone will have everyone gathering at the table, and the first bite delivers that perfect balance of heat, sweetness, and richness.
Serve it with basmati rice or warm naan to soak up every last drop of that luscious sauce—this is comfort food at its finest, made even better with coconut milk's velvety touch.
Whether you're feeding a crowd or meal prepping for the week, this recipe scales beautifully while maintaining its restaurant-quality depth. The key is patience—letting the flavors meld and the chicken become fork-tender.
Once you try this version, you'll never go back to the traditional butter chicken you know. Let's get cooking!
Ingredients for authentic butter chicken recipe with coconut milk
These rich, aromatic ingredients blend into a velvety fusion of coconut-tomato butter chicken.
| Ingredient | Amount | Notes |
|---|---|---|
| Boneless Chicken Thighs 🍗 | 1 ½ lb | Skin-on for richer flavor |
| Plain Yogurt 🥛 | 1 cup | Full-fat, unsweetened |
| Full-Fat Coconut Milk 🥥 | 13 ½ oz | One standard can |
| Crushed Tomatoes 🍅 | 28 oz | San Marzano preferred |
| Garam Masala 🌶️ | 1 tbsp | Toasted for depth |
| Ground Cumin 🌿 | 1 tbsp | Freshly ground preferred |
| Ground Coriander 🌿 | 1 tbsp | Toasted for warmth |
| Turmeric Powder 🧂 | ½ tsp | Vibrant yellow color |
| Red Chili Powder 🌶️ | ½ tsp | Adjust for heat |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Fresh Fenugreek Leaves 🌿 | ¼ cup | Chopped finely |
| Yellow Onions 🧅 | 1 whole | Finely chopped |
| Garlic Cloves 🧄 | 6 cloves | Minced finely |
| Fresh Ginger 🌿 | 1 ½ tbsp | Grated finely |
| Cashews 🥜 | ¼ cup | Toasted lightly |
| Butter 🧈 | 4 tbsp | Unsalted for balance |
| Fresh Cilantro 🌿 | ¼ cup | Chopped for garnish |
| Lemon Juice 🍋 | 1 tbsp | Freshly squeezed |
The chicken thighs are non-negotiable here—bone-in would work, but thighs stay juicier than breasts. Look for free-range at Whole Foods or your local Indian market for the best flavor. Fresh fenugreek leaves are the secret weapon; substitute dried at one-third the amount if you can't find them. The coconut milk should be full-fat for that luxurious creaminess—Thai Kitchen brand is my go-to, but any canned brand works. Toast your whole spices (cumin, coriander) in a dry pan for 30 seconds before grinding—that's where the depth comes from.
No cashews? Macadamia nuts or walnuts work in a pinch, though the flavor will shift slightly. The yogurt can be Greek or regular, but full-fat is essential—it's what creates that signature tang. For the tomatoes, San Marzano cans are worth the splurge, but any good-quality crushed tomatoes will do. Fresh ginger and garlic should be grated/freshly minced—jarred ginger loses its punch. The butter at the end is what makes this dish authentically 'butter chicken'—don't skip it, even if you're using coconut milk.
This sauce gets better with time—plan to simmer for at least 45 minutes for maximum flavor development. Store leftovers in airtight containers for 4-5 days in the fridge, or freeze for 3 months. The sauce thickens as it cools, so add a splash of water or coconut milk when reheating. Garnish with fresh cilantro right before serving—it wilts fast, so wait until the last minute.
Why You'll Love This Recipe
- Coconut Cream Magic: The full-fat coconut milk turns this butter chicken into something richer than takeout—creamy, velvety, and with that just-right thickness. Honestly, the first time I swapped half the cream for coconut milk, I almost cried (in a good way).
- Marinate, Not Stress: Toss the chicken in yogurt and garam masala, then let it sit while you chop tomatoes—no fancy steps, just 15 minutes of hands-off magic. Between us, that’s the secret to tender, flavor-packed bites without standing over the stove.
- Leftovers That Beg: This sauce clings to chicken like glue, so every reheat tastes fresh—even better the next day. I’ve sent containers to work with coworkers who’ve never asked for seconds before. (Yes, even on a Tuesday night.)
- Budget Feast for Crowds: Coconut milk and crushed tomatoes stretch this recipe to feed four for half the cost of restaurant portions. My daughter picks out the best pieces, but still asks for seconds—proof it’s solid, not fancy.
Step-by-step instructions for creamy coconut-tomato butter chicken
Here's how to craft this rich, aromatic fusion where coconut milk meets traditional butter chicken techniques.
Marinate the Chicken for Maximum Flavor
In a large bowl, combine the 1.5 lb boneless chicken thighs, 1 cup plain yogurt, 1 tbsp garam masala, 1 tbsp ground cumin, 1 tbsp ground coriander, 0.5 tsp turmeric powder, 0.5 tsp red chili powder, and 1.5 tsp salt. Mix thoroughly until every piece is well coated in the marinade. Here's the thing—let the chicken marinate for at least 4 hours (overnight is even better) in the refrigerator. This resting period allows the spices to penetrate deeply, creating that signature tender yet flavorful texture we're after.
While the chicken marinates, finely chop the 1 whole yellow onion, mince the 6 cloves garlic, and grate the 1.5 tbsp fresh ginger. These aromatics will form the flavor base of our sauce. I like to toast the 0.25 cup cashews lightly in a dry pan for 2-3 minutes until they release their nutty aroma—this adds a subtle richness to the sauce later.
Brown the Chicken and Build the Aromatic Base
Heat a large Dutch oven or heavy pot over medium-high heat. Add 2 tbsp butter and let it melt completely. Working in batches to avoid crowding, add the marinated chicken thighs and cook for 3-4 minutes per side until they develop a beautiful golden-brown crust. This browning step is crucial—it creates the Maillard reaction that deepens the flavor profile of our dish.
Once all chicken is browned, remove it from the pot and set aside. In the same pot, reduce heat to medium and add the remaining 2 tbsp butter. Add the chopped onions and cook for 5-6 minutes until they soften and turn translucent. Add the garlic and ginger, cooking for another 1 minute until fragrant. Be careful not to let the garlic burn—it should smell sweet and inviting, not bitter.
Develop the Creamy Coconut-Tomato Sauce
Stir in the 28 oz crushed tomatoes, scraping up any browned bits from the bottom of the pot. Add 13.5 oz full-fat coconut milk, 0.25 cup chopped fresh fenugreek leaves, and bring the mixture to a gentle simmer. Here's where the magic happens: let the sauce cook uncovered for 20-25 minutes until it reduces slightly and thickens. You'll notice the sauce develop a beautiful golden color and rich aroma—this is your signal that the flavors are melding perfectly.
During this time, the fenugreek leaves will infuse the sauce with their distinctive bittersweet flavor, while the coconut milk adds a luxurious creaminess that balances the acidity of the tomatoes. Stir occasionally to prevent sticking, and if the sauce starts to look too thick, add 2-3 tablespoons of water to maintain the right consistency.
Finish with the Chicken and Garnish
Return the browned chicken thighs to the pot, nestling them into the sauce. Cover and simmer gently for 15-20 minutes until the chicken is cooked through and tender. The internal temperature should reach 165°F when checked with a meat thermometer. Here's the pro tip: don't skip the covering step—this traps steam and ensures the chicken cooks evenly without drying out.
Once the chicken is done, stir in the toasted cashews and 1 tbsp freshly squeezed lemon juice. This final touch brightens the rich flavors and adds a subtle crunch. Taste and adjust seasoning if needed—you might want to add a pinch more salt or a dash of chili powder to suit your preference. Garnish with 0.25 cup chopped fresh cilantro just before serving to add a fresh, vibrant finish.
Rest and Serve with Confidence
Let the butter chicken rest for 10 minutes before serving. This resting period allows the juices to redistribute throughout the chicken, ensuring each bite is moist and flavorful. Serve immediately over steamed basmati rice or with warm naan bread to soak up every last drop of that creamy coconut-tomato sauce.
The result should be tender, juicy chicken swimming in a velvety sauce that balances rich coconut flavors with the tangy brightness of tomatoes. Each bite delivers layers of aromatic spices, subtle heat, and that luxurious creaminess that makes this dish truly special. Trust the process, and you'll have an authentic-tasting butter chicken that rivals your favorite restaurant.
Pro Tips For Making Authentic Butter Chicken Recipe With Coconut Milk
- Marinate Chicken Overnight: I learned this the hard way—skipping the overnight soak means tougher meat and a sauce that fights for flavor. Toss thighs in yogurt, lemon juice, and a pinch of garam masala, then let them sit uncovered in the fridge. The acid tenderizes deeper, and the yogurt coating becomes your secret weapon when it hits the pan.
- Simmer Coconut Milk Low: Full-fat coconut milk curdles faster than you’d think when it hits hot spices. After adding it to the sauce, drop the heat to a bare simmer—just enough to see tiny bubbles—and stir constantly for the first 5 minutes. This isn’t the time to walk away; your sauce will thank you with a velvety finish, not a broken one.
- Crush Tomatoes by Hand: Canned crushed tomatoes work, but they’re a step removed from the real deal. Grab a handful of fresh tomatoes, smash them with the flat of your knife, then rough them up with your fingers—no need to peel or seed. The raw texture releases more juice into the sauce, giving it that bright, unprocessed punch that store-bought versions miss.
- Bloom Spices in Oil: Tossing garam masala directly into the yogurt or sauce? You’re missing out. Heat 1 tablespoon of ghee or oil in your pot first, then add the whole spices (if using) and toast them for 30 seconds until fragrant. This unlocks their oils and builds a flavor base that cuts through the coconut milk’s richness—like a warm-up act for your dish’s star.
Perfect pairings for this recipe
Rice Pairings
Steamed basmati rice is the classic choice for butter chicken—its delicate, floral aroma complements the rich coconut-tomato sauce beautifully. I recommend using long-grain basmati like Basmati 365 or Tilda, which absorbs the sauce without turning mushy.
For extra fluffiness, rinse the rice 3-4 times before cooking to remove excess starch. 💫
For a heartier option, try jeera rice (cumin-infused basmati) or biryani rice with saffron and fried onions. These varieties add aromatic depth that mirrors the spices in the dish. If you prefer a lighter option, brown rice works well—just increase cooking time by 20-25 minutes for optimal texture.
Bread Sides
Warm naan bread is a must—its pillowy texture soaks up the creamy sauce perfectly. I love using store-bought naan from Whole Foods or Trader Joe's for convenience, or homemade versions with yogurt and garlic. For extra authenticity, brush naan with garlic butter before serving. 🥖
Roti (whole wheat flatbread) adds a nutty contrast, while garlic paratha (flaky, spiced bread) brings a satisfying crunch. For a modern twist, serve with crusty sourdough or baguette slices—the crusty texture balances the sauce's richness.
Vegetable Accompaniments
Fresh cucumber raita (yogurt dip with cucumber, mint, and cumin) cuts through the richness, adding a cooling contrast. I blend 1 cup yogurt, ½ cucumber (diced), 2 tbsp mint, and ½ tsp cumin for a refreshing side. 🥒
Steamed green beans with lemon zest or sautéed spinach (palak) provide a vibrant, nutrient-packed balance. For a tropical twist, serve with mango chutney—its sweet-tart flavor pairs wonderfully with the coconut sauce.
Beverage Pairings
A masala chai (spiced tea with cardamom, cinnamon, and ginger) is the perfect traditional pairing—its warmth enhances the dish's aromatic spices. I steep 1 black tea bag, ½ tsp cardamom, ¼ tsp cinnamon, and 1 tsp ginger in 2 cups hot water for 5 minutes. ☕
For a non-alcoholic option, mango lassi (yogurt drink with mango pulp and cardamom) adds a creamy, fruity contrast. If you prefer beer, a light lager like Corona or Heineken cleanses the palate without overpowering the flavors.
Nutrition facts
Frequently asked questions
Can I use chicken breasts instead of thighs for this coconut butter chicken?
Chicken thighs work best because they stay juicier and absorb the coconut-tomato marinade more effectively. If you must use breasts, pound them to ½-inch thickness and marinate for 6-8 hours instead of 4. Cook them at medium-low heat to prevent drying out, and add 1 extra tablespoon of coconut milk to the sauce to compensate for their leaner texture.
What can I substitute if I don't have fresh fenugreek leaves?
Use ½ teaspoon dried fenugreek leaves (soaked in warm water for 10 minutes first) or ¼ teaspoon ground fenugreek seeds. For a similar bittersweet depth, try ½ teaspoon dried methi powder or ¼ teaspoon celery seed powder. The flavor won't be identical, but it'll still add complexity to the sauce.
How do I adjust the heat level in this recipe?
For milder heat, reduce the red chili powder to ¼ teaspoon and add ½ teaspoon sugar to balance acidity. For extra spice, increase to 1 teaspoon chili powder and add ½ teaspoon cayenne pepper to the sauce. Always taste the sauce after simmering—you can adjust with more chili flakes or even a pinch of smoked paprika for depth.
Can I make this butter chicken in an Instant Pot or slow cooker?
For the Instant Pot: Sauté onions/garlic, add all ingredients except coconut milk, and pressure cook for 10 minutes. Then stir in coconut milk and cook on high for 5 more minutes. For slow cooker: Combine everything (including chicken) and cook on low for 4-5 hours or high for 2-3 hours. The coconut milk helps prevent curdling in both methods.
Why does my coconut butter chicken sauce look too thin?
Sauce thinning often happens when coconut milk isn't fully incorporated or the sauce hasn't reduced enough. Simmer uncovered for 10-15 extra minutes to thicken, or mix 1 teaspoon cornstarch with 2 tablespoons water and stir in at the end. For prevention, always use full-fat coconut milk and let it simmer uncovered after adding tomatoes.
