Dairy-Free Indian Butter Chicken
Dairy-free Indian butter chicken with yogurt-marinated thighs in a silky coconut milk tomato sauce, no cream or dairy required.
Recipe by Andrew Tibbs, the Non Dairy Dude in Dairy-Free Dinner Recipes
Published


Butter chicken was the dish that made me think dairy-free Indian food just wasn't going to happen. Every version I tried online either skipped the cream and tasted thin, or leaned so hard on coconut milk that it stopped tasting like butter chicken and started tasting like a curry from a different country. It took a few rounds of marinating chicken thighs overnight and rebuilding the sauce from scratch before I got something that actually hit the mark.
The dairy-free yogurt marinade is doing real work here, not just standing in for tradition. It tenderizes the chicken and gives the garam masala and ginger something to cling to before the pieces ever hit the pan. Full-fat coconut milk takes over for cream in the sauce, and dairy-free butter stirred in at the end brings back that glossy finish you expect from the dish at a restaurant. If you've made Dairy-Free Indian Chicken Tikka Masala before, the marinade step will feel familiar, though the sauce here goes richer and a shade sweeter.
Serve it over basmati rice so the sauce has somewhere to go, with naan on the side for wiping the bowl clean. If you want to round out an Indian dinner spread, Dairy-Free Chicken Korma makes a good second curry on the table, and a Dairy-Free Mango Lassi at the end cools things off after the cayenne.
Ingredients
Chicken
- 1½ lbBoneless, skinless chicken thighs, cut into bite-size pieces
- ½ cupPlain unsweetened dairy-free yogurt (coconut or almond)
- 1 tbspLemon juice
- 3 clovesGarlic cloves, minced
- 1 tbspFresh ginger, grated
- 1 tspGaram masala
- ½ tspGround cumin
- 1 tspFine salt
Sauce
- 2 tbspNeutral oil (avocado, grapeseed, or refined coconut)
- 1 mediumYellow onion, finely diced
- 4 clovesGarlic cloves, minced
- 1 tbspFresh ginger, grated
- 2 tbspTomato paste
- 2 tspGaram masala
- 1 tspGround cumin
- 1 tspGround coriander
- 1 tspSweet paprika
- ¼ tspSmoked paprika
- 1¼ tspKashmiri chili powder — substitutes for the two paprikas above for more authentic color (optional)
- ½ tspTurmeric
- ¼ tspCayenne pepper
- 15 ozCrushed tomatoes
- ¾ cupFull-fat coconut milk
- 1 tbspCashew butter — for restaurant-style body (optional)
Finish
- 2 tbspDairy-free butter
- 1½ tspBrown sugar (or honey)
- 1 tspKasuri methi (dried fenugreek leaves), crushed between palms — highly recommended (optional)
- ½ tspFine salt
Garnish
- ¼ cupFresh cilantro, chopped
Instructions
- 1
In a bowl, combine the chicken with the dairy-free yogurt, lemon juice, garlic, ginger, garam masala, cumin, and salt. Toss to coat well. Cover and marinate at room temperature for up to 15 minutes, or refrigerate for 30 minutes to 4 hours (overnight is even better). The yogurt both tenderizes the chicken and carries the spices deep into the meat.
- 2
Heat 1 tablespoon of the oil in a large skillet or Dutch oven over medium-high heat. Shake excess marinade off the chicken, then add it to the pan in a single layer and cook for 4 to 5 minutes, turning once, until lightly charred in spots but not fully cooked through. Work in batches if needed to avoid steaming. Transfer the chicken to a plate.
- 3
Reduce the heat to medium and add the remaining 1 tablespoon oil. Add the onion and cook for 6 to 8 minutes until softened and lightly golden.
- 4
Add the garlic and ginger and cook for 30 seconds until fragrant. Stir in the tomato paste, garam masala, cumin, coriander, paprikas (or Kashmiri chili powder if using), turmeric, and cayenne. Cook for 1 minute, stirring constantly, until the spices smell toasted and the tomato paste darkens slightly.
- 5
Pour in the crushed tomatoes and coconut milk, stirring to combine. If using cashew butter, whisk it in now. Bring to a gentle simmer and cook for 8 to 10 minutes, stirring occasionally, until the sauce thickens slightly and the raw tomato edge cooks off.
- 6
Blend the sauce until smooth and silky, either directly in the pan with an immersion blender or by transferring to a countertop blender and returning it to the pan. This is what gives butter chicken its signature restaurant-style texture.
- 7
Return the chicken and any collected juices to the pan. Reduce the heat to medium-low and simmer for 8 to 10 minutes, stirring occasionally, until the chicken is cooked through and the sauce is thick, smooth, and glossy.
- 8
Stir in the dairy-free butter, brown sugar, crushed kasuri methi (if using), and salt. Let the dairy-free butter melt into the sauce and cook off heat for 2 to 3 minutes to let the flavors meld. Taste and adjust with more salt or a pinch more sugar if the tomatoes taste too sharp. Scatter with chopped cilantro and serve hot.
How we make it dairy-free
- Dairy yogurt marinade → Plain unsweetened dairy-free yogurt (coconut or almond based) tenderizes the chicken and holds the spices just like the original.
- Heavy cream → Full-fat coconut milk gives the sauce its body and silky texture without any dairy.
- Butter → Dairy-free butter stirred in at the end brings back that glossy, buttery finish the dish is named for.
- Cashew or almond paste → A spoonful of cashew butter is optional here, but it adds the nutty undertone you get from butter chicken at a restaurant.
Kasuri methi (dried fenugreek leaves) isn't a dairy swap, but don't skip it if you can find it. It's the ingredient that makes the sauce taste like the real thing.
Tips & Variations
Use chicken thighs if possible: They stay juicier than breast meat during simmering and are more forgiving if slightly overcooked.
Longer marinade, better flavor: A quick 15-minute rest on the counter works in a pinch, but 30 minutes to 4 hours in the refrigerator (or overnight) makes a real difference. The yogurt's mild acidity tenderizes the meat while the spices penetrate deeper than a quick marinade allows. Raw chicken should not sit at room temperature longer than 15 minutes for food safety.
Kasuri methi is the secret weapon: If you can find dried fenugreek leaves at an Indian grocer, online, or some Whole Foods stores, they transform this dish from a generic creamy tomato curry into something that actually tastes like restaurant butter chicken. Crush them between your palms before adding to release the aroma.
Kashmiri chili powder vs. paprika: Kashmiri chili powder gives butter chicken its signature vibrant red-orange color with mild heat. If you don't have it, the combination of sweet paprika and a touch of smoked paprika delivers a very close flavor and color — just use one or the other, not both.
Cashew butter for body: A single tablespoon of cashew butter whisked into the sauce adds the nutty richness found in most restaurant versions. Skip it if you don't keep it on hand — the sauce is still delicious without.
Char equals flavor: Let the chicken pick up some browning in the pan before it finishes in the sauce. That extra color adds depth to the final dish.
Coconut milk choice matters: Full-fat coconut milk from a can gives the sauce its silky texture. Light coconut milk or the refrigerated carton style will make the sauce noticeably thinner and less rich.
Control the heat: This version is mildly spicy. Increase the cayenne for more heat, or reduce it for a gentler family-style version.
Serving ideas: Serve with basmati rice, naan, or roasted cauliflower, and add a squeeze of lemon at the table if you like a brighter finish.
Frequently asked questions
Can I use chicken breast instead of thighs?⌄
You can, but thighs hold up better in a sauce this long-simmered and stay tender even if you cook them a few minutes past done. If you swap in breast, cut the simmer time down and pull the chicken as soon as it's cooked through so it doesn't dry out.
What coconut milk should I use for the sauce?⌄
Full-fat canned coconut milk, not the carton stuff sold for drinking. The carton kind is too thin and won't give the sauce the body it needs. Shake the can before opening so the cream and liquid blend together.
Can I skip the cashew butter?⌄
Yes, it's listed as optional. The sauce still tastes like butter chicken without it. If you do use it, a tablespoon stirred in near the end is enough to round out the flavor without making the sauce taste like cashews.
Is Kashmiri chili powder necessary?⌄
No. It's there mainly for color and a milder heat than cayenne. The combination of sweet and smoked paprika listed in the recipe gets you close enough if you don't have Kashmiri chili powder on hand.
Dairy-Free Indian Butter Chicken · https://nondairydude.com/recipes/dairy-free-indian-butter-chicken
Get new dairy-free comfort food recipes
New recipes, substitution tips, and classic dishes rebuilt without dairy.


