Thoran (തോരൻ) — Kerala Coconut Vegetable Stir-Fry
Thoran is Kerala's dry vegetable stir-fry, finished with fresh coconut, curry leaves, mustard seeds, and coconut oil. This cabbage version is a home staple and a classic part of the festive sadya meal.

Printable Recipe Card
Servings: 4 · Total: 35 min · Difficulty: easy
Ingredients (quick list)
- 600 g green cabbage (finely shredded)
- 120 g fresh grated coconut
- 6 shallots (peeled and roughly chopped)
- 2 green chiles (slit lengthwise)
- 0.75 tsp cumin seeds
- 0.5 tsp ground turmeric
- 1 tsp fine sea salt
- 2 tbsp coconut oil
- 1 tsp black mustard seeds
- 1 tbsp split urad dal
- 2 dried red chiles (broken in half)
- 12 leaf fresh curry leaves
+ 1 more in the full ingredients section below.
Steps (summary)
- Place the shredded cabbage in a wide bowl and sprinkle it with the fine sea salt. Toss thoroughly with your fingers, then let i…
- In a mortar or food processor, lightly crush the grated coconut, shallots, green chiles, cumin seeds, and turmeric. Do not pure…
- Heat the coconut oil in a wide kadai, wok, or heavy skillet over medium heat. Add the mustard seeds and let them crackle, then…
- Add the salted cabbage to the pan and stir well to coat it in the tempered oil. Cook uncovered for 2 minutes, turning the cabba…
- Scatter the crushed coconut mixture over the cabbage and add the measured water around the edge of the pan. Cover the pan and c…
- Remove the lid and cook for 2 to 3 minutes more, stirring gently, until excess moisture evaporates and the thoran looks dry and…
Cultural Background
In Kerala, thoran is an everyday vegetable preparation and an essential component of the vegetarian sadya served on a banana leaf. Its restrained spicing highlights local coconut, curry leaves, and seasonal produce.
Equipment
💡 Tips
- Use freshly grated coconut if possible; frozen grated coconut is the best substitute, but thaw it fully and squeeze out excess ice crystals before cooking.
- Keep the heat moderate after adding coconut, because high heat can make the coconut oily and dull the fresh curry-leaf aroma.
- Thoran should be moist but not saucy, so use a wide pan and uncover it at the end to drive off steam.
⚠️ Common Mistakes
❌ Cooking the cabbage until it becomes wet and limp.
✅ Fix: Salt it briefly, use a wide pan, and finish uncovered so steam can escape.
❌ Grinding the coconut mixture into a paste.
✅ Fix: Pulse or crush only until coarse, because thoran should have a loose, grated texture.
❌ Burning the urad dal during tempering.
✅ Fix: Keep the heat at medium and add the cabbage as soon as the dal turns pale golden.
🧊 How to Store
Cool leftovers quickly and refrigerate in an airtight container for up to 3 days. Reheat in a covered skillet over low heat with 1 tbsp water for 3 to 4 minutes, then uncover briefly to restore the dry texture.
📅 Make Ahead
Shred the cabbage and crush the coconut masala up to 8 hours ahead. Keep them refrigerated in separate covered containers, then temper and cook just before serving for the freshest aroma.
🍽️ Pairs Well With
- Steamed Kerala matta rice
- sambar
- rasam
- avial
- mango pickle
- pappadam.
Regional Variations
- Beans thoran uses finely chopped green beans and is common in everyday Kerala meals.
- Beetroot thoran has a vivid red color and a sweeter flavor, often balanced with extra green chile.
- Carrot-cabbage thoran combines both vegetables for a slightly sweeter sadya-style side dish.
Ingredients
- 600 ggreen cabbage (finely shredded)
- 120 gfresh grated coconut
- 6shallots (peeled and roughly chopped)
- 2green chiles (slit lengthwise)
- 0.75 tspcumin seeds
- 0.5 tspground turmeric
- 1 tspfine sea salt
- 2 tbspcoconut oil
- 1 tspblack mustard seeds
- 1 tbspsplit urad dal
- 2dried red chiles (broken in half)
- 12 leaffresh curry leaves
- 60 mlwater
🔄 Substitutions
- green cabbage→ green beans
- fresh grated coconut→ frozen grated coconut
- shallots→ red onion
Instructions
- 1
Place the shredded cabbage in a wide bowl and sprinkle it with the fine sea salt. Toss thoroughly with your fingers, then let it stand for 10 minutes so the cabbage softens slightly and cooks quickly without becoming watery.
- 2
In a mortar or food processor, lightly crush the grated coconut, shallots, green chiles, cumin seeds, and turmeric. Do not puree the mixture; authentic thoran should have a coarse, fluffy coconut texture with visible flecks of shallot and chile.
- 3
Heat the coconut oil in a wide kadai, wok, or heavy skillet over medium heat. Add the mustard seeds and let them crackle, then add the urad dal, dried red chiles, and curry leaves and fry for about 45 seconds until the dal turns pale golden and aromatic.
- 4
Add the salted cabbage to the pan and stir well to coat it in the tempered oil. Cook uncovered for 2 minutes, turning the cabbage frequently so it begins to wilt evenly without browning.
- 5
Scatter the crushed coconut mixture over the cabbage and add the measured water around the edge of the pan. Cover the pan and cook over medium-low heat for 5 to 7 minutes, stirring once halfway through, until the cabbage is tender but still lightly crisp.
- 6
Remove the lid and cook for 2 to 3 minutes more, stirring gently, until excess moisture evaporates and the thoran looks dry and separate. Taste for seasoning and serve warm, making sure the coconut remains fresh-tasting rather than toasted hard.
🪪 Recipe Passport
Cultural Background
In Kerala, thoran is an everyday vegetable preparation and an essential component of the vegetarian sadya served on a banana leaf. Its restrained spicing highlights local coconut, curry leaves, and seasonal produce.
Regional Variations
Researched from multiple sources and validated by the Zaffaron editorial team. Every recipe is tested for accuracy, measurements, and cultural authenticity.
📚 Sources & Cultural References
- Vijayan Kannampilly — The Essential Kerala Cookbook — (2003)
- Chandra Padmanabhan — Dakshin: Vegetarian Cuisine from South India — (1994)
Sources cited by the Zaffaron editorial team during recipe research. Cultural and culinary references supporting authenticity claims.
Nutrition per serving
Pairs well with
If you enjoyed this recipe, here are a few related Zaffaron recipes to try next.
Does your family make this differently?
Every family has their own version. Maybe your grandmother adds a secret ingredient, or your aunt has a completely different technique. Preserve your family's version — with their name on it, forever.
You Might Also Like

