Skip to content
Cooking guides

How to Cook Rice Perfectly Every Time

Rinse, measure, simmer gently and rest: four habits that give you fluffy, separate grains whether you cook basmati, sella or everyday long-grain rice.

Good rice comes down to four things: the right rice, a proper rinse, the right amount of water and a rest at the end. Get those right and you can cook rice tonight without guessing.

Start with the right rice

Different rice needs different handling. Here are the types most Pakistani kitchens use.

  • Basmati (long, thin, aromatic): best for plain boiled rice, pulao and biryani. The grains lengthen as they cook and should stay separate.
  • Sella (parboiled) basmati: firmer and more forgiving. It is hard to overcook, so it suits large batches and dawat cooking.
  • Everyday long-grain or "super kernel" rice: good for daily meals. Follow the pack's water advice, then adjust to your taste.
  • Short-grain rice (like Irri-type rice): softer and stickier. It suits kheer, and dishes where you want the grains to cling.

Old rice, stored for a while, usually cooks up drier and more separate than new rice. If your rice keeps turning sticky, it may just be a fresh batch that needs less water.

Rinse the rice

Rinsing removes surface starch, which is what makes grains clump together.

  1. Put the rice in a large bowl and cover with cold water.
  2. Swirl with your fingers, then pour off the cloudy water.
  3. Repeat 3–5 times, until the water looks only slightly milky.

For basmati, follow the rinse with a soak of 20–30 minutes in fresh cold water. Soaking helps the grains cook evenly and stretch without breaking. Drain well afterwards. Sella rice can be soaked longer, up to an hour, since it is tougher.

Tip: Don't skip draining. Rice that goes into the pot dripping wet will throw off your water measurement and turn out soft.

Two reliable methods

Method 1: Absorption (covered pot, measured water)

This is the simplest way and uses all the water you add. It works well for everyday rice.

  • Soaked basmati: about 1 cup rice to 1¼ cups water.
  • Unsoaked basmati: about 1 cup rice to 1½ cups water.
  • Sella rice (soaked): about 1 cup rice to 1½ cups water.

Then:

  1. Add the drained rice, water and a generous pinch of salt to a heavy-bottomed pot.
  2. Bring to a boil uncovered over medium-high heat.
  3. When the surface shows small craters and the water has dropped to the level of the rice, turn the heat to its lowest.
  4. Cover with a tight lid and cook for 10–12 minutes for soaked basmati, or 15 minutes for unsoaked and sella.
  5. Turn off the heat and leave it covered, without opening, for 5–10 minutes.
  6. Fluff with a fork, lifting from the edges rather than stirring.

Method 2: Boil like pasta (the dum style)

This is the traditional way for pulao and biryani, and it is the most forgiving for separate grains.

  1. Bring a large pot of water to a rolling boil. Use plenty, about 6–8 times the volume of the rice.
  2. Add salt until the water tastes lightly seasoned, plus whole spices like green cardamom, cloves or a bay leaf if you like.
  3. Add the soaked, drained rice and boil hard.
  4. After 5–6 minutes, test a grain. It should break easily when pressed but still have a firm white dot in the centre. That means it's about 70% cooked.
  5. Drain immediately in a colander.
  6. Return the rice to the pot, cover tightly, and cook on the lowest heat for 8–10 minutes to steam through (dum).

If the rice is going into a biryani, layer it with the masala once it's parboiled and finish with dum as your recipe directs.

Water ratios: why you may need to adjust

The ratios above are starting points. Several things change the result:

  • Pot width: in a wide pot, water evaporates faster, so you may need a little more.
  • Lid fit: a loose lid lets steam escape. Put a folded kitchen towel under the lid, or press foil under it, to seal.
  • Heat: a strong flame that never gets turned down fully will dry the bottom before the top cooks.
  • Rice age and brand: they vary. Note what worked, and write it on the pack.

If the rice comes out hard in the middle but the water is gone, sprinkle 2–3 tablespoons of hot water over the top, cover, and steam on low for 5 more minutes. If it's soggy, spread it on a wide tray for a few minutes to let steam escape, or uncover it on very low heat to dry out.

Tip: Never stir rice while it is simmering under the lid. Stirring breaks the grains and releases starch, and this is what gives you gluey rice.

Flavour that makes a difference

  • Salt the water. Rice cooked in unsalted water tastes flat, and adding salt later never fixes it fully.
  • Add a spoonful of oil or ghee. A teaspoon per cup helps keep grains separate and adds a little richness.
  • Toast the rice. Fry drained rice in ghee or oil for 1–2 minutes before adding water. This gives a nuttier flavour and firmer grains.
  • Use whole spices. A couple of cardamom pods, a small piece of cinnamon stick or a few cumin seeds turn plain rice into something more special.
  • A few drops of lemon juice in the cooking water keeps basmati bright white.

Fixing common rice problems

Sticky or mushy rice: too much water, not enough rinsing, or stirring. Rinse more, measure the water and leave the lid on.

Hard or crunchy rice: too little water, or the lid leaked steam. Add a little hot water and steam again.

Burnt bottom: the heat was too high, or the pot was thin. Use a heavy-bottomed pot, or place a tawa (flat griddle) under the pot on very low heat.

Broken grains: stirring too much, or soaking basmati too long. Keep to 30 minutes and fluff gently.

Rice bland or pale: not enough salt, or the water wasn't seasoned. Next time, salt the water and taste it before adding the rice.

Resting and serving

Resting is the step most people skip. Once the heat is off, the moisture inside the pot redistributes and the grains firm up. Five to ten minutes is enough. Then fluff with a fork or a flat spatula, going from the bottom up.

Keep the pot covered until you serve, and the rice will stay hot for 15–20 minutes.

Storing leftover rice

Cool leftover rice quickly by spreading it on a plate, rather than leaving it in the pot. Refrigerate it within an hour or so, in a covered container, and use it within a day. Reheat until it is steaming hot all the way through, and only reheat it once.

Quick checklist for tonight

  1. Rinse until the water is nearly clear.
  2. Soak basmati for 20–30 minutes, then drain.
  3. Measure the water, and add salt.
  4. Bring to a boil, then turn to the lowest heat and cover tightly.
  5. Cook for 10–15 minutes without lifting the lid.
  6. Rest for 5–10 minutes, then fluff gently.

Do this a few times with the same rice and the same pot, and you'll know the exact water level and timing for your kitchen.