An editorial recipe library. Every recipe is researched from many cited sources — see the provenance panel on each page. How we work →
แกงเหลืองปลา

Southern Thai Sour Curry with Fish

/kɛːŋ lɯ̌aŋ plaː/ · also Gaeng Leuang Pla
This curry is yellow because of turmeric, not coconut. The broth should hit sour first, then salt, then chile heat, with fish held in clean pieces and vegetables cooked until they absorb the curry without collapsing. The dish lives or dies on restraint after the fish goes in: stir too much and the broth turns cloudy and fishy.
Southern Thai Sour Curry with Fish — finished dish
Servings
Total time
45 min
Active time
35 min
Serves
4
Difficulty
standard
Heat

The dish in context

แกงเหลือง (gaeng leuang), also called แกงส้มใต้ (southern gaeng som), is the southern Thai branch of sour curry: water-based, turmeric-yellow, sharp with tamarind and lime, and usually built around seafood or fish. It is not the mild coconut-based yellow curry often labeled “Thai yellow curry” outside Thailand; that dish is gaeng garee. Southern versions are typically hotter, leaner, and more acidic than central Thai gaeng som, with fresh turmeric and shrimp paste giving the paste its color and depth. Common vegetables vary by household and province: green papaya, young coconut shoots, taro stem, bamboo shoots, and mixed local vegetables all appear in credible sources.

Method 7 steps · 45 min

Make the curry paste

Pound the soaked dried chilies and salt to a coarse paste. Add fresh chilies, turmeric, garlic, shallots, and galangal; pound until no large pieces remain. Pound in the shrimp paste last until the paste is thick, yellow-orange, and rough rather than smooth.

Why it matters A southern sour curry paste does not need the silkiness of a coconut curry paste. Rough paste disperses into the water and gives a clean, direct broth. Shrimp paste goes in last so it binds the aromatics instead of smearing against the mortar.

Start the broth

Bring the water to a boil in a medium pot. Whisk in the curry paste until it dissolves, then simmer 5 minutes until the raw garlic smell softens and the broth stains deep yellow.

Why it matters This curry is water-based, so the paste needs a short boil to open up. There is no coconut fat to carry raw aromatics or hide grit.

Cook the vegetable

Southern Thai Sour Curry with Fish step 3: Cook the vegetable

Add the green papaya and simmer until the edges turn translucent and a knife meets slight resistance, 8-12 minutes. Keep the boil active but not violent.

Why it matters The vegetable should absorb sour curry without falling apart. If it cooks to mush before the fish enters, the final broth turns starchy and flat.

Season the sour-salty base

Southern Thai Sour Curry with Fish step 4: Season the sour-salty base

Add tamarind water and fish sauce. Add palm sugar only if the tamarind tastes thin or metallic; the broth should not read sweet. Simmer 1 minute.

Why it matters There is no fixed ratio because tamarind paste, fish sauce, and shrimp paste vary sharply by brand and age. The correct profile is sour first, salty second, hot underneath.

Poach the fish without stirring

Southern Thai Sour Curry with Fish step 5: Poach the fish without stirring

Slide in the fish pieces in one layer and press them gently below the surface. Do not stir until the exterior turns opaque and the pieces feel set, 4-6 minutes depending on thickness.

Why it matters The window is narrow. Raw fish breaks if moved early, and overcooked fish tightens into dry flakes that cloud the broth. Pressing is not stirring.

Finish off heat with lime

Southern Thai Sour Curry with Fish step 6: Finish off heat with lime

Turn off the heat. Wait 30 seconds, then stir in the lime juice by nudging the liquid around the fish rather than dragging a spoon through it. Taste the broth: it should be sharp enough to make rice necessary.

Why it matters Lime juice goes off heat, every time. Boiling it dulls the aroma and turns the acidity blunt. The final curry should smell fresh at the surface, not cooked and sour in the background.

Serve

Ladle fish, vegetable, and broth into bowls without breaking the fish. Serve with plain jasmine rice and raw southern-style vegetables if available.

Why it matters The rice is part of the seasoning system. This curry is intentionally too sharp to drink like soup; rice absorbs the acid, salt, and chile oil from the broth.

Common mistakes

  • {'mistake': 'Using coconut milk', 'fix': 'Leave it out. Coconut milk belongs to other curries, not gaeng leuang or southern gaeng som.'}
  • {'mistake': 'Confusing this with gaeng garee', 'fix': 'Gaeng garee is mild, spiced, and coconut-based. Gaeng leuang is sour, hot, turmeric-based, and water-based.'}
  • {'mistake': 'Stirring after the fish goes in', 'fix': 'Press fish under the broth and leave it until set. Stirring releases albumin, flakes, and fishy aroma into the liquid.'}
  • {'mistake': 'Boiling the lime juice', 'fix': 'Add lime off heat. Cooked lime loses its floral edge and makes the finish muddy.'}
  • {'mistake': 'Making the curry sweet', 'fix': 'Use palm sugar as correction only. Southern sour curry should not taste sweet.'}
  • {'mistake': 'Using thin fish fillets', 'fix': 'Use steaks or thick chunks. Thin fillets overcook before the broth can return to temperature.'}

What does not belong

  • {'item': 'coconut milk', 'reason': 'Coconut milk does not belong in gaeng leuang. It changes the dish into a different curry structure.'}
  • {'item': 'curry powder', 'reason': 'The yellow color comes from fresh turmeric, not curry powder. Curry powder pushes the dish toward gaeng garee.'}
  • {'item': 'Thai sweet chili sauce', 'reason': 'Sweet chili sauce makes the broth sugary and glossy. This curry should be sharp and lean.'}
  • {'item': 'bottled lemon juice', 'reason': 'Lemon juice has the wrong acid profile, and bottled juice tastes oxidized. Use fresh lime.'}
  • {'item': 'cream or evaporated milk', 'reason': 'Dairy softens the heat and sourness that define the dish. It does not belong.'}
  • {'item': 'basil or cilantro garnish', 'reason': 'Fresh herb garnish is not the point here. The paste and sour broth should carry the aroma.'}

Adaptations

Vegan Partial

Halal Partial

Gluten-free Partial

Dairy-free Partial

Shellfish-free Partial

Provenance

Sources surveyed64
Cultural authority4
Established press6
Community + blogs14
Individual voices40
Weighted score85.0
Review statusfounder-reviewed
Generated2026-05-16 00:33:39 UTC
Founder reviewed2026-05-16 04:18:12 UTC
Cultural accuracy7/10
Substitution safety7/10