Indian gulab jamun soaking in cardamom and rose syrup
Prep35 min
Cook30 min
Serves4 servings
CuisineIndian

Gulab Jamun: Cardamom-Scented Indian Milk Balls in Syrup

A home recipe for Indian gulab jamun made with whole milk powder: how to scent the syrup with cardamom and rose water, fry gently at 130°C, shape balls that don't crack, soak them properly, plus regional khoya versions, storage and allergy notes.

· Total: 3 hr 35 minLevel: Intermediate

Cooking flow

Cooking steps

STEP 11 / 6

Make the syrup first

30 min (including the time to cool to around 50°C)

Warming sugar syrup with cardamom in a small saucepan
Dissolve the sugar first, and add the fragrant ingredients after the heat is off

Put 300 g sugar, 500 ml water and the 4 lightly crushed cardamom pods in a small saucepan and dissolve the sugar completely over low heat. Boiling it before the sugar dissolves tends to leave crystals, so wait until it's clear, then keep it at a gentle boil for just 10 minutes. Turn off the heat, let it cool to around 50°C (122°F), then add the rose water and saffron. You've got it right if the aroma holds and the syrup is light and fluid.

STEP 22 / 6

Combine the dry ingredients and fat

8 min

Rubbing ghee into whole milk powder and flour
Rub the fat into the flour until it looks like coarse crumbs, before any kneading

Sift 100 g whole milk powder, 40 g flour and 2 g baking powder into a bowl. Finely crush 1/3 tsp of cardamom seeds and mix them into the dry ingredients. Rub in 50 g ghee or unsalted butter with your fingertips until it looks like dry breadcrumbs. Not kneading at this point is what keeps the balls from puffing up too much.

STEP 33 / 6

Add milk little by little and shape

12 min

Rolling small, crack-free gulab jamun balls by hand
Shape 3 cm balls and smooth out any surface cracks with your fingertips before frying

Add 15 g yogurt, 2 ml lemon juice and 60 ml milk and bring it together with a rubber spatula; if it's too dry, add more milk 5 ml at a time. Stop when the surface is smooth and doesn't stick to your fingers, not at a dough so firm it springs back when you press it with your palm. Divide into 16 pieces and roll each into a ball of 20 g, about 3 cm (1 1/4 in) across. If you see cracks, creases or hollows, roll the ball between your palms to seal the surface.

STEP 44 / 6

Fry slowly in oil at about 130°C

10 min

Slowly frying gulab jamun in low-temperature oil
Keeping the balls moving stops one side from over-browning and helps them cook through to the center

Pour oil to a depth of 4 cm, about 1 L, into a pot about 20 cm across and heat it over medium-low to 130°C (266°F). A good guide is that a small piece of dough dropped in turns pale golden in about 40 seconds. Add 4–5 balls at a time and fry for 5–7 minutes, gently swirling the pot. Large bubbles mean moisture is still escaping; when the bubbles become fine and the balls are an even deep brown all over, it's time to lift them out.

STEP 55 / 6

Move them into warm syrup

5 min

Adding fried gulab jamun to warm cardamom syrup
From the hot oil straight into warm, non-boiling syrup

Scoop out the roughly 3 cm balls with a spider strainer, let the oil drain for 2–3 seconds, then put them into warm syrup that is not boiling. Cold syrup tends to set only the surface, while syrup that's too hot makes the dough fall apart. Don't cram all 16 in at once; keep them in a single layer without stacking, touching each other but with enough room for the syrup to circulate. The transfer is done when the sunken balls slowly swell and their surface turns glossy.

STEP 66 / 6

Soak for at least 2 hours and serve

2 hr 30 min

Warming syrup-soaked gulab jamun in a wide pan with pistachios
When reheating, don't let it boil; spoon the syrup over the surface

Cover and leave at room temperature for 2–3 hours, or if serving the next day, refrigerate once they've cooled slightly. Turn them over once along the way, and wait for the syrup's color to reach close to the center of the 3 cm balls. Just before serving, warm them in a wide pan over low heat for 1–2 minutes without letting it boil. Arrange the balls in bowls with space between them, spoon over the syrup and scatter with 10 g chopped pistachios.

0 / 0
Ingredients

Ingredients

1 / 2

Syrup

Ingredient Amount Substitutes & notes
Granulated sugar 300 g About 1 1/2 cups. Light brown or raw cane sugar gives a darker color and deeper flavor
Water 500 ml About 2 cups. Don't let it boil until the sugar dissolves
Green cardamom 4 pods Split the pods and lightly crush the seeds
Rose water 1 tsp With strongly scented brands, start with 1/2 tsp
Saffron 0.1 g Optional. If using, steep in 10 ml warm water
Pistachios 10 g For garnish. Almonds also work
2 / 2

