Sri Lankan milk rice, known as kiribath, is rice simmered until tender with coconut milk and salt, then pressed into a tray and cut into pieces. It is often served for breakfast or on special occasions, and its mild coconut flavor pairs especially well with spicy sambols and curries.
Ingredients
- 2 cups (370 g) white rice, preferably short- or medium-grain
- 4 cups (946 ml) water
- 1½ cups (360 ml) full-fat coconut milk, well stirred
- 1 teaspoon (6 g) fine salt
Instructions
- Rinse and measure. Put the rice in a bowl and cover it with cool water. Swirl the grains with your fingers, pour off the cloudy water, and repeat until the water is mostly clear, usually three or four rinses. Drain well. Measure the water, coconut milk, and salt so they are ready to add.
- Start cooking the rice. Add the drained rice and 4 cups (946 ml) water to a heavy-bottomed saucepan with a lid. Bring to a boil over medium-high heat, stirring once to keep the grains from sticking. When the water boils, reduce the heat to low and cover the pan. Simmer gently for 20 minutes. Keep the lid on as much as possible; frequent lifting lets out steam and can leave the rice unevenly cooked.
- Check the grains and add coconut milk. After 20 minutes, check that most of the water has been absorbed and the rice is softening. If the pan is dry but the grains are still firm, add 2 to 3 tablespoons of hot water, cover, and cook for a few more minutes before continuing. Stir together the coconut milk and salt, pour them over the rice, and fold gently from the bottom so the liquid is distributed without crushing the grains.
- Cook until thick and soft. Cover the pan again and cook on low for 10 minutes. Stir once or twice, gently scraping the base of the pan to prevent scorching. The rice should be very soft, cohesive, and thick enough that a spoon leaves a track for a moment. If it still looks loose, cook uncovered for 2 to 3 minutes, stirring frequently; if it seems dry before the rice is tender, add a little hot water.
- Rest the rice. Take the pan off the heat, cover it, and leave it undisturbed for 10 minutes. This short rest lets the grains absorb the remaining coconut milk and makes the mixture easier to shape.
- Shape and cut. Lightly wet a shallow serving plate or small tray. Spoon the hot rice onto it and use a damp spatula or the back of a spoon to press it into an even layer about ¾ inch (2 cm) thick. Smooth the top without packing it so tightly that it becomes gummy. Leave it for 10 minutes to settle, then cut into diamonds or squares with a damp, sharp knife. Serve warm or at room temperature.
Tips
- Choose a rice that softens well. Short- or medium-grain white rice makes cohesive slices. A familiar local choice in Sri Lanka is a white rice variety such as raw samba, but it may not be easy to find outside the region. Medium-grain white rice is a practical substitute; long-grain rice can work, though the pieces may be less compact and more prone to breaking. Avoid brown rice for this timing because it needs more liquid and a much longer cook.
- Use full-fat coconut milk. Stir the can or carton thoroughly before measuring, because the thick cream can separate from the liquid. Full-fat milk gives kiribath its rich flavor and helps it set. Light coconut milk can be substituted, but the result will taste less rich and may be softer; cook it down until the rice is thick rather than adding extra liquid.
- Keep the heat low after the boil. A vigorous simmer can scorch the coconut milk or cook the bottom before the top is tender. Use a heavy pan if available, and stir gently when you add the coconut milk. If a thin layer sticks, do not scrape burnt bits into the rest of the rice.
- Shape while the rice is warm. It is easier to spread and press before it cools. Wet the spatula and knife between strokes to reduce sticking, but do not add water to the tray or rice in excess. The rice should be moist and sliceable, not wet or loose.
Serving Suggestions
Kiribath is commonly cut into neat pieces and eaten by hand or with a spoon. For a classic savory plate, serve it with lunu miris, a punchy Sri Lankan relish traditionally made with chili, onion, salt, and lime. Seeni sambol, a sweet-savory onion relish, is another popular partner. These accompaniments bring heat, acidity, and sweetness to the rice’s gentle coconut flavor, so offer them on the side and let everyone choose how much to add.
It also works alongside a curry, such as a vegetable or lentil curry, especially when the rice is part of a larger meal. For a simple breakfast, serve a few warm pieces with a spicy condiment and a cup of tea. If you are serving it at a gathering, cut the rice after it has settled but while it is still slightly warm; the edges tend to look cleaner than if you wait until it is fully cold.
Variations
There are family and regional variations in both rice choice and texture, so this is one practical stovetop version rather than a claim to a single definitive formula. Some cooks prefer a softer, spoonable result, while others cook the mixture until quite firm so it can be pressed and cut cleanly. For firmer pieces, use the full-fat coconut milk, cook until thick, and press into a slightly thinner layer. For softer rice, stop cooking when it is creamy and serve it directly in bowls instead of shaping it.
For a mild aromatic note, add one bruised pandan leaf to the water while the rice simmers, then remove it before shaping. Pandan can be difficult to find; leaving it out is perfectly fine, while a small piece of lemon or lime zest gives a different, citrusy aroma rather than the same flavor. Some cooks use fresh coconut milk, which works in the same quantity if it is well strained. Avoid adding sugar to the basic savory batch, since sweet toppings and sambols are usually served separately.
You can also make smaller portions by halving every ingredient and using a smaller saucepan; start checking the rice a little earlier because a smaller quantity may cook faster. For a crowd, scale the ingredients up evenly and use a wide, heavy pot so the rice cooks in a reasonably even layer. If the pot is crowded, cook in batches rather than doubling the cooking time and risking a scorched bottom.
Storage and Reheating
Kiribath is best freshly made, when its texture is soft and the coconut aroma is most noticeable. Do not leave cooked rice at room temperature for more than 2 hours. If you will not serve it promptly, transfer it to a shallow, covered container and refrigerate it as soon as it has stopped steaming heavily. Properly refrigerated leftovers keep for 3 to 4 days. Keep sambols and other toppings in separate containers so their moisture does not soften the rice.
To reheat, place a portion in a microwave-safe dish with a teaspoon or two of water, cover loosely, and heat in short intervals, turning or stirring as needed. You can also warm it gently in a covered pan with a splash of water. Reheat leftovers to 165°F (74°C), checking the center with a food thermometer, and serve promptly. The rice will soften as it warms, so it may not hold its original sharp edges. For longer storage, freeze portions in airtight wrapping for up to 2 months; thaw in the refrigerator and reheat thoroughly. Do not leave cooked rice out to cool for an extended period.
Frequently Asked Questions
Is kiribath the same as rice pudding?
Not quite. Both can contain rice and milk, but this Sri Lankan dish is usually savory, made with coconut milk and salt, and cooked until it can be pressed into a tray and cut. It is generally served with savory accompaniments rather than eaten as a sweet dessert.
Can I make milk rice with jasmine or basmati rice?
Yes, but the texture will differ. Jasmine rice may turn soft but usually makes less firm slices than short- or medium-grain rice. Basmati grains tend to stay separate, so the finished kiribath may crumble when cut. If using either, keep the heat low, check tenderness before adding all the coconut milk, and expect a looser result.
Why is my kiribath runny?
It may need more time for the coconut milk to cook down, or the rice may have retained extra water after rinsing. Simmer uncovered over low heat, stirring gently and often, until a spoon leaves a brief track through the mixture. Next time, drain the rinsed rice thoroughly and avoid adding extra water unless the grains are still firm.
Why did the bottom burn before the rice was tender?
The heat may have been too high, the pan may have had a thin base, or the rice may have gone too long without a gentle stir. Use the lowest steady heat once the water boils and a heavy-bottomed saucepan if possible. If the bottom has scorched, transfer the unburnt rice to a clean pan without scraping the dark layer into it.
Can I make it ahead?
Yes. Cook and shape the rice, then refrigerate it within 2 hours in a covered container. It is fine to prepare it a day ahead, though it will firm up as it chills. Reheat portions to 165°F (74°C) for a softer texture, or serve them chilled or at room temperature if they have been handled and stored safely.
Can I use coconut cream instead of coconut milk?
You can, but coconut cream is much thicker and richer. Dilute it with water until it has roughly the consistency of full-fat coconut milk, then measure 1½ cups (360 ml). If you use it undiluted, the mixture may become oily or overly dense, and you may need more water to cook the rice evenly.
Related
- Goya Cuban Rice and Beans: A One-Pot Weeknight Recipe
- Gluten-Free Spanish Rice That Turns Out Fluffy
- Golden Rice Thai: Fragrant Turmeric Coconut Jasmine Rice
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).