Makki di Roti (ਮੱਕੀ ਦੀ ਰੋਟੀ) — Indian Cornmeal Flatbread, Rustic and Slightly Crisp
Indian · Breads · 40 min

Bisi Bele Bath (ಬಿಸಿ ಬೇಳೆ ಬಾತ್) — Indian Spiced Rice-Lentil Stew with Vegetables
Indian · Main Courses · 65 min

Medu Vada (మెదు వడ) — Indian Fried Urad Dal Doughnuts with Coconut Chutney
Indian · Appetizers · 555 min

Nukazuke (糠漬け) — Japanese Rice Bran Pickles
Japanese · Side Dishes · 40 min

Ohitashi (お浸し) — Japanese Dashi-Soaked Greens
Japanese · Side Dishes · 20 min

Panta Bhat (পান্তা ভাত) — Overnight Fermented Rice with Fried Ilish
Bangladeshi · Rice Dishes · 35 min

Ash-e Torsh (آش ترش) — Sour Herb and Legume Soup
Persian · Soups · 145 min

Ohn No Khao Swe (အုန်းနို့ခေါက်ဆွဲ) — Burmese Coconut Chicken Noodles
Burmese · Main Courses · 75 min
Reviews
Cooked this recipe?
Tap the stars to rate it — that's all it takes. A few words are welcome but optional.
No ratings yet. Cooked this one? Be the first to rate it — it takes one tap.