South Indian Tomato Rice
One-pot South Indian tomato rice: rice simmered with tomatoes, onion, curry leaves and warm spices until fluffy. An easy weeknight meal or lunchbox dish.
By The JollyRoses Kitchen · Updated
- Prep
- 15 min
- Cook
- 40 min
- Total
- 1 hr 25 min
- Serves
- 3

Tomato rice, called thakkali sadam in Tamil (Karnataka's tomato bath is a close cousin), is rice cooked in a spiced tomato and onion base. It is tangy, gently hot and a favorite for lunchboxes and quick dinners.
This recipe uses the one-pot method: the rice cooks right in the tomato masala, so every grain soaks up the flavor and there is only one pot to wash.
Why this recipe works
- Cooking the tomatoes down until the oil separates gives a deep, rounded flavor instead of a raw, sour one.
- Soaking the rice for 20 minutes helps it cook evenly in the thick tomato base.
- Resting the pot off the heat lets the rice finish steaming so the grains stay separate.
South Indian Tomato Rice recipe
By The JollyRoses Kitchen · 1 hr 25 min total · Easy
Ingredients
For the rice
For the tomato masala
Equipment
- Heavy-bottomed pot with a tight-fitting lid (about 3 quarts)
- Fine-mesh strainer
- Wooden spoon
Instructions
-
Rinse and soak the rice
Rinse the rice in several changes of water until it runs mostly clear. Cover with fresh water and soak for 20 minutes, then drain well in a strainer.
-
Bloom the whole spices
Heat the oil in the pot over medium heat. Add the bay leaf, cinnamon, cloves, fennel and mustard seeds. When the mustard seeds pop, add the curry leaves and stir for a few seconds.
-
Cook the onion
Add the onion and green chilies and cook, stirring often, until the onion is soft and light golden, 5–6 minutes. Stir in the ginger-garlic paste and cook until the raw smell is gone, about 1 minute.
-
Cook down the tomatoes
Add the tomatoes, turmeric, chili powder, ground coriander and salt. Cook, stirring and mashing, until the tomatoes collapse into a thick paste and oil glistens at the edges, 8–10 minutes. Stir in the garam masala, mint and cilantro.
-
Add the rice and water
Add the drained rice and stir gently for 1 minute to coat the grains. Pour in the water, taste the liquid and adjust the salt (it should taste slightly salty). Bring to a boil.
-
Simmer covered
Reduce the heat to the lowest setting, cover tightly and cook without lifting the lid for 15 minutes, until the water is absorbed and the rice is tender.
-
Rest and fluff
Turn off the heat and leave the pot covered for 10 minutes. Fluff gently with a fork, remove the whole spices if you like, and garnish with cilantro.
Tips for the best south indian tomato rice
- Do not rush the tomato stage. Undercooked tomatoes make the rice taste sharp and raw.
- Juicy tomatoes add liquid, so if yours are very watery, reduce the water by 2–3 tablespoons.
- For a pressure cooker, follow the same steps in the cooker, use 1½ cups water (1¼ cups for basmati) and cook for 2 whistles on medium heat, then let the pressure release naturally.
- Leftover tomato masala freezes well; stir it into plain cooked rice for a quick lunch.
- The ingredients are naturally gluten-free, but some packaged spice blends such as garam masala are processed alongside wheat; check labels if you need the dish gluten-free.
Substitutions
Storing and reheating
Refrigerate leftovers in a shallow covered container within 1 hour of cooking (never more than 2 hours) and eat within 3 days. Sprinkle with a little water and reheat until steaming hot all the way through.
What to serve with south indian tomato rice
- Cucumber Raita
- Coconut Chutney
- Potato fry
- Papad or chips
- Boiled egg or onion raita
Frequently asked questions
What is thakkali sadam?
Can I make tomato rice with leftover rice?
Why is my tomato rice mushy?
Is tomato rice vegan?
Rate this recipe
Made it? Tap a star to rate — no sign-up needed.
Reviews
No reviews yet.
You might also like
All indian rice
Tamarind Rice (Puliyodarai)
Bisi Bele Bath