Butter chicken was almost keto the whole time, and nobody bothered to tell me.
For years, Friday night in our house looked exactly the same. Silas would call our favorite Indian spot, order butter chicken with two garlic naan, and treat the delivery like a national holiday.
Then we both went low-carb. He took it about as well as a toddler who just lost a balloon.
So I did what any stubborn home cook would do. I marched into the kitchen and decided I’d make a keto butter chicken good enough to retire that takeout menu for good.
My first attempt was a mess. I poured cold cream straight into a bubbling tomato sauce, and the whole pot split into something that looked like wet sand.
Batch four was a different story. Silas scraped the pot clean with a spoon and asked, very seriously, if we could stop ordering out forever.
Here’s what surprised me most. The sauce was never the problem. Chicken, butter, cream, tomatoes and spices are all naturally low in carbs.
The real carb traps are the naan, the rice, and the spoonful of sugar or honey a lot of restaurants quietly stir into the gravy.
Pull those out and you’re left with a rich, glossy curry at roughly 6g net carbs per serving. There’s also one dried herb in step 9 that makes your kitchen smell like a real Indian restaurant. Most home cooks skip it. You won’t.
Side Note: People love this dish so much that in 2024, two famous Delhi restaurant families ended up in the Delhi High Court arguing over who invented it. One side’s lawsuit ran past 2,700 pages. That’s a lot of paperwork for a curry.
Why This Low-Carb Butter Chicken Works
This isn’t a sad diet copy of a classic. It’s the real deal, minus the carb baggage.
- Chicken thighs stay juicy. They carry a little more fat than breasts, so they stay tender while they simmer in the sauce.
- The yogurt marinade softens the meat. Its gentle tang relaxes the chicken and helps the spices cling to every piece.
- Kashmiri chili powder brings the color. That deep red-orange shade comes from this mild chili, not from extra heat or food dye.
- Butter and heavy cream make it silky. They give the sauce its velvet texture and keep you full for hours.
- Zero added sugar. Once the butter mellows out the tomatoes, you truly won’t miss it.
The history makes it even better. In India, the dish is often called murgh makhani, and according to the Moti Mahal family, the original makhani sauce was created to save leftover tandoori chicken that was drying out.
A rescue sauce for leftovers became one of the most famous curries on earth. Not bad at all.
What You’ll Need
Almost everything here lives in a regular grocery store. The two spices you might need to hunt down are Kashmiri chili powder and kasuri methi (dried fenugreek leaves). Indian grocers and online spice shops carry both, and one bag lasts for months.
For the Marinade
| Ingredient | Amount |
|---|---|
| Boneless, skinless chicken thighs, cut into bite-size pieces | 2 lbs (about 900 g) |
| Full-fat plain Greek yogurt, unsweetened | 1/2 cup |
| Fresh lemon juice | 1 tablespoon |
| Fresh ginger, finely grated | 1 teaspoon |
| Garlic, minced | 1 teaspoon |
| Garam masala | 1 teaspoon |
| Kashmiri chili powder | 1 teaspoon |
| Ground turmeric | 1/2 teaspoon |
| Salt | 1 teaspoon |
For the Sauce
| Ingredient | Amount |
|---|---|
| Ghee, for searing | 1 tablespoon |
| Unsalted butter, divided | 4 tablespoons |
| Small yellow onion, finely diced | 1/2 onion |
| Garlic cloves, minced | 3 cloves |
| Fresh ginger, finely grated | 2 teaspoons |
| Garam masala | 1 teaspoon |
| Ground cumin | 1 teaspoon |
| Ground coriander | 1 teaspoon |
| Kashmiri chili powder | 1 teaspoon (more for heat) |
| Ground turmeric | 1/2 teaspoon |
| Tomato paste | 1 tablespoon |
| Tomato sauce, no sugar added | 1 can (8 oz) |
| Heavy cream, at room temperature | 3/4 cup |
| Kasuri methi (dried fenugreek leaves) | 1 tablespoon |
| Salt | About 1/2 teaspoon, to taste |
For Serving
- Cauliflower rice
- Fresh cilantro, chopped
- An extra drizzle of heavy cream (optional)
Read this also: Crispy Keto Chaffles: The Parmesan Trick Most Recipes Skip
Tools You’ll Need

