If you love butter chicken or paneer makhani, this is the core sauce that makes it all happen. It’s creamy, tomato-forward, lightly sweet, and finished with butter and cream for that signature restaurant-style finish. The best part?
You can make a big batch, freeze it, and build meals in minutes. Once you have this base on hand, turning it into butter chicken, paneer, shrimp, or veggies is quick and foolproof.
What Makes This Recipe So Good

- Restaurant-style flavor at home: Whole spices, slow-simmered tomatoes, and a buttery finish create depth and balance.
- Big-batch friendly: Make once, portion, and freeze. This sauce stays smooth and vibrant.
- Flexible: Works with chicken, paneer, tofu, chickpeas, or roasted veggies without changing the core flavor profile.
- Gentle heat, full flavor: Kashmiri chili adds color and warmth without overpowering spice.
- Streamlined technique: Blended for a silky finish—no constant stirring, no complicated steps.
What You’ll Need
- Tomatoes: 8–10 ripe Roma tomatoes or 2 cans (28 oz) whole peeled tomatoes
- Onion: 1 medium yellow onion, sliced
- Garlic: 6–8 cloves
- Ginger: 2-inch piece, sliced
- Cashews: 1/3 cup raw, or substitute blanched almonds
- Butter: 4 tablespoons (divided)
- Neutral oil: 1–2 tablespoons (for sautéing)
- Whole spices: 2–3 green cardamom pods, 4–5 cloves, 1 small cinnamon stick, 1 bay leaf
- Ground spices: 1–1.5 teaspoons Kashmiri red chili powder (or mix of paprika + a pinch of cayenne), 1 teaspoon roasted cumin powder, 1 teaspoon garam masala
- Fenugreek (kasuri methi): 1–2 teaspoons, crushed
- Sugar or honey: 1–2 teaspoons, to balance acidity
- Salt: To taste
- Cream: 1/3–1/2 cup heavy cream (or full-fat coconut milk for dairy-free)
- Water or stock: 1–1.5 cups, as needed
- Optional: 1 small green chili (for heat), 1 tablespoon tomato paste (for deeper tomato note)
Step-by-Step Instructions

- Toast the whole spices: Heat 1 tablespoon oil in a heavy pot over medium heat.
Add bay leaf, cardamom, cloves, and cinnamon. Toast until fragrant, about 30–45 seconds.
- Sauté aromatics: Add sliced onion with a pinch of salt. Cook 6–8 minutes until soft and lightly golden.
Add garlic and ginger. Cook 1–2 minutes until the raw smell fades.
- Add tomatoes and nuts: Stir in tomatoes (fresh or canned), cashews, and tomato paste if using. Cook 8–10 minutes until tomatoes break down and release oil around the edges.
- Spice it: Add Kashmiri chili powder, cumin powder, and 1 teaspoon salt.
Stir and cook 2 minutes to bloom the spices.
- Simmer: Add 1 cup water or stock. Bring to a gentle simmer. Cover partially and cook 15–20 minutes, stirring occasionally, until the sauce thickens and the tomatoes are fully soft.
- Blend smooth: Remove bay leaf and cinnamon.
Carefully transfer to a blender and blend until completely smooth and silky. Add a splash of water if needed to get a pourable consistency.
- Strain (optional but pro tip): Pass the sauce through a fine mesh sieve back into the pot for an ultra-smooth, restaurant-like texture.
- Finish with butter and cream: Over low heat, whisk in 3 tablespoons butter until glossy. Stir in cream, sugar or honey, and crushed kasuri methi.
Simmer 3–5 minutes. Adjust salt and add garam masala to finish.
- Balance the flavor: Taste and tweak. Add a pinch more chili for heat, sugar for acidity, or water to thin.
The sauce should be rich, mildly tangy, and gently sweet with a buttery finish.
- Use or store: At this stage, the gravy is ready for butter chicken or paneer. Add cooked chicken tikka, sautéed paneer, or your protein/veg of choice and simmer a few minutes to marry flavors.
How to Store
- Fridge: Cool completely, then store in airtight containers for up to 4 days.
- Freezer: Portion into freezer-safe bags or containers (1–2 cup portions). Freeze up to 3 months.
Lay bags flat for easy stacking.
- Reheat: Thaw overnight in the fridge or run sealed bag under cold water. Warm gently on low heat, adding a splash of water or cream to loosen.
- Make-ahead tip: Freeze without cream, then add cream and butter when reheating for the freshest finish.