Dough and frying oil

Ingredient Amount Substitutes & notes
Whole milk powder 100 g Nonfat milk powder changes the richness and how the dough holds together
All-purpose flour (low-protein, cake-style) 40 g Rice flour changes the texture, so make it with wheat flour first
Baking powder 2 g 1/2 tsp. Too much makes the balls crack
Ghee or unsalted butter 50 g Ghee has a lighter milk aroma; butter browns more easily
Plain yogurt 15 g 1 tbsp. Softens the dough
Lemon juice 2 ml 1/2 tsp. Adds to the yogurt's acidity
Cardamom seeds (ground) 1/3 tsp For the dough. Keep separate from the 4 pods that go into the syrup
Milk 60–75 ml Don't add it all at once; add according to the dough's firmness
Frying oil or ghee 1 L Enough for 4 cm (about 1 1/2 in) depth in a pot about 20 cm (8 in) across. Not all of it is absorbed
0 / 0

Sugar steam and cardamom: the story of gulab jamun

Gulab jamun soaking in cardamom syrup on an Indian sweets plate
Gulab jamun is finished by soaking the fried dough in a fragrant syrup

Break one of the little balls open and clear syrup slowly runs out from under the deep brown surface. The outside tastes of fried milk, the center is soft and airy, and the green, fresh scent of cardamom lingers at the end. It eats in a completely different order from a doughnut made with sugar alone.

Gulab jamun is a mithai, or sweet, eaten across South Asia with India at its center. It has spread from Indian homes to sweet shops and Indian restaurants abroad, and BBC Good Food presents it as a festival dessert. In BBC Good Food's recipe, too, the basic flow is to knead cardamom into the dough and soak the balls in a rose and saffron syrup.

The name reflects both flavor and shape. Gulab is explained as a Persian-derived word built from "flower" and "water," pointing to the scent of rose water, while jamun refers to an Indian fruit of similar size and color. Once you know this explanation, featured in an Indian Express food-culture article, you won't want to skip the fragrance in the syrup.

Still, its birthplace can't be pinned to a single theory. Some point to links with Middle Eastern fried sweets and the Persian-speaking world's use of fragrance, while others see it as growing out of Indian sweet-making with khoya (milk cooked down to its solids). So when you use milk powder at home, think of it not as "straying from the real thing" but as a convenient stand-in for the traditional milk base.

The key to making it at home isn't adding more ingredients. Roll crack-free 20 g balls, color them slowly in oil at about 130°C (266°F), and move them into syrup that is not boiling. Get those three things right and even a milk-powder dough cooks through to the center and then soaks up the sweet syrup.

About the name

In Japanese the dish is written in more than one way; in English and Hindi it is usually spelled gulab jamun (गुलाब जामुन). This article uses Gulab jamun as the standard spelling.

Ingredients: 16 balls made with milk powder, plus substitutes

Overhead view of gulab jamun ingredients: whole milk powder, all-purpose flour, cardamom, rose water, saffron and sugar
Cardamom and rose water set the aroma; even small amounts change the result

This makes 16 balls, or 4 servings. Four each is a comfortable after-dinner sweet, though some Indian recipes present the same amount as serving 6 to 8. The fried balls get heavier once they soak up syrup, so don't make them big from the start; stick to 20 g each.

The traditional dough is built on khoya. Course material from Uttarakhand Open University describes khoya as a North Indian dairy product made by cooking milk until its water evaporates, used in sweets such as gulab jamun. Food Production Foundation-I also gives a rule of thumb that about 1 L of milk reduces to roughly 200 g of khoya. Cooking it down that far at home takes a long time, so this recipe uses whole milk powder instead.

You can use ground cardamom, but splitting the pods and using the seeds keeps the aroma sharper. You only need 4 pods, and whole pods are easy to use up in phirni (in Japanese) or chai. If you're just trying the recipe once, the ground cardamom you already have is perfectly fine.

Rose water is there for fragrance. If you can't find it, cardamom and saffron alone will still give a sweet, milky aroma. Never use cosmetic rose water that isn't labeled as food-grade. The recipe contains dairy, wheat and nuts, so check allergy labels. You can leave out the nuts, but milk powder, butter and yogurt are part of the dough itself; to avoid dairy, you'd need to rebuild it as a different recipe.

