How to Make Sabzi Polo ba Mahi (Persian Herb Rice & Fish) – Easy & Authentic
Learn how to make Sabzi Polo ba Mahi (Persian Herb Rice & Fish). It’s easy, authentic, and full of great flavor.

Sabzi Polo ba Mahi (Persian Herb Rice & Fish)
Learn how to make this authentic Persian meal. Perfect for sharing with family and friends!
Yield: 4 servings
Ingredients
Sabzi Polo Persian Herb Rice
- 2 cups basmati rice 340g
- 2 tbsp salt
- 2 tsp saffron strands crushed into a powder in a pestle and mortar
- ¼ cup hot water 60 ml, (for blooming saffron)
- 1 cup finely chopped Italian flat-leaf parsley 35g, (leaves only)
- 1 cup finely chopped cilantro 50g, (leaves and tender stems)
- 1 cup finely chopped dill 30g, (leaves only)
- ½ cup finely chopped scallions 35g, (green parts only)
- 3 tbsp neutral oil (grapeseed, avocado, or vegetable oil)
- 3 tbsp salted butter
- ¼ cup water 60ml, (for steaming rice)
Mahi (White Fish, I used Branzino/Sea Bass)
- 1+3 tbsp neutral oii (grapeseed, avocado, or vegetable oil)
- 4 fillets Mediterranean sea bass (branzino) about 6oz each 170g, skin on
- 1 tsp garlic powder
- 1 tsp turmeric
- ½ tsp black pepper
- 1 blood orange sliced into half-moons, seeds removed
- 1 lemon sliced into half-moons, seeds removed
Instructions
To make the Persian Herb Rice:
- Place rice in a large bowl. Wash rice well, till the cloudy water runs clear. Allow rice to soak in water for 30 minutes to 1 hour.
- In a large stockpot, bring 8 cups (about 2 litres) of water to a boil. Add salt to water.
- Drain rice and transfer to stockpot of boiling water. Decrease the heat to medium-high and allow the rice to boil for 5-7 minutes. At the 5-minute mark, take a grain and if it easily breaks between your finger and thumb, remove from the flame (cooking times can vary across rice brands). The grains should be soft on the outside but still have a firm core.
- Drain the rice immediately through a fine-mesh colander and rinse briefly with warm water to remove excess salt. Scoop out 1 cup (230g) of cooked rice and set aside.
- In a small bowl, bloom saffron: whisk the saffron powder with ¼ cup (60 ml) hot water. Set aside.
- In a large bowl, combine parsley, cilantro, dill, and scallions. Gently toss. Add the reserved 1 cup of rice to the herb mixture and fold gently to combine, being careful not to break the rice grains.
- In a large 10-in/23-cm non stick pot, heat 3 tablespoons neutral oil and 2 tablespoons butter over medium heat. Swirl to coat the bottom evenly. The butter should melt and become foamy but should not brown. If it starts to darken too quickly, reduce the heat slightly.
- Add the saffron water and the rice you had set aside, gently mixing so each grain is coated with saffron. Flatten this mixture into an even layer—this will form the golden crust (tahdig).
- Add the herb and rice mixture to the pot, spreading it evenly. Using the handle of your wooden spoon, poke 4-5 holes into the rice, so the rice has room to steam (but don’t pierce all the way to the bottom of the pot). Place a paper towel or tea cloth on top of the pot and seal shut with lid. Make sure to tie the corners of the tea cloth on top of the pot’s lid. (without piercing the tahdig layer).
- Drizzle ¼ cup / 60ml water evenly over the rice. Place a clean tea towel or paper towel over the pot, then secure the lid on top. If using a tea towel, tie the corners up away from the heat to prevent burning.
- Cook over medium-high heat for 7 minutes to develop the golden crust. You should hear a gentle sizzling sound—this is a sign that the tahdig is forming. If you smell burning, reduce the heat slightly. Reduce the heat to low and steam for 40 minutes. Avoid lifting the lid during this time to retain steam.
- Turn off the heat and let it rest for 5-10 minutes (do not remove the lid yet). Place a large platter over the pot. Holding the pot handles firmly, carefully invert it onto the platter to release the rice. If the tahdig does not release easily, place the pot back on low heat for 1-2 minutes to loosen it.
For the White Fish:
- Use paper towels to thoroughly pat the fish dry on both sides.
- In a small bowl, mix the garlic powder, sea salt, turmeric, and black pepper. Drizzle 1 tablespoon of neutral oil over the fillets and rub it in evenly, ensuring each fillet is lightly coated. Sprinkle the seasoning mixture evenly over both sides, gently rubbing it in to coat.
- In a large nonstick or cast-iron skillet, heat 3 tablespoons of grapeseed oil over medium-high heat until shimmering. Depending on the size of your skillet, cook the fillets in batches to avoid overcrowding.
- Carefully place two fillets in the pan, skin-side down, and press them gently with a spatula for the first 30 seconds to ensure even contact. Cook for 4-5 minutes without moving them, until the skin is deeply golden and crisp. Carefully flip the fillets and cook for another 2-3 minutes on the second side, until the flesh is opaque and flakes easily.
- Transfer the cooked fillets to a plate lined with paper towels and loosely cover to keep warm. Repeat with the remaining fillets, adding a little more oil if needed. Serve immediately with blood orange and lemon slices.
- Once the Sabzi Polo is unmolded and flipped onto a serving platter, place the fried branzino directly on top of the rice. Serve immediately.