I spent a long time making this dish wrong because of one word.
Pudding.

Every English translation I found called it an Indian sweet potato pudding, so every time I made it I reached for cream.
The result was fine and completely beside the point.
Then a friend's mother made it in front of me in about half an hour, in one steel pan, with no dairy in it at all.
The gloss on top was ghee.
Not cream, not milk, not custard.
Ghee, cooked into the mashed sweet potato until the whole thing darkened and pulled away from the sides of the pan in one shining mass.
That's shakarkandi ka halwa, and it turns out the no dairy part is deliberate.
It shows up on Hindu fasting days, Navratri and Ekadashi especially, when grains are out and simple root vegetables are in.
My wife had a bowl of it warm with a spoonful of pistachios on top and asked why we'd never made it before.
Fair question.
It's four ingredients if you're being strict, one pan, and about forty minutes of mostly stirring.
The sweet potato does the heavy sweetening on its own, so you use far less sugar than you'd expect.
Cardamom goes in at the end so the perfume survives.
Make it once and you'll stop calling it pudding too.
What Sweet Potato Halwa Actually Is
Halwa is a category, not a single recipe. Across India it covers dozens of dishes that share one method: something starchy or nutty is cooked down in ghee with sugar until it thickens into a soft, glossy, spoonable mass.
Carrot gives you gajar ka halwa.
Semolina gives you sooji halwa.
Sweet potato, shakarkandi in Hindi and sakkaravalli kizhangu in Tamil, gives you this one.
The texture is not a baked custard and it does not slice.
It's soft and dense, somewhere between a thick jam and a very rich mash, and you eat it warm with a spoon.
The fasting connection matters. Sweet potato is a permitted vrat food, so this halwa is a common thing to make on Navratri or Ekadashi. That's why so many traditional versions skip milk and grains entirely, and it's why the ghee is doing all the enriching.

Ingredients You'll Need
This is a short list where two items carry the whole dish. The ghee and the cardamom are the flavor. Everything else is support.
- Sweet potatoes (2 pounds, about 4 medium). Boiled or pressure cooked whole in their skins, then peeled and mashed. Cooking them in the skin keeps water out of the mash, which matters a lot here.
- Ghee (6 tablespoons). Use REAL ghee. It's the cooking medium, the flavor, and the gloss all at once, and its nutty toasted note is unmistakable. If you truly can't get it, clarified butter is the closest thing, and plain butter is a distant third because the milk solids burn.
- Sugar (¾ cup) or grated jaggery (¾ cup). Jaggery is the traditional choice and gives a darker, earthier, more caramel result. Plain sugar keeps the sweet potato flavor cleaner and brighter. Both are correct.
- Green cardamom (½ teaspoon ground, from about 10 pods). Crush the pods yourself and grind the seeds. Pre-ground cardamom loses its perfume in about a month on the shelf, and the perfume is the entire point.
- Saffron (a pinch), bloomed in 2 tablespoons warm water or milk. Optional in the strict sense, present in every festival version I've eaten. It gives color and a faint honeyed note.
- Cashews (¼ cup) and slivered almonds (2 tablespoons). Fried in ghee first so they stay crisp.
- Pistachios (1 tablespoon). Chopped, for the top. Green against orange.
- Golden raisins (2 tablespoons), optional. Fried in the same ghee until they puff.
- Besan, gram flour (¼ cup), optional. Toasted in ghee before the potato goes in. It thickens the halwa and adds a roasted nutty depth. Leave it out for a fasting day.
- Salt (¼ teaspoon). A small amount that makes the sweetness taste like more.
- Water (¼ cup), as needed. Only if the mash is stiff.
How to Make Sweet Potato Halwa
Step 1: Cook and Mash the Sweet Potatoes
Boil or pressure cook the sweet potatoes whole in their skins until a knife slides in with no resistance, about 25 minutes boiled or 12 minutes in a pressure cooker.
Cool them enough to handle, then slip the skins off.
Mash with a fork or a potato masher until mostly smooth with a little texture left.
Don't use a blender, because it turns the starch gluey.
Step 2: Fry the Nuts
Warm 2 tablespoons of the ghee in a heavy pan over medium heat.
Fry the cashews and almonds until they turn pale gold, about 2 minutes, then lift them out.
Add the raisins to the same ghee and pull them out the second they puff.
Step 3: Roast the Mash in Ghee
Add the remaining 4 tablespoons of ghee to the pan, then the besan if you're using it, and stir it for 2 minutes until it smells toasted.
Add the mashed sweet potato and the salt.
Now stir, steadily, over medium-low heat for 15 to 20 minutes.
The mash will go from dull orange to a deeper, glossier, slightly darker orange as the ghee works into it.
Step 4: Sweeten and Finish
Stir in the sugar or jaggery and keep going for another 8 to 10 minutes.
It'll loosen dramatically first, then tighten back up.
Add the bloomed saffron with its liquid, then take the pan off the heat and stir in the cardamom and most of the nuts.
Serve warm, with the pistachios and the rest of the nuts on top.
The Ghee Test, How to Know It's Done
There's one signal, and every halwa in India uses it. The halwa is finished when it leaves the pan.
Drag a spoon straight through the middle.
If the track stays open for a second or two before closing, and the sides of the pan behind it are clean rather than smeared, you're there.
You'll usually see a faint shine of ghee separating at the edges at the same moment.
That shine is the confirmation, and it's the reason this dish looks glossy in every photo.
Undercooked halwa is loose and dull and tastes flat.
Overcooked halwa goes dry and grainy, so stop at the first clean track.

