
The Shahi Paneer Recipe That Finally Feels Worth the Effort
The first time I attempted a shahi paneer recipe at home, it was a complete disaster. I was newly married, trying desperately to impress my in-laws who had grown up eating proper Mughlai food in Old Delhi, and what I served them looked like pale orange soup with squeaky rubber cubes floating in it. My mother-in-law ate a polite spoonful, smiled, and quietly offered to teach me her version the following Sunday.
That Sunday changed everything. I stood in her tiny kitchen in Karol Bagh and watched her toast whole spices with a patience I didn’t think I had, grind cashews into something that looked like silk, and cook that onion paste until the ghee literally swam to the edges of the pan. “Beta,” she told me, “shahi paneer is not just a dish. It’s the Mughals in a karahi. You cannot rush royalty.” I’ve never forgotten that.
But here’s the thing — over the years I’ve streamlined her method without sacrificing a single bit of the flavour. This shahi paneer recipe gives you that deep, aromatic, properly royal gravy in under 45 minutes. No soaking overnight, no 3-step processes, no compromises. Just honest, delicious Mughlai cooking that you can make on a weeknight.
Quick Recipe SummaryPrep Time: 15 minutes |
Cook Time: 30 minutes |
Total Time: 45 minutes |
Servings: 4
This shahi paneer recipe is a rich, velvety Mughlai paneer curry made with a cashew-onion-tomato base, fragrant whole spices, saffron, and kewra water. It’s creamy without being heavy, aromatic without being overpowering, and comes together in under 45 minutes.
Why You’ll Love This Shahi Paneer Recipe
- Genuinely restaurant-quality at home — straining the cashew paste is the single trick that makes it taste like you ordered in.
- No all-day cooking required — I’ve cut out every unnecessary step without touching the flavour. You’ll have dinner on the table in 45 minutes flat.
- Works without cream — the cashew-melon seed paste does all the creamy work, so even a dairy-light or vegan version is completely satisfying.
- Freezer-friendly gravy — make a big batch of the gravy base and freeze it. Future-you will be extremely grateful on a tired Tuesday.
- Adaptable for Jain and no-onion-no-garlic kitchens — I’ve included a full variation below that my mother-in-law herself approves of.
Ingredients You’ll Need for This Shahi Paneer Recipe
A few notes before we dive in, especially for my lovely readers living abroad who sometimes message me saying they can’t find everything:
- Paneer: Homemade is always better — here’s my quick homemade paneer recipe that takes 20 minutes. But store-bought works perfectly. If you’re buying packaged, soak the cubes in warm water for 15 minutes before using — it softens them beautifully.
- Melon seeds (magaz): These are the hulled seeds of sweet melon and add incredible body to the gravy. You’ll find them at any Indian grocery store. If you genuinely can’t find them, just double the cashews.
- Mace (javitri): This is the lacy outer covering of nutmeg and is a key Mughlai spice. In the UK or US, look for it in Indian or South Asian grocery stores. If unavailable, a tiny pinch of freshly grated nutmeg is a reasonable substitute, but use even less — nutmeg is stronger.
- Kewra water: Distilled essence of pandanus flower — completely iconic in Mughlai cooking. Most Indian stores carry it. Rose water is an easier substitute and gives a different but equally beautiful floral note. Don’t skip one or the other — that fragrance is what makes shahi paneer shahi.
- Kashmiri red chilli powder: Bright red, very low heat. Don’t swap regular chilli powder — you’ll blow up the heat level and lose the colour. Paprika is the best Western substitute.
- Saffron: I know it’s expensive. A small pinch is all you need. The colour and flavour it gives is irreplaceable. Saffron also has some impressive health benefits that make the splurge feel more justified.
Full ingredient list with quantities is in the recipe card above.
How to Make Shahi Paneer Step-by-Step
- Soak the cashews and melon seeds in 1/2 cup warm water for 20 minutes while you prep. This is non-negotiable — soaking makes them blend into a silky smooth paste that is the soul of this gravy.
- Cook the onion-tomato base: Heat 1 tbsp oil in a heavy-bottomed pan over medium heat. Add the roughly chopped onions and cook for 8-10 minutes, stirring occasionally, until they turn golden and slightly caramelised at the edges. Add the chopped tomatoes and cook for another 5 minutes until completely soft and mushy. Turn off the heat and let it cool for 10 minutes.
- Blend to a smooth paste: Drain the soaked cashews and melon seeds. Add them to a blender along with the cooked onion-tomato mixture and 1/4 cup water. Blend for a full 2 minutes until completely smooth — and I mean completely. Then strain through a fine mesh sieve, pushing it through with the back of a spoon. Yes, it takes two minutes. Yes, it’s worth it. This step is the difference between a homestyle curry and a restaurant-style one.
- Build the spice base: Wipe the pan clean, add ghee over medium heat. Once it shimmers, add cumin seeds, bay leaves, cracked cardamom, cloves, and mace. Let them sizzle for about 30 seconds — you’ll smell the kitchen transform into something wonderful.
- Fry the ginger-garlic paste for 1-2 minutes on medium-low until the raw smell is completely gone. Don’t rush this step or your gravy will have that unpleasant raw edge.
- Add and bhunao the paste: Pour in the blended onion-tomato-cashew paste. It will splutter, so lower the heat slightly. Stir well to combine. Cook this paste for 10-12 minutes, stirring every 2 minutes, until the ghee visibly separates and floats at the edges, and the paste deepens to a warm golden-orange. This bhunao stage is everything — it’s where the flavour is built.
- Add the ground spices: Kashmiri red chilli powder, turmeric, coriander powder, and white pepper. Stir well and cook for 2 more minutes.
- Add water and simmer: Pour in 3/4 cup warm water gradually, stirring as you pour. Add salt and sugar. Let the gravy come to a gentle simmer for 5 minutes. It should already look thick and velvety.
- Add cream and saffron: Lower the heat to minimum. Add the milk or cream and the saffron-soaked milk. Stir gently. Simmer on very low heat for 3 minutes — do not let it boil hard after adding dairy or it can split and look grainy.
- Add paneer and finish: Add the paneer cubes and garam masala. Fold them in gently — paneer is delicate. Simmer for just 3-4 minutes. You want the paneer warm and flavour-infused, not rubbery.
- The finishing touch: Add kewra or rose water, stir once, and switch off the flame. Taste and adjust salt. Garnish with a swirl of cream, a few crushed pistachios, and saffron strands. Serve immediately with hot naan or rice.