- Large enameled cast iron Dutch oven (a deep 12-inch skillet works too)
- Wooden cutting board and a sharp chef’s knife
- Medium mixing bowl for the marinade
- Microplane grater for the ginger and garlic
- Measuring cups and measuring spoons
- Wooden spoon
- Stainless steel tongs
- Instant-read meat thermometer
- Immersion blender (optional, for a silky-smooth sauce)
Pro Tips for Your First Batch
- Let the cream sit out. Pull it from the fridge when you start the marinade. Cold cream hitting hot, tangy tomato sauce is exactly how I made my wet-sand disaster.
- Sear in batches and embrace the char. Those dark spots are pure flavor. A crowded pan steams the chicken instead of browning it. Crack a window, though, because my smoke alarm has very strong opinions about this step.
- Bloom the spices in butter. Thirty seconds in hot fat wakes up ground spices in a way simmering never will. If they start smelling sharp or bitter, pull the pan off the heat right away.
- Crush the kasuri methi between your palms. Rubbing the dried leaves releases their oils right before they hit the pot. That warm, almost maple-like smell is the moment it starts tasting like takeout.
- Taste at the very end. Tomato sauce brands vary a lot in salt and tang. A pinch of salt or an extra pat of butter fixes almost anything.
Side Note: Fenugreek has a wild backstory. In 2009, New York City officials finally traced a mystery maple syrup smell that had drifted over Manhattan for years. The source was a New Jersey factory processing fenugreek seeds, from the same plant that gives us kasuri methi.
How to Make Keto Butter Chicken Step by Step
| Recipe at a Glance | Details |
|---|---|
| Prep time | 15 minutes |
| Marinating time | 30 minutes (up to 24 hours) |
| Cook time | 30 minutes |
| Total time | 1 hour 15 minutes |
| Servings | 6 |
| Net carbs | About 6g per serving |
- Marinate the chicken. In a mixing bowl, combine the chicken with the yogurt, lemon juice, 1 teaspoon ginger, 1 teaspoon garlic, garam masala, chili powder, turmeric and salt. Toss until every piece is coated, cover, and refrigerate for at least 30 minutes.
- Sear the chicken. Heat the ghee in your Dutch oven over medium-high heat. Shake off the extra marinade and sear the chicken in two batches, 3 to 4 minutes per side, until you see dark golden spots. It doesn’t need to cook through yet. Move it to a plate.
- Soften the onion. Lower the heat to medium and melt 2 tablespoons of butter. Add the onion and cook for 5 to 6 minutes, scraping up the browned bits, until it turns soft and lightly golden.
- Add the aromatics. Stir in the minced garlic cloves and 2 teaspoons ginger. Cook for about 1 minute, just until your kitchen smells amazing.
- Bloom the spices. Add the garam masala, cumin, coriander, chili powder and turmeric. Stir constantly for 30 to 60 seconds.
- Build the tomato base. Stir in the tomato paste and cook for 1 minute. Pour in the tomato sauce and simmer for 8 to 10 minutes, stirring often, until it thickens and darkens to a deep brick red. For a restaurant-smooth sauce, blend it right in the pot with the immersion blender.
- Stir in the cream. Turn the heat to low. Slowly pour in the room-temperature cream, stirring as you go, until the sauce turns a creamy sunset orange. Let it barely bubble for 2 minutes.
- Simmer the chicken. Add the chicken back along with any juices from the plate. Partly cover and simmer gently for 8 to 10 minutes, until the thickest piece reads 165°F (74°C) on your thermometer.
- Finish with butter and methi. Turn off the heat. Stir in the last 2 tablespoons of butter. Crush the kasuri methi between your palms over the pot, stir it in, then taste and adjust the salt.
- Rest and serve. Let it sit for 5 minutes so the sauce settles and thickens. Spoon it over cauliflower rice, scatter the cilantro on top, and add a swirl of cream if you’re feeling fancy.
Side Note: If the sauce gets too thick while the chicken simmers, loosen it with a splash of water. Too thin? Leave the lid off for a few more minutes.
Substitutions and Variations
This recipe bends without breaking. Here are the swaps I’ve tested or get asked about most.
| Instead Of | Try This | What Changes |
|---|---|---|
| Heavy cream | Full-fat coconut cream | Dairy-free, with a light coconut note |
| Butter | Ghee or avocado oil | Ghee keeps the buttery taste; oil makes it fully dairy-free |
| Greek yogurt | Unsweetened coconut yogurt | Works the same way in the marinade |
| Chicken thighs | Chicken breast | Leaner, so simmer only 6 to 8 minutes |
| Chicken | Paneer cubes | Vegetarian keto option; pan-fry until golden and add at step 8 for 5 minutes |
| Kashmiri chili powder | 3 parts sweet paprika + 1 part cayenne | Close in color, slightly sharper heat |
| Tomato sauce | Plain passata | Same body; check the label for added sugar |
| Half an onion | 1/2 teaspoon onion powder | Trims a few carbs, loses a little sweetness |
Easy Diet Swaps
- Dairy-free: Use avocado oil, coconut cream and coconut yogurt. Ghee has most milk solids removed, but it’s still technically dairy.
- Whole30 or paleo: Use ghee instead of butter, plus coconut cream and coconut yogurt. Double check the tomato sauce label.
- Vegetarian keto: Paneer soaks up the sauce beautifully.
- Extra low-carb: Skip the onion and the yogurt in the marinade. Use lemon juice and an extra tablespoon of ghee instead.
Read this also: Keto Cheesy Cabbage Sausage Skillet That Tastes Like Cheating
Fun Ways to Switch It Up
- Instant Pot: Use the Sauté setting for steps 2 to 6. Add the chicken plus 1/4 cup water, then pressure cook on High for 8 minutes with a 10-minute natural release. Stir in the cream, butter and methi at the end.
- Slow cooker: Add the cooked tomato base and marinated chicken, then cook on Low for 4 to 5 hours. Stir in the cream for the last 15 minutes.
- Butter shrimp: Swap in large shrimp at step 8 and simmer for just 3 to 4 minutes, until pink.
Make-Ahead Tips
This is a dream dish for planners. The flavor actually gets deeper overnight.
- Marinate the night before. Up to 24 hours is great. Go much longer and the yogurt can turn the texture mushy.
- Make the sauce early. Cook through step 7 up to 3 days ahead, cool it, and refrigerate. Reheat gently, then add freshly seared chicken.
- Prep the sides. Rice the cauliflower and chop the cilantro ahead so dinner is just reheat and serve.
Silas swears day-two butter chicken is the “real” version. I hate that he’s right.
Leftovers and Storage
- Fridge: Store in an airtight container for 3 to 4 days.
- Freezer: Freeze for up to 3 months. Pack the curry without the cauliflower rice, then thaw overnight in the fridge.
- Stovetop reheat: Warm over low heat with a splash of water or cream, stirring often.
- Microwave reheat: Use 50% power in 1-minute bursts. Cream sauces can split when blasted on high.
- Safety check: Reheat until it’s steaming hot all the way through, or 165°F.
Leftover sauce is liquid gold. Spoon it over scrambled eggs, toss it with zucchini noodles, or use it as a dip for keto naan.
Keto Butter Chicken Nutrition Facts
Here’s the estimated breakdown for one serving, with the recipe split into 6 portions. These numbers don’t include cauliflower rice or other sides.
| Nutrient | Per Serving |
|---|---|
| Calories | About 415 |
| Fat | 28g |
| Protein | 33g |
| Total carbs | 7.5g |
| Fiber | 1.5g |
| Net carbs | About 6g |
That’s 33 grams of protein in one bowl, which makes this a high-protein dinner as much as a keto one. One cup of cauliflower rice adds roughly 3g net carbs.
Brands differ, so treat these numbers as a close guide and run your own labels through a tracking app if you count every gram.
What to Serve With Keto Butter Chicken
- Cauliflower rice to catch every drop of sauce
- Keto naan made with mozzarella and almond flour
- Cucumber raita with plain yogurt, grated cucumber, cumin and salt
- Garlicky sautéed spinach or roasted green beans
- A crunchy cucumber salad with lemon and a little red onion
- Butter lettuce cups for a lighter lunch
Time-Saving Tips for Busy Weeknights
- Grab frozen riced cauliflower and microwave it while the chicken simmers.
- Use jarred ginger-garlic paste. One teaspoon replaces the fresh ginger and garlic in the marinade.
- Marinate in a zip-top bag in the morning so it’s ready by dinner.
- Dice the onion while the first batch of chicken sears.
- Double the sauce and freeze half for a 15-minute dinner later.
FAQs Related to Keto Butter Chicken for 2026
1. Is restaurant butter chicken keto?
Not always. Many restaurants add sugar, honey or cashew paste to the gravy, and it usually comes with rice and naan. Making it at home puts you in charge of every ingredient.
2. How many net carbs are in keto butter chicken?
This recipe has about 6g net carbs per serving when split into 6 portions, not counting sides.
3. Can I use chicken breast instead of thighs?
Yes. Simmer it for 6 to 8 minutes and pull it as soon as it hits 165°F so it stays tender.
4. Why did my butter chicken sauce curdle?
Usually cold cream went into a sauce that was boiling hard. Keep the heat low and use room-temperature cream. If it splits, take it off the heat and whisk in a splash of fresh cream.
5. What’s the difference between butter chicken and tikka masala?
They’re close cousins. Butter chicken is milder, smoother and richer with butter. Tikka masala usually has more onion, a chunkier sauce and a bit more heat.
6. Is keto butter chicken spicy?
Not really. Kashmiri chili is more about color than heat. For a kick, add a pinch of cayenne or a chopped green chili with the garlic.
Conclusion
Takeout night doesn’t have to disappear just because the naan did. This keto butter chicken brings everything you crave: tender charred chicken, a silky tomato-butter sauce, and that warm, toasty smell that fills the whole house. All of it from one pot.
Silas now requests it every single Friday. We haven’t called our old takeout spot in months, and I’m fairly sure they’ve noticed.
Give it a try this week, then come back and tell me how it went in the comments. Did you keep it mild or crank up the heat? Did anyone at the table guess it was keto? Drop your questions below too, and I’ll answer every one.