Vegan Kalam Polo (Cabbage Rice)

Vegan, plant-based, Iranian, Persian Kalam Polo Cabbage Rice

If tofu in Persian food is wrong, then I don’t want to be right. Kalam Polo is a mixed Persian rice dish. Kalam is cabbage and polo is rice in Farsi. It is traditionally made with meat, but our vegan version is made with tofu for that added protein.

The cabbage is sauteed and cooked with saffron. The tofu is marinated with various spices from cumin to cinnamon, baked in the oven, and then combined with the sauteed cabbage. The cabbage and tofu mixture is then layered with parboiled Basmati rice and steamed to create a delish, one-of-a-kind vegan Persian rice dish by my amazing mother. We also used flour tortilla for the tahdig, the crispy bottom of the pot in lieu of the traditional potato tahdig.

My mother also became vegan several years ago. She loved my dog and realized if she would not want my dog to suffer, why wouldn’t she extend that compassion to all animals? Why love some animals and eat or exploit others?

We hope you give this recipe a try and enjoy the blending of various cultures and flavors. I had fun making this recipe with our homegrown cabbage!

The earth is but one country and mankind its citizens.” – Baha’u’llah

clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon
Vegan, plant-based, Iranian, Persian Kalam Polo Cabbage Rice

Vegan Kalam Polo (Cabbage Rice)

  • Author: Plant-Based Persian
  • Total Time: 2 hours 30 minutes
  • Yield: 45 people 1x
  • Diet: Vegan


A unique twist on a Persian cabbage rice dish


Units Scale
  • 1 14 oz package extra-firm tofu (pressed for 20 minutes to remove excess liquid)

Tofu Marinade

  • 1 tsp turmeric
  • 1 tsp cumin powder
  • 1 tsp garlic powder
  • 1 tsp onion powder
  • 1 tsp paprika
  • 1 tsp cinnamon
  • 1/4 tsp curry powder
  • 1/4 tsp black pepper
  • 1/2 tsp salt
  • 3 Tbsp tomato paste
  • 1 Tbsp of soy sauce

Sauteed Cabbage

  • 2 Tbsp oil
  • 1/2 medium cabbage head, thinly sliced
  • 1/2 tsp salt
  • 4 Tbsp of Brewed Saffron

Basmati Rice

  • 3 cups Basmati rice (washed)
  • 1 Tbsp salt
  • 1 Tbsp oil
  • 2 Tbsp Brewed Saffron
  • Flour tortilla for tahdig


Prepare Tofu

  1. Preheat oven to 375 F.
  2. Prepare “Tofu Marinade”
  3. Add the pressed tofu to the marinade and use your hands or a fork to break apart the tofu into crumbles and combine well with the marinade.
  4. Put the marinated tofu crumbles on a parchment-lined baking sheet.
  5. Bake in the oven for 20 minutes (stirring the tofu in the middle of the cooking time). Set aside.

Prepare Sauteed Cabbage

  1. Add 2 Tbsp of oil to a large sauté pan on medium heat.
  2. Add the shredded cabbage and sauté until golden (about 20 minutes).
  3. Add the Brewed Saffron and salt. Keep sautéing another 5-10 minutes.
  4. Add the baked tofu to the sauteed cabbage, and set aside. 

Prepare Basmati Rice

  1. Fill a large pot with water (3/4 full) over high heat.
  2. Add the salt and bring to a boil.
  3. Once the water is boiling, add the Basmati rice and cook (uncovered) for 10 minutes.
  4. Drain the rice.

Combine Basmati Rice with Cabbage Mixture

  1. Add 1 Tbsp oil and 2 Tbsp Brewed Saffron to the bottom of a large Persian rice cooker or non-stick pot with lid.
  2. Add the flour tortilla (or a medium Russet potato, washed, peeled and cut into 4-5 slices for traditional tahdig).
  3. Add a layer of half the Basmati rice.
  4. Add the cabbage and tofu mixture.
  5. Add the remaining Basmati rice.
  6.  Cook for 50-55 minutes in the Persian rice cooker (if using a non-stick pot, cook covered for 50-55 minutes on medium/low heat).
  7. Stir to combine the Persian rice mixture before serving.


  • Prep Time: 60 minutes
  • Cook Time: 90 minutes
  • Category: Main Dish
  • Cuisine: Persian/Iranian

Keywords: Persian, Iranian, Vegetarian, Vegan, Iranian, Plant-based, Polo, Kalam, Cabbage, Tofu