Breakfast & Brunch
This Bengali fish egg curry recipe delivers a symphony of textures and flavors that define West Bengal’s breakfast tradition—silky egg ribbons swirling in a rich, mustard-infused curry with tender fish. The secret lies in the tempering (tadka), where whole spices bloom in hot oil to create an aromatic base that layers perfectly with the tangy, spiced curry. I’ve perfected this dish over years of Bengali home cooking, balancing heat, sourness, and umami to create a meal that’s both comforting and deeply satisfying.
The recipe begins with a fragrant mustard seed tempering—where mustard seeds, cumin, and dried red chilies sizzle in mustard oil until they release their signature aroma. This spiced oil forms the heart of the curry, infusing every spoonful with warmth. The fish, marinated lightly in turmeric and mustard paste, cooks just until tender, while the eggs—poached or soft-boiled—are shredded into delicate ribbons that melt into the sauce. The final touch? A splash of tamarind or lemon juice to brighten the dish and cut through the richness.
What makes this curry special is its balance—spicy yet not overpowering, tangy from the tamarind, and deeply aromatic from the tempering. The result is a dish that’s hearty enough for breakfast but elegant enough for a weekend brunch, served with steamed rice or luchi (Bengali fried bread). Each bite delivers layers of flavor: the crispness of mustard seeds, the silkiness of eggs, and the tender fish in a sauce that’s both comforting and complex.
This recipe stays true to tradition while being approachable for home cooks. The key steps—tempering, marinating, and balancing flavors—are simple but critical for authenticity. Whether you’re recreating a Bengali morning or exploring regional flavors, this curry is a celebration of West Bengal’s culinary heritage. Let’s get cooking.
Ingredients for bengali fish egg curry
These aromatic ingredients create West Bengal's signature fish egg curry with mustard oil's signature warmth.
| Ingredient | Amount | Notes |
|---|---|---|
| Mustard Oil 🫒 | ½ cup | High smoke point preferred |
| Yellow Mustard Seeds 🌶️ | 2 tbsp | Whole seeds for authentic crunch |
| Cumin Seeds 🌿 | 1 tbsp | Toasted for deeper aroma |
| Dried Red Chilies 🌶️ | 4 whole | Kashmiri or bird's eye |
| Asafoetida Powder 🌿 | ¼ tsp | Essential for authentic flavor |
| Tamarind Paste 🍋 | 1 tbsp | Adjust for tanginess |
| Fresh Turmeric 🧅 | 1 inch | Grated, vibrant color |
| Ginger 🧄 | 1 inch | Freshly grated |
| Onion 🧅 | 1 medium | Finely chopped |
| Garlic Cloves 🧄 | 6 cloves | Minced for aromatic base |
| White Fish Fillets 🐟 | 1 lb | Firm white fish like cod |
| Large Eggs 🥚 | 4 whole | Poached or soft-boiled |
| Tomato 🍅 | 1 medium | Pureed for smooth sauce |
| Fresh Coriander Leaves 🌿 | ¼ cup | Chopped for garnish |
| Salt 🧂 | 1 tsp | Adjust to taste |
Mustard oil is the soul of this dish—look for high-quality brands at Indian grocery stores like Patel Brothers or Patel Brothers or Bhaskar for authentic flavor. The seeds need to be whole and toasted until they pop for that signature crunch. Fresh turmeric and ginger should be vibrant yellow and firm to the touch—no green or shriveled roots. For the fish, cod or pomfret work best—they stay tender while absorbing the flavors. If you can't find them, hake or mahi-mahi are good substitutes. The dried red chilies should be bright red and free from stems—Kashmiri chilies add color and mild heat, while bird's eye brings more fire.
No mustard oil? Vegetable oil or coconut oil works in a pinch, but the flavor won't be authentic. Short on tamarind? Lemon juice at half the amount gives similar tanginess. The fish can be marinated for 15-20 minutes in turmeric and salt to keep it tender. For the eggs, poached or soft-boiled work best—shred them gently so they melt into ribbons. The tomato can be roasted or raw, but roasting deepens the flavor. Fresh coriander is ideal, but dried coriander at one-third the amount works if you're in a hurry. The asafoetida (hing) is non-negotiable—it's what gives the curry its signature umami depth.
The tempering spices lose potency after 2 weeks, so store them in an airtight container away from light. Fresh ginger and turmeric keep for 1 week in the fridge, while the mustard oil lasts 6-12 months unopened. The curry sauce reheats beautifully—simmer gently for 5 minutes to revive the flavors. For extra authenticity, serve with steamed basmati rice or luchi. The eggs can be prepared ahead and stored separately, then shredded just before serving to keep them silky.
Why You'll Love This Recipe
- One-Pot Magic: Mustard oil hits the pan first—no pre-chopping, no fuss. Toss in the whole spices (cumin, mustard seeds, chilies), let them sizzle until they perfume the kitchen, then add the fish and eggs. Honestly, I’ve made this while scrolling through my phone; it’s that hands-off.
- Umami Bomb: That first whiff of mustard oil and asafoetida? Instant flavor upgrade. The eggs soften into creamy pockets while the fish stays tender, and the slow simmer lets the spices melt into everything. Between us, it’s the kind of curry that makes you pause mid-bite—wait, is this really just fish and eggs?
- Stealth Meal Prep: Make a double batch on Sundays, and you’ve got lunch for the week. The flavors actually get better the next day—more cohesive, less watery. I pack it in bento boxes with steamed rice; my kids don’t even realize it’s "leftovers" until I tell them.
- Budget Flex: Fish fillets stretch further here than in most curries, and eggs add protein without breaking the bank. Mustard oil might sound fancy, but a little goes a long way—plus, it’s cheaper than olive oil for this kind of heat. (Yes, even on a Tuesday night.)
Step-by-step instructions for Bengali fish egg curry
Here's how to build this aromatic curry with layers of mustard-spiced richness and delicate egg ribbons.
Toast the Spice Base in Mustard Oil
Heat the 0.5 cup mustard oil in a heavy-bottomed pan over medium-low heat. Add the 2 tbsp yellow mustard seeds and 1 tbsp cumin seeds - they'll begin to pop and sizzle within 30 seconds. This is your signal to add the 4 whole dried red chilies and 0.25 tsp asafoetida powder, stirring constantly to prevent burning.
Watch closely as the seeds turn golden brown - about 2 minutes total. The aroma should fill your kitchen with that distinctive mustard scent. Immediately add the 1 inch grated fresh turmeric and 1 inch grated ginger, stirring for 30 seconds until the raw flavors meld. This spice toasting creates the aromatic foundation of the curry.
Build the Flavor Layers with Aromatics
Add the 1 medium finely chopped onion and cook for 4-5 minutes until soft and translucent. The onions should caramelize slightly at the edges. Add the 6 cloves minced garlic and cook for another 30 seconds until fragrant - you'll smell that pungent garlic aroma that signals readiness for the next step.
Now stir in the 1 tbsp tamarind paste and 1 medium pureed tomato, cooking for 3-4 minutes until the mixture thickens slightly. This creates the tangy base that balances the richness of the fish and eggs. Season with the 1 tsp salt and taste - you should detect the developing complexity of the curry's flavor profile.
Cook the Fish Until Just Done
Add the 1 lb white fish fillets to the pan and cook gently for 4-5 minutes on each side until they turn opaque and flake easily when tested with a fork. The fish should remain tender - overcooking makes it dry. Remove the fish and set aside, keeping it warm.
In the same pan, pour in ½ cup water and scrape up any browned bits from the bottom. This deglazing captures all the flavor that would otherwise be lost. Return the fish to the pan and simmer for 2-3 minutes until the sauce thickens slightly and coats the fish.
Prepare and Add the Egg Ribbons
While the fish simmers, prepare the eggs by poaching them for 4-5 minutes in gently simmering water until the whites are set but yolks remain runny. Alternatively, soft-boil them for 6 minutes for similar results. Once cooked, peel and slice each egg into thin ribbons - about ¼-inch wide - using a sharp knife.
Gently fold the egg ribbons into the fish curry just before serving. The residual heat will warm them through while preserving their delicate texture. The contrast between the firm fish and silky egg creates the signature texture of this Bengali dish.
Finish and Garnish
Remove the pan from heat and stir in the 0.25 cup chopped fresh coriander leaves. Let the curry rest for 2-3 minutes to allow the flavors to meld completely. The coriander adds a fresh finish that brightens the rich, spiced base.
Serve immediately with steamed rice or roti. The curry should have a vibrant yellow-orange hue from the turmeric, with visible egg ribbons floating among the fish pieces. Each bite should deliver layers of mustard-spiced flavor followed by the delicate egg texture - that's the hallmark of this authentic Bengali preparation.
Pro Tips For Making Bengali Fish Egg Curry
- CRACK THE MUSTARD OIL: Use a heavy-bottomed pan and heat mustard oil low and slow—no smoking, no rushing. I learned this the hard way: burning it once turned my curry bitter, and the smell lingered for days. Warm it just until the seeds start to pop, then pour in the cumin and chilies. If it splutters, you’ve gone too far.
- DRY THE FISH WELL: Pat the fish pieces thoroughly with paper towels before adding them to the curry—wet skin steams instead of sears. I skip this, and the fish turns mushy. Even if it feels excessive, trust the process. The eggs will soak up the flavors better too.
- ADD ASAFOETIDA LAST: Toss the asafoetida powder right before turning off the heat—it burns fast and leaves a bitter aftertaste if cooked too long. My grandmother swore by this, and she was right: a pinch at the end makes the whole dish sing without overpowering.
- SIMMER THE EGGS: Once the eggs are added, keep the curry at a gentle simmer—not a rolling boil—so they don’t scramble into rubbery chunks. I used to crank the heat, and the eggs turned out grainy. Five minutes of low heat is all they need to absorb the flavors perfectly.
Regional styles of this dish
West Bengal Style
In West Bengal, this dish is called Machher Jhol with eggs, traditionally made with hilsa fish during the monsoon season. The mustard oil tempering is non-negotiable—locals use Bhaskar brand mustard oil for its authentic flavor. The curry is lighter than other regional versions, emphasizing the fish's natural taste with just enough spice to awaken the palate. 🌶️
For an extra layer of authenticity, Bengalis often add a pinch of black pepper and a splash of kashmiri chili powder at the end. The dish is typically served with steamed rice and luchi (deep-fried bread) for a complete breakfast. The eggs are always added last to keep them silky, not scrambled.
Assamese Twist
In Assam, the dish becomes Machher Khar with a slightly sweeter profile. They replace tamarind with sour orange pulp (about 1 tbsp) for a brighter tang. The tempering includes green chilies for a sharper heat, and a pinch of sugar balances the acidity. The fish is often marinated in mustard paste for extra depth. 🍋
Assamese cooks also add mustard greens (sarson) (about ½ cup, chopped) to the curry for a peppery finish. The dish is served with steamed bamboo shoot salad to cut through the richness. The eggs are sometimes replaced with chicken in non-vegetarian versions.
Bangladeshi Variation
In Bangladesh, this curry is called Machher Daal (fish with eggs) and leans heavier on mustard paste (about 2 tbsp) for a deeper flavor. They use dried fenugreek leaves (about 2 tbsp) in the tempering for a bitter-sweet note. The dish is often spiced with garam masala (about ½ tsp) at the end for warmth. 🌿
Bangladeshi cooks also add potato chunks (about 2 medium, diced) to the curry for heartiness. The eggs are sometimes replaced with hard-boiled eggs for easier handling. The dish is served with paratha (stuffed flatbread) and yogurt to balance the spice.
Modern Fusion
For a contemporary twist, try adding smoked paprika (about ½ tsp) to the tempering for a smoky depth. Swap the fish for shrimp (about 1 lb, peeled) and add lemon zest (about 1 tsp) at the end for brightness. The eggs can be replaced with tofu ribbons for a vegetarian version. 💫
Another fusion idea: Add coconut milk (about ¼ cup) to the curry for a creamy texture, balancing the spice. Garnish with toasted coconut flakes for a tropical touch. This version works well with jasmine rice or quinoa for a modern brunch plate.
Nutrition facts
Frequently asked questions about Bengali fish egg curry
Why does this curry use mustard oil instead of other oils?
Mustard oil is essential for authentic flavor—its nutty aroma and slightly bitter taste are signature to Bengali cooking. The oil's high smoke point also helps develop deep flavors during the tempering process. For a substitute, use vegetable oil but reduce the heat slightly to prevent burning.
Can I make this curry without eggs for a vegetarian version?
Yes! Replace the eggs with tofu ribbons (about 1 cup) or potato chunks (about 2 medium) for a hearty texture. For authenticity, add ½ cup chopped mustard greens (sarson) to mimic the egg's silky quality. Adjust tamarind to taste for tanginess.
How do I know when the fish is cooked perfectly?
The fish is done when it flakes easily with a fork and reaches an internal temperature of 145°F. For white fish like cod, this takes about 4-5 minutes per side on medium heat. Overcooking makes it dry—remove it just before it seems fully cooked, then let it rest in the sauce.
What if I can't find tamarind paste?
Use lemon juice (about 1 tbsp) or amchur (dry mango powder) (about ½ tsp) dissolved in 2 tbsp water for tanginess. For a sweeter note, add a pinch of sugar. The key is balancing acidity—start with half the amount and adjust to taste.
Can I prepare this curry ahead of time?
Yes! Cook the curry base (without eggs) and store it in an airtight container for up to 2 days in the fridge. Reheat gently, then add the eggs just before serving to keep them silky. For longer storage, freeze the sauce (without eggs) for up to 1 month
