A Comfort Dish That Brings the Spice Cabinet to Life
If you peek into my spice drawer, you might wonder if I secretly run a spice shop. My dad says I could open one with what I’ve collected from travels—and honestly, he’s not wrong. Every time I visit a new country, I make it a point to explore the spice markets. It’s how I connect with a place: through its smells, flavors, and the way people use them.
That love for spices is exactly why biryani holds a special place in my heart.
There’s something about it—the layers, the aroma, the anticipation of lifting the lid to reveal perfectly cooked rice and flavor-packed masala underneath. It’s a dish that’s festive, but also comforting. In our home, this fish biryani recipe makes a frequent appearance, especially during Ramadan. It’s one of those dishes that people remember—and ask for again.
And yes, it has a few steps—but don’t let that scare you off. The reward is far greater than the effort.
Why You’ll Love This Fish Biryani
-
Flavorful and deeply spiced: Every bite is infused with warm spices and aromatics.
-
Easy to adapt: Use any firm white fish you love (boneless or bone-in).
-
Layered for texture: Tender fish, fluffy rice, crispy onions, and fresh herbs.
-
Make-ahead friendly: Parts can be prepped ahead and assembled before serving.
📝 Tips for Success
-
Use long-grain basmati rice. It’s key for achieving fluffy, separated grains.
-
Soak the rice for 30 minutes to help remove excess starch.
-
Choose firm white fish like tilapia, seabass, or cod. They hold up well when layered.
-
Don’t skip the fried onions, mint, or coriander. These toppings bring it all together.
-
Layer in a heavy pot and seal well (a tight lid or foil) to trap steam for even cooking.
-
Let it rest before serving. This helps flavors meld and rice finish steaming.
Personal Cooking Note
Fish biryani was once one of those “intimidating dishes” for me. I always thought it was too complex or delicate to get right. But cooking—like most things—is something you master by doing. I still remember the first time I nailed it, and the way it made me feel: proud, and very full.
So if you’re nervous, just go for it. It’s easier than you think—and the aroma alone is worth it.

What’s in This Fish Biryani Recipe?
This dish has four components:
1. Fish Marinade a mixture of turmeric, chili, garam masala, garlic, ginger, and lemon juice gives the fish depth and brightness.
2. Rice basmati is partially boiled with whole spices for aroma—bay leaf, cardamom, cloves, cinnamon, and ghee.
3. Fish Masala onions, tomatoes, green chili, and more spices build the base for the fish to simmer in.
4. Toppings & Assembly fresh herbs, fried onions, and optionally—fried cashew nuts for extra texture and flavor.
🥘 How to Serve It
This fish biryani is a full meal on its own but pairs beautifully with:
-
A simple raita or yogurt and cucumber salad
-
Pickled onions or mango chutney
-
A squeeze of lemon over the top
Want more rice-based comfort food? Try my Chicken Skewers with Spiced Rice or this great tomato risotto.
If you tried the recipe, don’t forget to rate it. I would love to see your creation. Feel free to tag me on Instagram @thebitterolive.
Fish Biryani
Ingredients
For the fish marinade
- 500 g firm white fish
- 1 tsp ginger paste
- 1 tsp garlic paste
- ½ tsp turmeric
- 1 tsp chili powder
- 1 tsp garam masala
- ½ tsp salt
- Lemon juice as needed
For the rice
- 1 ½ cups basmati rice
- 1 bay leaf
- 4 green cardamom
- 5 black peppercorns
- 4 cloves
- Cinnamon stick
- 1 tbsp ghee
- 1 ½ tsp salt
For cooking the fish
- Oil for cooking
- 1 onion thinly sliced
- 1 tomato finely diced
- 1 green chili
- 1 tsp garlic paste
- 1 tsp ginger paste
- 1 tsp chili powder
- 1 tsp garam masala
- ½ tsp cumin powder
- ½ tsp coriander powder
- ½ tsp turmeric
For layering
- Small onion sliced and fried until golden
- ¼ cup coriander leaves chopped
- ¼ cup mint leaves chopped
- fried cashew nuts or raisins for garnish optional
Instructions
Marinating the fish
- Combine marinade spices with lemon juice to form a paste. Coat the fish and refrigerate for at least 20 minutes or up to 2 hours.
Soaking the rice
- Wash the rice twice and soak it for 30 mins.
Cooking the fish
- Heat oil in a heavy bottomed pan.
- Add onion and sauté until lightly golden.
- Add green chili, garlic, and ginger.
- Stir in tomatoes, all ground spices, and ½ cup water. Let simmer for 2–3 minutes.
- Add fish with marinade and cook for 5–6 minutes or until fish is tender and masala thickens slightly.
Parboil the rice
- Boil soaked rice with whole spices, ghee, and salt until just shy of fully cooked. Drain and set aside.
Layering the biryani
- On top of the cooked fish, gently spread the parboiled rice.
- Sprinkle with fried onions, coriander, and mint.
- Cover tightly (use foil if needed) and cook on lowest heat for 25–30 minutes.
- Let rest, covered, for 10 minutes before serving.
- Garnish with fried onions and fried cashew nuts.
Notes
For best results, use a heavy-bottomed pot.
You can garnish with fried cashews for extra richness.
Serve with raita or a simple cucumber salad.
2 thoughts on “Fish Biryani”
I am testing this tonight, thank you for sharing! With this COVID situation going on, I am experimenting a lot with recipes and your website is my favorite inspiration.
-Suzy
Thank you so much Suzy, this makes very happy to hear! Enjoy cooking and hang in there 🙂