Tips for Perfect Shahi Paneer Every Time
- Strain the cashew paste: I’ve said it twice and I’ll say it again. That 2-minute straining step is the single most impactful thing you can do. It removes every bit of grit and gives you that unmistakable smooth, luxurious texture.
- Don’t skimp on the bhunao time: Cooking the paste until the fat separates isn’t optional — it’s how you get rid of the raw flavour and build deep, complex taste. If you see oil pooling at the edges, that’s your cue that you’re done.
- Use room-temperature paneer: Cold paneer straight from the fridge goes rubbery when it hits a hot gravy. Either soak it in warm water for 15 minutes or briefly pan-fry the cubes in a tiny bit of ghee for a lightly golden crust before adding. I prefer the soaked version for a more traditional texture.
- White pepper over black: Traditional Mughlai cooking uses white pepper powder — it gives a gentler heat without the black specks. I know purists will disagree, but I sometimes add a tiny pinch of black pepper too for extra warmth. Try it and see which side you land on.
- Add kewra or rose water at the very end: These floral waters are volatile — their aroma cooks off quickly. Always add them off the flame or in the very last 30 seconds of cooking.
Shahi Paneer Recipe Variations
Jain / No-Onion-No-Garlic Version
Replace the onions with an extra handful of cashews and 10-12 blanched almonds for the base paste. Skip the garlic paste entirely and increase ginger to 2 tsp. The gravy will be paler and slightly nuttier, but deeply rich. My mother-in-law swears by this version for religious occasions.
Vegan Shahi Paneer
Swap the paneer for firm tofu (press it well) or extra-firm store-bought tofu. Use coconut cream instead of dairy cream, and substitute ghee with refined coconut oil or a good vegan butter. The floral spices still shine beautifully. Skip kewra if yours contains any non-vegan processing agents — rose water works perfectly.
Lower-Calorie Version
Use half the cashews and replace the rest with soaked sunflower seeds. Use low-fat milk instead of cream. The texture will be slightly less luxurious but still genuinely delicious — I make this version during the week and save the full version for guests.
Gluten-Free
This recipe is naturally gluten-free as long as you check your packaged spice powders for any added starches or fillers. All the base ingredients are inherently gluten-free. Serve with gluten-free rice or gluten-free bajra roti for a complete meal.
What to Serve With This Shahi Paneer Recipe
- Butter naan or garlic naan: The classic and honestly unbeatable pairing. The bread scoops up every drop of that creamy gravy.
- Saffron rice or plain jeera rice: If you prefer rice, a simple jeera rice lets the shahi paneer be the hero without competing flavours. Saffron rice elevates the whole meal into something truly special for guests.
- A simple cucumber raita: The coolness cuts through the richness beautifully. Just grated cucumber, yoghurt, roasted cumin, and salt — five minutes and done.
Storage and Reheating
Refrigerator: Store the gravy and paneer together in an airtight container for up to 3 days. The flavours actually deepen overnight and day-two shahi paneer is genuinely better. Reheat on very low heat with a splash of water or milk to loosen the gravy — don’t microwave on high or the paneer turns rubbery.
Freezer: The gravy (without paneer) freezes brilliantly for up to 2 months. Thaw overnight in the fridge, reheat gently, and add fresh paneer. I always make a double batch of gravy and freeze half — it’s a genuine weeknight lifesaver.
Pro tip: If your reheated gravy has separated slightly (the fat looks oily), whisk in a tablespoon of warm milk and stir on low heat — it comes back together beautifully.
“Shahi translates to ‘royal’ in Urdu and Hindi, and this dish traces its origins to the royal kitchens of the Mughal Empire. Mughal cuisine was characterised by its use of aromatic whole spices, nut-based gravies, saffron, and fragrant waters — all hallmarks you’ll recognise in this very recipe.”
Frequently Asked Questions About Shahi Paneer Recipe
What is the difference between shahi paneer and paneer butter masala?
This is the question I get asked most often! Shahi paneer has a cashew-and-onion-based gravy with Mughlai whole spices like cardamom, mace, and kewra water — it’s mild, richly aromatic, and has lighter colour. Paneer butter masala is tomato-forward, tangier, more vibrantly red, and bolder in flavour with butter as the star ingredient. Both are creamy, but shahi paneer is more subtly perfumed and regal while paneer butter masala is saucier and more intensely flavoured.
Can I make shahi paneer without cream? What’s a good substitute?
Yes, absolutely — and the cashew paste already does most of the creamy work here. For a shahi paneer without cream substitute, thick coconut cream is my favourite (and keeps it vegan). Full-fat milk, hung curd, or even the malai scraped off cold milk all work wonderfully. Just always add any dairy substitute on very low heat so it doesn’t split and curdle in the gravy.
Why does my shahi paneer gravy turn out watery or thin?
Two most likely reasons: either the onion-tomato paste wasn’t cooked long enough during the bhunao stage (the fat must separate before you add water), or the cashew paste wasn’t strained so it’s grainy and doesn’t emulsify properly. Also make sure you’re using full-fat cashews and adding warm water in small additions rather than all at once.
Can I make shahi paneer ahead of time for a party?
Yes, and I highly recommend it. Make the gravy completely the day before and refrigerate it. The flavours deepen beautifully overnight. Add fresh paneer cubes when reheating on the day — just warm the gravy gently, slide the paneer in, and give it 3-4 minutes. This way the paneer is always perfectly soft and never overcooked.
Is shahi paneer suitable for Jain cooking without onion and garlic?
It absolutely can be adapted. Replace the onions in the paste with extra cashews and blanched almonds for body and richness, skip the garlic paste entirely, and increase ginger slightly. The result is a paler but deeply luxurious gravy that works beautifully for Jain dietary requirements. My mother-in-law has been making it this way for decades.