Handling hot oil and sugar syrup

Dropping a damp ball into hot oil makes it spatter. Let the surface of the dough dry, and lower the balls in from just above the oil rather than dropping them from a height. Overcooking the syrup makes it crystallize and keeps it from soaking into the balls, so don't bring it to a hard boil before the sugar has dissolved.

Method: grow small balls slowly at low heat

BBC Good Food fries balls about 3 cm across and 20 g each in ghee at 130°C for 5–7 minutes, then soaks them in warm syrup for 2–3 hours, preferably overnight. The steps below adapt that approach to a home pot. How fast the oil temperature recovers depends on the amount of oil and the pot material, so watch color and bubbles as well as numbers.

Tips: let the cracks and color tell you how to fix things

Gulab jamun cut in half, showing the browned outside and soft center
Evenly cooked through to the center, with fine air pockets, is the ideal texture

Seal the surface of the balls

If you see cracks when rolling, don't fry them as they are. Oil gets into the cracks and the dough comes apart. Add just 5 ml milk, gently bring the dough back together and divide it into 16 again. If, on the other hand, the dough is sticky, add just 5 g flour and stop as soon as it no longer feels floury. The more flour you add, the harder it gets, so make corrections in small amounts.

When cracks won't go away

Rather than kneading on and on, press the dough with your palm and fold it over about 3 times. Once the surface is smooth and continuous, put it back in the bowl so it doesn't dry out and let it rest for 5 minutes.

Keep the oil centered around 130°C

The Indian Express article explains that milk solids and sugar turn dark through caramelization. If only the outside goes black, the oil is too hot. If the oil stays below 130°C for a long time and the bubbles stay large, you've added too many balls. Take half of them out, let the oil come back up to temperature and carry on.

With fried sweets, not knowing the oil temperature is the biggest source of uncertainty. A thermometer that clips to the pot and reads below the oil surface is the useful kind here, not a probe meant for the center of food. Without one, you can still manage: drop a piece of bread or dough into the oil and check that it turns pale golden in 40 seconds at 130°C. A thermometer doesn't guarantee success; what matters is keeping the temperature steady every time.

Don't make the syrup too thick

Not boiling the syrup before the sugar dissolves is what keeps it light. It's fine when, once cool, it runs off a spoon in a thin stream and no sugar crystals are left on the bottom of the pan. If you overcook it and it gets too thick, add boiling water 1 tbsp at a time and melt it back over low heat. Adding a lot of water at once can make it spatter from the temperature difference, so turn off the heat and add it in small amounts.

Don't rush the soaking

Straight after frying, the surface of the balls is firm and there's still air in the center. Eaten right out of the hot oil, you get the toasty outside, but not the soft, syrup-soaked-to-the-center texture that defines gulab jamun. On days when you can't give them 2–3 hours to soak, making them the day before and chilling them brings the flavors together better than making fewer.

Regional gulab jamun: khoya, dark balls and elongated shapes

An Indian sweets platter with golden gulab jamun, dark kalo jam and oval pantua
Within the same family of syrup-soaked sweets, the dough, shape and color vary by region

A North Indian–style dough with khoya

Whole milk powder is milk with the water already removed. By adding milk to the dough little by little, you can get a milky richness close to khoya at home. If you use khoya itself, though, the moisture content varies from product to product. If you find it at an Indian grocery, don't just swap it in for the full weight of milk powder; start by combining it with a little flour and find the firmness at which the cracks disappear.

The TNAU Agritech Portal of Tamil Nadu Agricultural University gives an example gulab jamun formula using 75 g khoya, 25 g maida, 0.1 g baking soda and 15 ml water. Its process for khoa-based sweets also shows the khoya dough being fried and then moved into sugar syrup. The milk-powder version adapts that idea to ingredients from an ordinary supermarket.

Bengal's kalo jam and pantua

Kalo jam from Bengal, featured by the Indian Express, is a variant that's darker in color and denser in texture. Adding sugar to the dough before frying deepens the color, and it is sometimes served at room temperature, more often than regular gulab jamun. Pantua is a close cousin with a more oval shape, also fried and then soaked in syrup.

There's no need to make all three at once. Use the round milk-powder version as your baseline; next time, simply shaping the balls a little longer changes the look on the plate. Kalo jam, with sugar in the dough, burns more easily, so it's safer not to bring a method that raises the oil above 130°C for quick frying straight into a home kitchen.

Balancing the aromas