Why This is Good for You
- Tomatoes: Rich in lycopene and vitamin C, they bring antioxidants and bright flavor.
- Cashews: Add body and creaminess with healthy fats and a touch of protein.
- Ginger and garlic: Support digestion and immunity while boosting aroma and depth.
- Balanced richness: Butter and cream are used thoughtfully. You can lighten it with milk or cashew cream and still get a satisfying texture.
Common Mistakes to Avoid
- Skipping the simmer: Undercooked tomatoes taste sharp and raw.
Simmer until mellow and slightly sweet.
- Not blending properly: A coarse sauce won’t coat protein well. Blend until completely smooth; strain if you want the restaurant finish.
- Overheating after adding cream: High heat can split dairy. Keep it low and gentle.
- Too much spice too soon: Kashmiri chili is mild, but concentrates as sauce reduces.
Start moderate; adjust at the end.
- Forgetting to remove whole spices: Leaving in the cinnamon stick or bay leaf can make the blend bitter. Fish them out before blending.
Recipe Variations
- Dairy-free: Use oil or vegan butter and full-fat coconut milk or cashew cream instead of dairy cream. Flavor stays lush and satisfying.
- No nuts: Replace cashews with 2–3 tablespoons of seeds (sunflower or pumpkin) or use extra cream plus a small boiled potato for body.
- Smoky note: Stir in a few drops of liquid smoke or briefly char the tomatoes/onions before simmering.
- High-protein vegetarian: Add pan-seared tofu or chickpeas, then finish with a knob of butter and kasuri methi.
- Spicier version: Blend in a fresh green chili or finish with a pinch of cayenne for extra heat.
FAQ
Can I use canned tomatoes?
Yes.
Whole peeled tomatoes work great and bring consistent flavor year-round. If they taste very acidic, add an extra pinch of sugar or simmer a bit longer.
Is kasuri methi essential?
It’s highly recommended. Kasuri methi gives that signature makhani aroma and gentle bitterness that balances the butter and cream.
If you can’t find it, skip it rather than substituting with fresh fenugreek leaves, which are stronger and grassy.
How do I turn this into butter chicken?
Marinate chicken in yogurt, ginger-garlic, chili powder, turmeric, and garam masala. Grill or pan-sear until cooked, then simmer in the warmed makhani sauce for 5–7 minutes. Finish with butter and a splash of cream.
What about paneer makhani?
Lightly pan-fry paneer cubes in a little ghee or oil until golden.
Add to the sauce and simmer a few minutes. Garnish with cream, butter, and a sprinkle of kasuri methi.
My sauce split after adding cream. What can I do?
Take it off the heat, whisk in a splash of warm water or milk, and stir gently until it comes back together.
Next time, lower the heat before adding cream and avoid boiling.
Can I make it without onions and garlic?
Yes, but the flavor will be simpler. Increase ginger slightly and rely on tomatoes, kasuri methi, and spices. A pinch of hing (asafoetida) can add savory depth if you use it.
How do I make it thicker or thinner?
Simmer longer to thicken, or add water/cream to loosen.
Aim for a pourable, velvet-smooth consistency that coats the back of a spoon.
What oil should I use?
A neutral oil like sunflower, canola, or light olive oil works. Ghee also adds wonderful aroma if you prefer a richer taste.
Final Thoughts
This makhani gravy base is your shortcut to consistent, restaurant-style results at home. The technique is simple: toast, sauté, simmer, blend, and finish.
Keep a batch in your freezer and you’ll never be far from a great meal. Whether you stir in chicken, paneer, tofu, or vegetables, the sauce brings everything together with warmth and comfort. Enjoy it once, and it will quickly become a staple in your kitchen.

