Iran · Central Asia & Middle East

Persian Green Bean Rice with Saffron Tahdig

Updated November 3, 2026

Total time
2 hr 5 min
prep 45 min · cook 1 hr 20 min
Serves
6
portions as written
Safe temperature (USDA)
160°F / 71°C
check the thickest piece
Cuisine
Iran
Central Asia & Middle East

Jump to recipe

Persian Green Bean Rice with Saffron Tahdig

Persian green bean rice, often called lubia polo, layers basmati rice with green beans and warmly spiced ground beef, then steams everything together in one pot. A saffron-scented, golden tahdig forms at the bottom; versions vary by household, and the rice can also be made without meat.

Ingredients

  • 3 cups (570 g) basmati rice
  • 3 quarts (2.8 L) water, for parboiling the rice
  • 1 tablespoon (15 g) kosher salt, for the parboiling water
  • 2 tablespoons (30 ml) neutral oil, such as sunflower or grapeseed oil, for the filling
  • 1 large yellow onion, about 1 cup chopped (200 g)
  • 1 pound (450 g) ground beef, preferably 85–90% lean
  • 3 garlic cloves (about 9 g), minced
  • 1 pound (450 g) green beans, trimmed and cut into 1-inch (2.5 cm) pieces
  • 2 tablespoons (32 g) tomato paste
  • 1 cup (240 ml) crushed tomatoes
  • 1 teaspoon (3 g) ground turmeric
  • 1 teaspoon (2 g) ground cumin
  • ½ teaspoon (1 g) ground cinnamon
  • ½ teaspoon (1 g) black pepper
  • ¾ teaspoon (4 g) fine salt, or to taste, for the filling
  • 3 tablespoons (45 ml) neutral oil, for the pot bottom and tahdig
  • 2 tablespoons (30 ml) water, for the pot bottom
  • ¼ teaspoon (about 0.2 g) saffron threads, optional but traditional in many versions
  • 2 tablespoons (30 ml) hot water, for blooming the saffron
  • ¼ cup (10 g) chopped fresh parsley or cilantro, optional, for serving

Instructions

  1. Rinse and soak the rice. Put the basmati in a bowl and cover it with cool water. Swirl the grains with your fingers, drain, and repeat until the water is less cloudy. Cover the rice with fresh water and soak for 20 minutes, then drain well. Allow about 25 minutes after soaking to chop the vegetables and measure the remaining ingredients; this recipe’s prep time includes both the soak and that hands-on preparation.
  2. Bloom the saffron and prepare the filling ingredients. If using saffron, gently crush the threads between your fingers or in a small mortar, then stir them into 2 tablespoons of hot water. Set aside. Dice the onion, mince the garlic, and trim and cut the beans. Keeping the beans in similar-sized pieces helps them cook evenly and makes the filling easier to layer.
  3. Brown the beef and onion. Heat 2 tablespoons of oil in a wide, heavy skillet or saucepan over medium-high heat. Add the onion and cook for 4–5 minutes, stirring, until softened and beginning to turn golden. Add the ground beef and break it into small crumbles. Cook for 6–8 minutes, stirring occasionally, until no pink remains. Check the largest crumbles with a food thermometer; USDA FSIS safe minimum temperature for ground beef is 160°F (71°C). If there is more than about a tablespoon of rendered fat, spoon off the excess.
  4. Season and cook the beans. Stir in the garlic, turmeric, cumin, cinnamon, and black pepper; cook for 30 seconds, just until fragrant. Add the tomato paste and stir for another minute to deepen its flavor. Mix in the crushed tomatoes and salt, then add the green beans. Cover and simmer over medium-low heat for 10–12 minutes, stirring once or twice, until the beans are tender but still hold their shape. Uncover for the last few minutes if the mixture looks watery. The finished filling should be moist and cohesive, not swimming in sauce.
  5. Parboil the rice. While the filling simmers, bring 3 quarts of water and the tablespoon of kosher salt to a boil in a large pot. Drain the soaked rice and add it to the boiling water. Cook uncovered for 5–7 minutes, stirring gently once, until the grains are tender on the outside but still have a firm center. The exact time depends on the rice, so taste a grain rather than relying only on the clock. Drain immediately in a fine-mesh colander; do not rinse it, since a little surface starch helps the layers settle together.
  6. Set up the tahdig base. Choose a heavy 5- to 6-quart pot with a close-fitting lid. Stir the remaining 3 tablespoons of oil with 2 tablespoons of water and pour it into the clean pot. Spread about one-quarter of the drained rice evenly over the bottom. This first layer protects the rice above and becomes the crisp crust. If you prefer a softer base, use a nonstick pot and keep the heat low during steaming.
  7. Layer rice and filling. Spoon about one-third of the green bean and beef mixture over the rice base, leaving a little space around the edge so steam can circulate. Add a loose layer of rice, followed by another layer of filling, and continue, finishing with rice on top. Do not pack the layers down; loose grains steam more evenly. Drizzle the saffron water over the top, if using. Make three or four small openings through the rice with the handle of a spoon to help steam rise from the bottom.
  8. Steam until fluffy and form the crust. Wrap the pot lid in a clean kitchen towel, keeping the towel ends secured well above the burner, and cover the pot. Set over medium heat for 5 minutes to build steam, then reduce the heat to low and cook for 40 minutes. Keep the lid closed so the steam stays inside. If your stove runs hot, use a heat diffuser or the smallest burner to prevent the bottom from scorching. Turn off the heat and let the pot stand, covered, for 5 minutes.
  9. Serve the rice. For a dramatic presentation, run a thin spatula around the edge and invert the pot onto a large platter so the golden tahdig sits on top. If the crust does not release in one piece, do not force it: spoon the rice onto a platter and lift the tahdig out in pieces. Serve promptly while the rice is hot and the bottom is crisp.

