Mother sauces
Gujarati Kadhi
ગુજરાતી કઢી · A thin, pourable, sweet-and-sour yogurt-based gravy from Gujarat, thickened lightly with besan (gram flour) and finished with a fragrant tempered spice oil (vaghar/tadka). Unlike Punjabi or Rajasthani kadhi, it contains no fritters (pakoras), stays white to pale ivory, and balances pronounced sweetness with tang.

The formula
1 cup sour yogurt : 4 tbsp besan : ~2 cups water : 1 tbsp sugar/jaggery + vaghar
Proportion for a pourable, rice-spoonable consistency. Besan acts as both binder and protective colloid against curdling.
Identity
- sweet-and-sour tang with jaggery balancing yogurt acidity
- thin, pourable, soup-like consistency — not a thick gravy
- white to pale ivory color from yogurt-besan slurry
- no fritters, dumplings, or vegetable chunks in the base
- built on a whisked yogurt-besan slurry cooked low and slow
- finished by an aromatic whole-spice vaghar (tadka) in oil or ghee
Ingredients
| Base | sour yogurt (dahi/curd) | Sour curd is critical for tang and for correct pH balance with besan. |
| Thickener | besan (gram flour) | Whisked into the yogurt; prevents splitting and gives body without starchiness. |
| Liquid | water | Added to the yogurt-besan slurry to achieve pourable consistency. |
| Sweetener | jaggery or sugar | Gujarati identity: pronounced sweetness counterbalancing the sour yogurt. |
| Aromatics | ginger-green chili paste | Provides the warm, sharp top-note of the finished kadhi. |
| Seasoning | curry leaves, mustard seeds, cumin seeds, methi (fenugreek) seeds, asafoetida (hing), whole dry red chili, cinnamon, clove | Tadka/vaghar bloomed in oil or ghee and stirred in — defines the aroma. |
| Flavor | salt | Pulls sweet-sour into balance. |
| Fat | oil or ghee | Cooking medium for the vaghar; ghee gives a richer wedding-kadhi profile. |
Method
- 1Whisk sour yogurt with besan and water into a smooth, lump-free slurry.Besan must hydrate evenly; any lumps will not cook out and the slurry must be fully combined before heat to prevent splitting.
- 2Add ginger-green chili paste, salt, and jaggery/sugar to the slurry and whisk again.Dissolving sweetener and aromatics into the cold base ensures even distribution and prevents scorching on the pot bottom.
- 3Bring the slurry to a gentle simmer over medium-low heat, stirring continuously.Slow, steady heat cooks the besan fully and protects yogurt proteins from shocking and separating.
- 4Simmer 12–15 minutes, stirring often, until the kadhi thickens to a pourable, single-cream consistency and raw besan smell dissipates.Residual raw-besan taste indicates undercooking; proper simmer deepens the sweet-sour profile.
- 5Prepare the vaghar: heat oil or ghee, add mustard seeds, then cumin, methi, hing, curry leaves, dry red chili, cinnamon, and clove in sequence.Sequential blooming lets each spice release its oils at the right temperature without burning.
- 6Pour the hot vaghar over the kadhi (or stir it in), cover, and rest 2–3 minutes before serving.Resting lets the tempered aromatics infuse the hot yogurt base without the fat splitting the surface.
Techniques that matter
Yogurt-besan slurry
Prevents curdling by coating dairy proteins with flour before heat exposure — the key Gujarati control technique.
Slow simmer, not boil
Boiling breaks the yogurt emulsion and causes graininess; a gentle bubble preserves silkiness.
Whole-spice vaghar
Blooming whole spices in fat is what distinguishes Gujarati kadhi from a plain yogurt soup.
Variations & derivatives
Gujarati Wedding KadhiGujarat (ceremonial)
Made richer with ghee and sometimes a touch more sugar/jaggery and ghee-roasted spice powder.
Bhinda ni KadhiGujarat (regional)
Okra is simmered inside the kadhi base for a one-pot vegetable version.
Vegan Gujarati KadhiPan-Gujarat (modern)
Yogurt substituted with thick sour coconut milk or cashew-coconut yogurt; besan and vaghar remain identical.
Boiled Rice Kadhi / Doodh-Pak KadhiSurat / South Gujarat
Cooked rice or boiled moong is added to the base for a one-meal kadhi-bhaat or khichdi-kadhi.
Used in these dishes
Substitutions
- sour yogurt (dahi) → thick sour plant-based yogurt — For vegan versions; keep pH similarly acidic so besan slurry behaves the same.
- jaggery → sugar — Both are authentic; jaggery adds a faint molasses note, sugar gives cleaner sweetness.
- besan (gram flour) → magaz (melon seed) paste or rice flour — Magaz gives a smoother, whiter wedding-kadhi body; rice flour is a last-resort thickener but lacks flavor.
- curry leaves → omit — Loses the signature aroma but the kadhi still works; not recommended if aiming for canonical flavor.changes result
- ghee → neutral oil — Oil keeps the dish vegan and lighter; ghee gives the traditional rich aroma.
Troubleshooting
Kadhi curdles / splits into whey and solids
Heat too high, slurry not fully whisked, or yogurt too cold when added to hot pot → Lower to a bare simmer, whisk continuously, and always bring the slurry to temperature gradually; whisk besan into yogurt before any heat is applied.
Raw besan or floury taste lingers
Insufficient simmer time after thickening → Cook gently for another 5–8 minutes; raw besan must fully hydrate and gelatinize.
Kadhi is too thin or too thick
Water ratio off relative to yogurt-besan; or simmer evaporated too much → Thin with hot water ladle by ladle; thicken by simmering uncovered a few minutes longer — never add dry besan at the end.
Vaghar turns bitter or smells burnt
Methi or cumin seeds fried past smoke point → Drop methi last and only for 2–3 seconds; keep oil at medium and add whole spices in the order of size/density.