Jaggery or Sugar
Both are traditional, and they make genuinely different desserts. This is worth choosing on purpose rather than using whatever's in the cupboard.
- Jaggery. Darker color, molasses and caramel depth, a faint mineral edge. The older and more rustic choice, and the usual one on a fasting day.
- Sugar. Cleaner and brighter, lets the sweet potato taste like sweet potato, gives a lighter orange color.
Pro tip: If you use jaggery, grate it and add it over low heat, off the boil. Jaggery dropped into a screaming hot pan seizes into hard lumps that never fully dissolve.
Making It for a Fasting Day
A few small swaps make this vrat friendly. Worth knowing if you're cooking for Navratri or Ekadashi.
- Skip the besan. Gram flour is a legume flour and is out on most fasting days.
- Use jaggery instead of refined sugar. The traditional preference.
- Use sendha namak. Rock salt instead of table salt, if you're salting it at all.
- Skip the milk. Bloom the saffron in warm water. The halwa does not need dairy and never did.

Tips for the Best Halwa
- Don't rush the ghee stage. Those 15 to 20 minutes of stirring are the recipe. Turn the heat up to save time and you'll scorch the bottom while the middle stays raw tasting.
- Cook the potatoes in their skins. Peeled and cubed potatoes soak up water and give you a thin, watery halwa that takes forever to tighten.
- Mash, don't blend. A little texture is right. A perfectly smooth puree turns sticky.
- Cardamom goes in off the heat. Its aroma is volatile and a hot pan drives it straight off.
- Serve it warm. Halwa is at its best just above room temperature, when the ghee is soft and the whole thing is glossy.
Variations
- Grated raw method. Skip the boiling and grate the raw sweet potato straight into the ghee. It takes about twice as long and gives a more textured, shreddy halwa. Very good, less convenient.
- Milk enriched. Stir in ½ cup of whole milk during the roasting stage and cook it out. Richer, softer, and not a fasting version.
- Khoya finish. A few tablespoons of crumbled khoya at the end for a festival-grade version.
- Coconut. Two tablespoons of fresh grated coconut folded in at the end, common in south Indian versions.
- Halwa burfi. Cook it five minutes past the clean track, press it into a greased tray, cool it, and cut squares.
Storing and Reheating
- Refrigerated. Airtight up to 1 week. It firms up cold, which is normal.
- Frozen. Up to 1 month in a sealed container.
- Reheating. Warm it in a pan over low heat with 1 teaspoon of ghee, stirring until it's glossy again. The microwave works in 30 second bursts but the texture is better on the stove.