Too much rose water lets the floral note cover up the milk. Stop at 1 tsp at first, and if it's not enough when you eat, add a few drops to the syrup. Cardamom alone gives a warm, fresh green aroma; adding saffron brings a faint earthiness and color. Rather than pushing all three equally hard, choose one to lead and the sweetness won't feel heavy.

Background: why a celebration sweet crossed borders

Gulab jamun on a brass plate with cardamom and rose petals, evoking an Indian sweet shop
Gulab jamun spread to homes, sweet shops and Indian restaurants abroad

Gulab jamun is less a regional specialty confined to one area than a dish that has worked its way into South Asia's whole culture of sweets. The Indian Express notes that it is eaten in India, Pakistan, Bangladesh, Nepal and beyond, and can be found in homes, restaurants and small shops alike. You can serve a single plate after dinner, or heap a big bowl for festivals and gatherings. That range is what carried the dish beyond borders.

What makes its history interesting is that two techniques overlap, not just the finished sweet. One is the Indian technique of cooking milk down to its solids as khoya. The other is the technique of soaking fried dough in a liquid scented with flowers or spices, found from West Asia across a wide region. The Indian Express mentions the resemblance to the Arab luqmat al-qadi and adaptation by Mughal-era cooks, but says there is no solid evidence for the famous story that Shah Jahan's cook created it by accident. Not fixing its origin to a single story actually shows the sweet's journey more accurately.

The Persian-derived fragrance preserved in the name, and the round shape that resembles an Indian fruit: both are traces of different food cultures meeting in one dish. That's why rose water isn't just decoration. You can leave it out and still have something to eat, but you'd be dropping the part that the name "gulab" points to. When adapting, the practical approach is to swap hard-to-find khoya for whole milk powder and keep the aromatic backbone with easy-to-find cardamom and rose water.

Among North Indian sweets, phirni (in Japanese), a chilled rice pudding, is eaten with a spoon, while gulab jamun is broken open to soak up syrup. They're not grouped together because the ingredients overlap; they sit side by side as separate dishes because the techniques that set their serving temperature and mouthfeel are different. Serve them alongside doodhpak (in Japanese) or kheer, and the regional variety of sweets built on milk and spices becomes easier to see.

FAQ: milk powder, oil temperature and storage

Gulab jamun stored in their syrup in a container, with a small saucepan for reheating
To store, let them cool in the syrup and reheat only what you'll eat

Q1. Is it still gulab jamun without khoya?

Yes. This recipe is formulated for whole milk powder. The khoya version tends to have a grainier milk texture and a denser crumb, while the milk-powder version is easier to source ingredients for and easier to make soft. Even when using khoya, don't add a lot of milk at the start; find the firmness at which cracks close up under your palm.

Q2. The outside is dark but the center is hard. What do I do?

It's one of three things: the oil was too hot, the balls were bigger than 20 g, or they weren't fried long enough. Next time, bring the oil down to about 130°C and fry 4–5 at a time for 5–7 minutes. Balls that are already fried recover a little if soaked longer in thin, non-boiling syrup, but a burnt bitterness won't go away. Turning off the heat before they go black is what matters.

Q3. Do I have to fry in ghee?

No. A neutral vegetable oil lets the dough and cardamom aromas come through, while ghee adds a toasty milk note. Whichever you use, you can make it as long as you keep a depth of 4 cm in the pot and a temperature of about 130°C. If you use a shallow pot to save oil, the balls hit the bottom and brown unevenly.

Q4. Can I eat them the same day?

Yes, but soak them for 2–3 hours. Dabur's recipe also suggests making them the day before and soaking them in syrup overnight. The Honey Gulab Jamun method uses a different formula, so don't swap it in directly; borrow only its approach to soaking time. To store, let them cool slightly, seal them in a container with the syrup, refrigerate and eat them by the next day.

Q5. Which allergens should I watch for?

The recipe uses dairy (milk powder, ghee or butter, yogurt), wheat (flour) and nuts (pistachios). You can leave out the nuts, but if you replace the milk or wheat with other flours, the dough absorbs liquid differently, so don't substitute them at the same amounts. Also check the label on food-grade rose water.

Q6. How can I tell the temperature without a thermometer?

Drop a small piece of dough into the oil; if it turns pale golden in about 40 seconds, you're close. You can also put in just one ball and check that the bubbles aren't too large and it browns slowly over about 5 minutes. Pots and stoves vary, though, so if you fry often, a thermometer makes results easier to repeat.

Sources

The following English-language sources were consulted to check the dish's origins, khoya, regional variations and cooking temperatures. All links were reopened on 17 August 2026 (JST) and checked against the statements in the article.