Tips

  • Choose beans that stay distinct. Fresh green beans give the clearest texture, but frozen cut beans work too. Thaw and drain them first, then simmer for only 5–7 minutes; frozen beans soften faster and can release extra water.
  • Keep the filling fairly dry. Excess liquid can make the rice heavy and prevent a crisp tahdig. If the tomato mixture looks loose after the beans cook, simmer it uncovered until a spoon drawn across the pan leaves a brief trail.
  • Be gentle with the rice. Parboil only until the outside is tender and the center remains firm. Fully cooked grains can turn mushy during the covered steaming stage, while under-soaked or overcooked rice may break when layered.
  • Adjust the crust to your pot and stove. A heavy pot distributes heat more evenly than a thin one. Start with the stated heat, then lower it if you smell scorching; a heat diffuser is useful on gas or electric burners that do not hold a very low setting.

Serving Suggestions

Serve lubia polo as the main dish, with a spoonful of plain yogurt or mast-o-khiar, a Persian-style cucumber and yogurt side, to balance the warm spices. A simple salad of chopped cucumber, tomato, red onion, herbs, lemon juice, and olive oil adds freshness without competing with the rice. Pickled vegetables, especially torshi, are another familiar sharp accompaniment; offer them in a small dish because their briny flavor is pronounced.

Bring the rice to the table on a broad platter if you want the tahdig to be visible, and break the crust into portions so everyone gets some. Alternatively, serve from the pot in scoops, turning each portion gently to distribute rice, beans, and beef. Fresh parsley or cilantro is optional rather than essential. A little chopped herb gives the tomato-rich filling a fresh finish, but the rice is complete without it.

Variations

Make it vegetarian. Omit the ground beef and use 1½ pounds (680 g) of green beans, adding one 15-ounce (425 g) can of drained chickpeas or 8 ounces (225 g) of sliced mushrooms if you want a heartier filling. Brown mushrooms well before adding the tomato paste, or stir in the chickpeas with the beans. The result is less savory and meaty than the original version, but the spiced tomato and bean layers still work well with the rice.

Use lamb instead of beef. Ground lamb can replace ground beef in the same quantity. It has a richer flavor and may release more fat, so spoon away excess fat before adding the garlic and spices. Follow the same safe cooking check for ground meat: the largest crumbles should reach 160°F (71°C).

Try a potato tahdig. For a thicker, more potato-forward crust, arrange a single layer of peeled potato slices, about ¼ inch (6 mm) thick, over the oil in the pot before adding rice. Use roughly 1 medium potato (about 200 g) and add a few minutes to the steaming time if the slices are thick. The potato takes the place of the bottom rice crust, so the finished tahdig will be tender inside with a browned underside.

Change the spice balance. Cinnamon is subtle here, not meant to make the rice sweet. Reduce it to a pinch if you prefer a more savory profile, or add ¼ teaspoon (0.5 g) of ground cardamom for a more fragrant version. Saffron is a valued traditional addition but can be expensive; leave it out or use a small pinch of turmeric in the blooming water for color. Turmeric will not reproduce saffron’s aroma.

Storage and Reheating

Refrigerate leftovers within 2 hours of cooking in shallow, covered containers. Keep the rice for 3–4 days in the refrigerator. Store any remaining tahdig separately if possible, since it loses crispness as it sits against moist rice. For longer storage, freeze portions in airtight freezer-safe containers for up to 2 months for best texture; thaw overnight in the refrigerator.

For a quick reheat, put a portion in a microwave-safe dish with a teaspoon or two of water, cover loosely, and heat until steaming throughout, stirring once if the portion is large. Reheat leftovers to 165°F (74°C), checking the center with a food thermometer. Reheat tahdig in a lightly oiled skillet over medium-low heat for a few minutes per side to bring back some crispness; the microwave will warm it but leave the crust soft. Avoid reheating the same portion repeatedly.

Frequently Asked Questions

What does lubia polo mean? Lubia polo is commonly translated as green bean rice: lubia refers to beans and polo is a Persian rice dish cooked with other ingredients. The name is used for versions with green beans and often a spiced meat filling. Ingredients and layering methods vary from one cook or region to another.

Can I use brown rice? Brown basmati can be used, but it needs a different parboiling and steaming schedule and will not match the texture or timing in this recipe. Follow the package’s parboiling guidance, stop while the center is still firm, and expect a chewier grain and a longer cook. For the most reliable result with these times, use white basmati.

Why did my tahdig stick to the pot? The crust may need a little more oil, the pot may not have heated evenly, or it may need to rest briefly after cooking. Use a heavy or nonstick pot, spread the oil and water evenly, keep the heat low after the initial steam-building period, and let the covered pot stand for 5 minutes before turning it out. If it still sticks, serve the rice and lift the crust out in pieces rather than scraping hard.

Can I prepare the filling in advance? Yes. Cook the beef and green bean mixture up to 2 days ahead, cool it promptly, and refrigerate it in a covered container. When assembling, use it cold or bring it just to room temperature while the rice soaks; avoid leaving it out for more than 2 hours. The rice should still be rinsed, soaked, and parboiled on the day you assemble the dish.

Can I make this without saffron? Absolutely. Saffron adds a floral aroma and golden color, but it is optional. The rice will still taste good without it. A small pinch of turmeric can add color, though its earthy flavor is different, so do not use a large amount as a direct substitute.

Related

More recipes to cook

Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes

Spotted an error? Tell us and we will correct it (corrections policy).