Frequently Asked Questions
What is shakarkandi ka halwa, and how is it different from a Western sweet potato pudding?
It's mashed sweet potato cooked down in ghee with sugar, cardamom, and nuts until it thickens and turns glossy. A Western sweet potato pudding is usually baked, dairy based, and set into a custard. This one is stovetop, dairy optional, and spoonably soft rather than sliceable.
Can I make sweet potato halwa without milk?
Yes, and the traditional fasting-day version has no milk in it at all. The richness comes from the ghee. Bloom the saffron in warm water instead.
Can I use jaggery instead of sugar?
Absolutely, and many cooks prefer it. Grate it and add it over low heat, off the boil, so it dissolves instead of seizing. Expect a darker color and a deeper caramel flavor.
Is this halwa suitable for a fasting day?
With three swaps, yes. Skip the besan, use jaggery, and use sendha namak if you salt it. Sweet potato itself is a standard vrat food.
How do I know when the halwa is done?
Drag a spoon through the middle. When the track stays open for a moment and the pan sides come away clean, with a faint shine of ghee at the edges, it's ready.
Why is my halwa greasy or loose?
Greasy usually means the ghee went in all at once at the end instead of being cooked into the mash. Loose almost always means the sweet potatoes were peeled and boiled in pieces and took on water. Keep stirring on medium-low and it will tighten.
Can I make it ahead and reheat it?
Yes, it reheats better than most desserts. Make it up to three days ahead and warm it in a pan with a teaspoon of ghee before serving.
What are Indian sweet potatoes called?
Shakarkandi in Hindi, sakkaravalli kizhangu in Tamil, and ratala in Marathi. Indian sweet potatoes tend to have paler, drier flesh than the deep orange American varieties, but American sweet potatoes work well here and give a more vivid color.

Recipe
Sweet Potato Halwa (Indian Sweet Potato Pudding)
Ingredients
For the Halwa
- 2 pounds sweet potatoes about 4 medium, cooked whole in their skins
- 6 tablespoons ghee divided, plus more for serving
- ¾ cup sugar or ¾ cup grated jaggery
- ¼ cup besan (gram flour) optional, omit for a fasting day
- ½ teaspoon green cardamom freshly ground, from about 10 pods
- 1 pinch saffron threads bloomed in 2 tablespoons warm water or milk
- ¼ teaspoon salt sendha namak for a fasting day
- ¼ cup water as needed
For the Nuts and Garnish
- ¼ cup raw cashews
- 2 tablespoons slivered almonds
- 1 tablespoon pistachios chopped, for the top
- 2 tablespoons golden raisins optional
Instructions
Cook the Sweet Potatoes
- Boil or pressure cook the sweet potatoes whole in their skins until a knife slides in with no resistance, about 25 minutes boiled or 12 minutes pressure cooked. Cool slightly, slip off the skins, and mash with a fork or masher until mostly smooth with a little texture left. Do not use a blender.
- Steep the saffron in 2 tablespoons of warm water or milk and set aside.
Fry the Nuts
- Warm 2 tablespoons of the ghee in a heavy pan over medium heat. Fry the cashews and almonds until pale gold, about 2 minutes, and lift them out.
- Add the raisins to the same ghee and remove them as soon as they puff.
Roast, Sweeten, and Finish
- Add the remaining 4 tablespoons of ghee to the pan. If using besan, stir it in and toast 2 minutes until it smells nutty.
- Add the mashed sweet potato and salt. Stir steadily over medium-low heat for 15 to 20 minutes, until the mash deepens in color and turns glossy. Add a splash of water only if it looks stiff.
- Stir in the sugar or jaggery, off the boil if using jaggery, and cook 8 to 10 minutes more. It will loosen, then tighten again.
- Stir in the bloomed saffron with its liquid. Cook until a spoon dragged through the middle leaves a track that holds for a second and the pan sides come away clean.
- Off the heat, stir in the ground cardamom and most of the fried nuts and raisins. Serve warm, topped with the pistachios and remaining nuts.
Notes
- The gloss is ghee, not cream: this halwa needs no dairy at all, which is why it suits fasting days.
- Cook the potatoes in their skins: peeled and cubed potatoes take on water and give a loose halwa.
- Cardamom off the heat: its aroma is volatile and a hot pan drives it off.
- Jaggery goes in low and slow: dropped into a hot pan it seizes into lumps.
- Storage: 1 week refrigerated, 1 month frozen. Reheat in a pan with a teaspoon of ghee.





