Fish biryani layers fragrant basmati rice with spiced, fried fish, a yoghurt and tomato masala, crispy onions, saffron milk and ghee, then cooks it gently until the flavours come together.

The fish is marinated with lemon, garlic, ginger and spices, then fried until partly cooked so it stays in chunks. It makes a centrepiece for festive occasions and family gatherings.
Why this recipe works
- Lemon in the marinade. It brightens the fish and balances the rich masala.
- Fish fried first. Partly cooking the chunks firms them up so they hold together in the layers.
- Crispy onions in every layer. Onions fried in the same oil add sweetness and crunch.
- Saffron milk and kewra water. They give the biryani its colour and a gentle floral aroma.
Tips for the best fish biryani
- Pick a firm fish. Chunky, firm white fish holds together best.
- Marinate for longer. Give it at least 30 minutes, or overnight in the fridge for more flavour.
- Only parboil the rice. Take it off at about 70% cooked so it doesn’t go mushy.
- Use a heavy-bottomed pot. It spreads the heat and stops the bottom layer burning during the slow cook.
- Seal it well. Cover tightly so the steam stays in.
What to serve with fish biryani
Serve with raita and a simple salad. For more biryanis, try our classic chicken biryani or chicken 65 biryani. Love fish? Try the Burmese fish curry with brown buttered rice.
Fish Biryani FAQs
Which fish is best for biryani?
A firm, meaty fish that won’t flake apart, such as cod, haddock or coley. Cut it into large chunks.
How do I stop the fish breaking up in biryani?
Marinate it, fry it until partly cooked, then layer it gently. Don’t stir once the biryani is layered.
How long does fish biryani take?
About 1 hour 30 minutes, including 30 minutes to marinate the fish. The layered biryani then cooks gently on low heat for 45 minutes.
Can I make fish biryani without food colouring?
Yes. The saffron milk gives plenty of colour, so the food colouring is optional.
You’ll find the full ingredients, the method and our step-by-step video in the recipe card below.
Fish Biryani
Fish Biryani is a beloved South Asian delicacy that features layers of fragrant basmati rice and spicy fish masala, infused with aromatic spices. The dish is known for its complex flavours, combining the richness of ghee, the tanginess of yogurt, and the heat from green chilis and various spices.
Ingredients
For the Fish:
For the Rice:
For the Onion and Masala:
Instructions
Marinate the Fish:
-
In a bowl, combine ginger paste, garlic paste, lemon juice, salt, chili powder, paprika, danya jeera, black pepper, and turmeric powder.
-
Add fish chunks and mix well. Marinate for at least 30 minutes.
Fry the Fish:
-
In a pan, heat oil and fry the marinated fish until partially cooked. Set aside.
Prepare the Biryani Masala:
-
In the same oil, fry sliced onions until crispy. Reserve half of the fried onions for layering.
Prepare the Onions:
-
In a large pot, heat ghee and sauté bay leaves, danya jeera, chili powder, salt, black pepper powder, turmeric powder, black cardamom, green cardamoms, cloves, and whole black peppers.
-
Add garlic paste, ginger paste, chopped tomatoes, and green chilis. Sauté until aromatic.
-
Stir in yogurt and simmer for a few minutes.
Parboil the Rice:
-
Parboil rice with aromatic spices until 70% cooked. Strain and set aside.
Layer the Biryani:
-
In a large pot, start with a layer of rice, followed by a layer of biryani masala, fried fish, and crispy fried onions.
-
Drizzle with ghee and saffron milk, and sprinkle chopped coriander.
-
Repeat the layers, ending with a layer of rice on top.
-
Garnish with green chilis, food colouring, and a splash of Kerwa water.
Final Steps:
-
Cover the pot tightly and cook on low heat for 45 minutes.
Cook the Biryani:
-
Uncover to reveal perfectly cooked and succulent Fish Biryani.
-
Plate up this mouthwatering dish and serve it with your favourite raita or salad.
Note
To enhance the flavour, marinate the fish overnight in the refrigerator.
Ensure the rice is only partially cooked during parboiling to prevent it from becoming mushy during the final cooking stage.
Use a heavy-bottomed pot for even heat distribution and to avoid burning the bottom layer.
Cooked this? Let us know
No ratings yet. Be the first.
More Indian recipes
See allChicken Curry: No Onions!
A rich chicken curry made without any onions, using tomatoes, ghee and warm spices for a thick, full-flavoured gravy.
Cashew Chicken Curry
Tender chicken in a rich, creamy cashew sauce with aromatic spices and a gentle heat.
Chicken 65 Biryani
Crispy, spicy Chicken 65 layered with fragrant biryani rice. Two favourites in one dish.