Creamy Indian Rice Pudding (Kheer)
This creamy Indian rice pudding, or kheer, is the kind of dessert that turns a few pantry staples into something special. Slow simmered with cardamom and a little saffron, it’s warm, lightly sweet, and smells incredible.

It comes together on the stovetop with almost no active time, and you can serve it warm or chilled. If you’ve never made a milk pudding like this before, it’s a good one to start with.
Why This Kheer Works
I keep coming back to this version because it tastes like it took hours of stirring, but most of the effort is just letting the rice plump up slowly in the milk. No oven, no tempering eggs, no fuss.
The cardamom and a few strands of saffron give it that unmistakable fragrance, and the texture is thick but still spoonable. It feels celebratory on Diwali and perfectly ordinary on a Tuesday.
Ingredients

- 1/4 cup basmati rice: other long-grain white rice works too, but basmati smells the nicest
- 4 cups whole milk: full-fat milk gives the creamiest texture; 2% works but will be thinner
- 1/3 cup granulated sugar: adjust to your taste, start with 1/4 cup if you prefer less sweet
- 4 to 5 green cardamom pods: lightly crushed so they release their seeds into the milk
- A pinch of saffron threads: optional but worth it for color and aroma
- 2 tbsp sliced almonds: for garnish
- 1 tbsp golden raisins: soaked in warm water for 5 minutes if they’re dry, then drained
- A few extra cardamom seeds or a pinch of ground cardamom: for finishing
Variations and Substitutions
- Make it jaggery-sweetened: swap the white sugar for 1/4 cup grated jaggery; the pudding will have a deeper, almost caramelized note.
- Add rose water: stir in 1/2 teaspoon right at the end for a floral twist that pairs well with the cardamom.
- Go nuttier: toast a handful of pistachios or cashews along with the almonds and sprinkle them on top.
- Dairy-free version: use full-fat oat milk or canned coconut milk; the texture will be a little thinner, so simmer a few extra minutes.
If you enjoy warm, spiced desserts, you might also like a classic chai-spiced rice pudding.
How to Make Indian Rice Pudding
Step 1: Rinse and Toast the Rice

Rinse the 1/4 cup basmati rice in a few changes of water until the water runs clear, then drain well. Place a heavy-bottomed pot over medium heat, add the drained rice, and toast it dry for about 2 minutes, stirring constantly.
The grains will go from shiny to opaque and start to smell like popcorn. Don’t let them color; you just want a gentle nuttiness that adds another layer of flavor.
Step 2: Simmer the Milk

Pour in the 4 cups whole milk, drop in the crushed cardamom pods, and crumble in the pinch of saffron. Turn the heat to medium-high and bring the milk to a gentle simmer, stirring occasionally so nothing sticks to the bottom.
As it heats, the milk will foam up quickly. Stay close and lower the heat immediately if it threatens to boil over. Once you see bubbles steady around the edges, keep it at a soft simmer, not a rolling boil.
Step 3: Cook the Pudding

Add the 1/3 cup sugar (or less, to taste) and give it a good stir. Let the pudding simmer gently for 25 to 30 minutes, stirring every few minutes, until the rice is completely tender and the milk has thickened noticeably.
It will look a little loose while it’s hot, but it continues to thicken as it cools. The pudding is ready when the grains are soft all through and a spoon dragged across the bottom leaves a trail that slowly fills back in.
Step 4: Ladle into Bowls and Garnish

Spoon the hot kheer into individual bowls or a large serving dish. Scatter the toasted almonds, drained raisins, and a light pinch of extra cardamom on top.
Serve it warm right away, or let it cool and chill it for a cold dessert later. Either way, the top will look glossy and freckled with saffron threads.
A Few Notes Before You Start
- Don’t skip the rinsing.: Washing the rice removes surface starch that can make the pudding gluey, so the final texture stays creamy but distinct.
- Stir, but don’t hover.: You need enough stirring to prevent a skin from forming and to stop the rice from catching, but constant stirring can break the grains into mush.
- Toast the nuts fresh.: A quick dry-toast in a small pan brings out their flavor far more than adding them raw straight to the bowl.
- Let it sit if you’re serving it cold.: As kheer chills, it thickens further. If it gets too thick, stir in a splash of cold milk before serving.
Storing Leftover Kheer
- Refrigerate: Cool the kheer to room temperature, then cover and store in the fridge for up to 4 days.
- Reheating: Warm gently in a saucepan over low heat, adding a splash of milk to loosen it back up. Stir often so it doesn’t scorch.
- Serve Cold: It’s excellent straight from the fridge. Stir well before dishing it out, and maybe add a little extra milk because it will have set thicker.
Frequently Asked Questions
Can I use brown rice instead of white rice?
You can, but it will take much longer to soften and the texture will be chewier. I’d stick with white rice unless you really prefer the bite of brown.
Why did my milk curdle when I added the sugar?
The milk likely boiled too fast or the sugar went in while the milk was still cold. Always bring the milk to a steady simmer first, then stir in the sugar off the direct heat if your burner runs hot.
My kheer is too thin, what can I do?
If it’s still on the stove, keep simmering until more liquid evaporates. If you’ve already taken it off the heat, you can stir in a teaspoon of cornstarch slurry and simmer for another few minutes.
Can I double the recipe for a crowd?
Yes, just make sure your pot is big enough so the milk doesn’t boil over. Doubling the ingredients works fine, and you may need 5 extra minutes of simmer time.

Indian Rice Pudding Recipe
Ingredients
Method
- Rinse the rice well and drain. In a heavy pot, dry-toast the rice over medium heat for 2 minutes until fragrant.
- Add the milk, crushed cardamom pods, and saffron. Bring to a gentle simmer, stirring often.
- Stir in the sugar and cook at a soft simmer for 25 to 30 minutes, stirring every few minutes, until the rice is tender and the milk coats the back of a spoon.
- Ladle into bowls, top with almonds, raisins, and a pinch of cardamom. Serve warm or chilled.
